Configurar o VPC Service Controls e os clusters particulares

Nesta página, descrevemos como o VPC Service Controls e os clusters particulares funcionam e como para 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. Com o VPC Service Controls, é possível adicionar projetos a perímetros de serviço, o que ajuda a proteger recursos e serviços solicitações originadas fora do perímetro.

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 do 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 recomendamos que você permita o uso da API Cloud Logging e do a API Error Reporting possa ser acessada pela VPC em seu perímetro de serviço, embora isso não seja necessário o Cloud Workstations.

  • Verifique se o cluster da estação de trabalho é particular. A configuração de um cluster particular impede conexões com as estações de trabalho de fora do perímetro de serviço da 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 Restringir endereços IP externo a ou VMs.
.

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 cluster de estações de trabalho. Para usar um cluster particular, você precisa conectar manualmente o um cluster particular a uma rede de nuvem privada virtual (VPC) usando um Private Service Connect (em inglês) endpoint do Google Cloud.

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

  • Por padrão, o Cloud Workstations cria um endpoint 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. Usar Cloud VPN ou Cloud Interconnect para conectar a rede externa em que você executa sua máquina à VPC em uma rede VPC. Esse endpoint do PSC adicional precisa ser criado na mesma rede com que a 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 necessárias:

  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. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

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

    Go to project selector

  5. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  6. Enable the Cloud Workstations API.

    Enable the API

  7. Verifique se você tem um papel do IAM de administrador do Cloud Workstations na projeto para que seja possível 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. O Cloud Workstations são hospedados em VMs inicializadas a partir do sistema público pré-configurado do Compute Engine Container-Optimized OS (COS) de imagens de contêiner. Se a organização constraints/compute.trustedimageProjects de política for aplicada, será necessário defina as restrições de acesso a imagens 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 Reduza 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 Cloud Workstations.

    Acessar o Cloud Workstations

  2. Navegue até a página Gerenciamento de clusters 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 adicionais que hospedam endpoint do Private Service Connect que permite o acesso HTTP aos seus 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.

Ativar a conectividade do cluster particular

Os clientes não podem se conectar a estações de trabalho em clusters de estações de trabalho particulares da 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 nesta 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.

    Ir ao Private Service Connect

  2. Clique na guia Endpoints conectados e depois em addConectar endpoint.

  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 sua estação de trabalho cluster no console e procure o campo URI do anexo de serviço em Configurações de rede.

  5. No campo Endpoint, digite um nome para o endpoint.

  6. Selecione uma Rede para o endpoint e uma Sub-rede. Essa rede precisa ser aquela que você quer usar para se conectar suas estações de trabalho e precisa ser a mesma rede que a 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. Em um Endereço IP estático, selecione Atribuir automaticamente. Em Endereço IP personalizado, selecione Quero escolher. e digite 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 para Crie uma zona DNS particular e um registro DNS.

Criar uma zona de DNS particular

Siga estas etapas para criar uma zona de DNS particular para este cluster de estação de trabalho com o nome DNS definido como clusterHostname, que você pode encontrar navegando até o cluster da estação 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 a Endpoint do PSC ativado na seção anterior porque o endereço IP só é válido naquela rede.

  8. Clique em Criar.

Para mais informações sobre zonas de DNS particulares, consulte o Cloud DNS documentação sobre como Criar uma zona particular e 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, digite *.<clusterHostname>

  5. No campo Endereço IP, digite 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 já deve estar conectada à estação de trabalho cluster do Kubernetes e se conectar a estações de trabalho usando essa rede.

Ativar a resolução de DNS no local

Para usar o editor baseado em navegador padrão na sua estação de trabalho, use um navegador de uma conectada à rede VPC. Você pode usar Cloud VPN ou Cloud Interconnect pela rede externa em que você executa o navegador à VPC em uma rede VPC.

Para se conectar de uma rede externa, você precisa configurar o DNS na rede externa. Assim como nas etapas anteriores, você pode criar uma zona de DNS para clusterHostname e adicionar um registro que mapeie *.<clusterHostname> para 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 também seja necessário adicionar *cloudworkstations.dev à sua infraestrutura local na lista de permissões da infraestrutura.

A seguir