Configurar o VPC Service Controls e clusters particulares

Esta página descreve como os VPC Service Controls e os clusters particulares funcionam e como configurá-los no Cloud Workstations.

VPC Service Controls

O VPC Service Controls oferece mais segurança para suas estações de trabalho para ajudar a reduzir o risco de exfiltração de dados. Ao usar o VPC Service Controls, é possível adicionar projetos a perímetros de serviço. Isso ajuda a proteger recursos e serviços contra solicitações que vêm de fora desses perímetros.

Estes são os requisitos para usar as Cloud Workstations em um perímetro de serviço do VPC:

  • Para ajudar a proteger o Cloud Workstations, é preciso restringir a API Compute Engine ao perímetro de serviço sempre que restringir a API Cloud Workstations.
  • Verifique se as APIs do Google Cloud Storage, do Google Container Registry e da API Artifact Registry são acessíveis pela VPC no seu perímetro de serviço. Isso é necessário para extrair imagens para a estação de trabalho. Também é recomendável permitir que a API Cloud Logging e Cloud Error Reporting sejam acessíveis por VPC no perímetro do serviço, embora isso não seja necessário para usar as Cloud Workstations.

  • Verifique se o cluster da estação de trabalho é particular. A configuração de um cluster particular impede conexões de estações de trabalho fora do perímetro de serviço do VPC. O serviço Cloud Workstations impede a criação de clusters públicos em um perímetro de serviço da VPC.
  • Desative os endereços IP públicos na configuração da estação de trabalho. Se isso não for feito, as VMs terão endereços IP públicos no seu projeto. Recomendamos que você use a constraints/compute.vmExternalIpAccess restrição de política da organização para desativar os endereços IP públicos de todas as VMs no perímetro do serviço VPC. Para mais detalhes, consulte Como restringir endereços IP externo a VMs específicas.

Para saber mais sobre perímetros de serviço, consulte Detalhes e configuração do perímetro de serviço.

Arquitetura

Quando você configura um cluster de estações de trabalho como particular, o plano de controle do cluster de estações de trabalho tem apenas um endereço IP interno. Isso significa que os clientes da Internet pública não podem se conectar às estações de trabalho pertencentes ao cluster de estações de trabalho. Para usar um cluster particular, conecte-o manualmente à sua rede de nuvem privada virtual (VPC) usando um endpoint do Private Service Connect.

As configurações com clusters particulares exigem dois endpoints PSC:

  • Por padrão, o Cloud Workstations cria um endpoint do PSC separado para conectar o plano de controle às VMs da estação de trabalho.

  • É necessário criar outro endpoint do PSC para clusters particulares. Para se conectar da máquina local a uma estação de trabalho em um cluster particular, a máquina local precisa estar conectada à rede VPC. Use o Cloud VPN ou o Cloud Interconnect para conectar a rede externa em que você executa a máquina à rede VPC. Esse endpoint adicional do PSC precisa ser criado na mesma rede que sua rede externa se conecta com o Cloud VPN ou o Cloud Interconnect.

O diagrama a seguir ilustra um exemplo de arquitetura de um cluster particular:

Figura 1. Clusters particulares

Antes de começar

Antes de começar, conclua estas etapas de configuração:

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Enable the Cloud Workstations API.

    Enable the API

  7. Verifique se você tem uma função de administrador do IAM das Estações de Trabalho do Cloud no projeto para criar configurações de estações de trabalho. Para verificar suas funções do IAM no console do Google Cloud, acesse a página IAM:

    Acessar o IAM

  8. Cloud Workstations são hospedadas em VMs inicializadas a partir de imagens públicas pré-configuradas do Container-Optimized OS (COS) do Compute Engine. Se a restrição de política da organização constraints/compute.trustedimageProjects for aplicada, será necessário definir restrições de acesso à imagem para permitir que os usuários criem discos de inicialização a partir de projects/cos-cloud ou de todas as imagens públicas.
  9. Opcional:ative a API Container File System para acelerar a inicialização da estação de trabalho.

    Ativar a API Container File System

    Para mais informações, consulte Reduzir o tempo de inicialização da estação de trabalho com streaming de imagens.

Criar um cluster particular

Siga estas etapas para criar um cluster particular:

  1. No console do Google Cloud, acesse a página Estações de trabalho em nuvem.

    Acessar o Cloud Workstations

  2. Navegue até a página Gerenciamento de cluster da estação de trabalho.

  3. Clique em Criar.

  4. Insira o Nome e selecione uma Região para o cluster da estação de trabalho.

  5. Na seção "Rede", selecione Redes neste projeto.

  6. Selecione uma Rede e uma Sub-rede.

  7. Em Tipo de gateway, selecione Gateway particular.

  8. Opcional: especifique um ou mais projetos que hospedam o endpoint do Private Service Connect que permite o acesso HTTP ao cluster particular. Por padrão, esse endpoint só pode ser criado no projeto do cluster de estações de trabalho e no projeto host da rede VPC (se for diferente). Se necessário, esses projetos também podem ser especificados após a criação do cluster.

  9. Clique em Criar. Enquanto o cluster está sendo criado, o status aparece como Atualizando.

    A criação de um cluster leva vários minutos para ser concluída. Quando a criação do cluster for concluída, o status dele poderá aparecer como Degradado. Depois de concluir as etapas na seção Criar um endpoint do PSC, o status do cluster vai mudar para Pronto em alguns minutos.

Ativar a conectividade de cluster particular

Os clientes não podem se conectar a estações de trabalho em clusters de estações de trabalho particulares pela Internet pública. Os clientes precisam estar em uma rede que se conecta ao cluster de estações de trabalho usando o Private Service Connect (PSC). Siga as etapas desta seção para se conectar a uma estação de trabalho:

  1. Crie um endpoint do PSC que tenha como destino o anexo de serviço da estação de trabalho.

  2. Crie uma zona de DNS particular.

  3. Use o Cloud DNS para criar um registro DNS que mapeia o nome de host do cluster para o endpoint do PSC.

Criar um endpoint do Private Service Connect

Siga estas etapas para criar um endpoint do PSC:

  1. No console do Google Cloud, acesse o Private Service Connect.

    Acesse o Private Service Connect

  2. Clique na guia Endpoints conectados e em AdicionarEndpoint de conexão.

  3. Em Destino, selecione Serviço publicado.

  4. No campo Serviço de destino, insira o URI do anexo de serviço criado para o cluster da estação de trabalho. Para encontrar essa informação, acesse o cluster da estação de trabalho no console e procure o campo URI de anexo do serviço em Configurações de rede.

  5. No campo Endpoint, insira um nome de endpoint.

  6. Selecione uma Rede para o endpoint e uma Sub-rede. Essa rede precisa ser a que você quer usar para se conectar às suas estações de trabalho e precisa ser a mesma que sua rede externa se conecta com o Cloud VPN ou o Cloud Interconnect.

  7. Selecione um Endereço IP para o endpoint.

    Se você precisar de um novo endereço IP, selecione Criar endereço IP:

    1. Digite um Nome e uma Descrição opcional para o endereço IP.
    2. Para um endereço IP estático, selecione Atribuir automaticamente. Para um Endereço IP personalizado, selecione Deixe-me escolher e insira o endereço IP que você quer usar.
    3. Em Finalidade, selecione Não compartilhado.
    4. Clique em Reservar.
  8. Selecione um Namespace na lista suspensa ou crie um novo namespace. A Região é preenchida com base na sub-rede selecionada.

  9. Clique em Adicionar endpoint.

  10. Copie o endereço IP do endpoint para usá-lo na próxima seção e criar uma zona de DNS e um registro DNS particulares.

Criar uma zona de DNS particular

Siga estas etapas para criar uma zona de DNS particular para este cluster de estações de trabalho com o nome DNS definido como clusterHostname, que pode ser encontrado navegando até o cluster de estações de trabalho no console.

  1. No Console do Google Cloud, acesse a página Criar uma zona de DNS.

    Acessar "Criar uma zona DNS"

  2. Em Tipo de zona, selecione Private.

  3. Digite um nome de zona, como private-workstations-cluster-zone.

  4. Insira um sufixo de nome DNS para a zona particular. Todos os registros na zona compartilham esse sufixo. Defina esse nome como clusterHostname.

    Para encontrar o clusterHostname, acesse a página Cloud Workstations  > Gerenciamento de cluster no console do Google Cloud e clique no cluster da estação de trabalho para ver o nome do host.

  5. Opcional: adicione uma descrição.

  6. Em Opções, selecione Padrão (privado).

  7. Selecione a rede em que você criou o endpoint do PSC na seção anterior, porque o endereço IP só é válido nessa rede.

  8. Clique em Criar.

Para mais informações sobre zonas DNS particulares, consulte a documentação do Cloud DNS sobre como criar uma zona particular e as práticas recomendadas para zonas particulares do Cloud DNS.

Criar um registro DNS

Para adicionar um registro que mapeia *.<clusterHostname> para o endereço IP reservado quando você criou o endpoint do Private Service Connect, siga estas etapas:

  1. No Console do Google Cloud, acesse a página Zonas do Cloud DNS.

    Acessar zonas do Cloud DNS

  2. Clique no nome da zona gerenciada a que você quer adicionar o registro.

  3. Na página Detalhes da zona, clique em Adicionar padrão.

  4. Na página Criar conjunto de registros, no campo Nome do DNS, insira *.<clusterHostname>.

  5. No campo Endereço IP, insira o endereço IP que você reservou para o endpoint do Private Service Connect na seção anterior.

  6. Clique em Criar.

  7. Sua rede VPC agora está conectada ao cluster de estações de trabalho, e você pode se conectar a elas usando essa rede.

Ativar a resolução de DNS no local

Para usar o editor padrão baseado em navegador na estação de trabalho, use um navegador de uma máquina conectada à rede VPC. É possível usar o Cloud VPN ou o Cloud Interconnect para se conectar da rede externa em que você executa o navegador à rede VPC.

Para se conectar de uma rede externa, você precisa configurar o DNS nela. Assim como nas etapas anteriores, é possível criar uma zona de DNS para clusterHostname e adicionar um registro que mapeia *.<clusterHostname> para o endereço IP reservado quando você criou o endpoint do Private Service Connect. Também é possível configurar zonas de encaminhamento de DNS ou políticas de servidor DNS para permitir pesquisas de nomes DNS entre seus ambientes local e do Google Cloud.

Talvez seja necessário adicionar *cloudworkstations.dev à lista de permissões da infraestrutura local.

A seguir