Como configurar a VPC compartilhada

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Cloud Composer 1 | Cloud Composer 2

Nesta página, você encontra os requisitos do projeto host e da rede VPC compartilhada do Cloud Composer.

Com a VPC compartilhada, as organizações estabelecem limites de controle de acesso e orçamento para envolvidos no projeto, além de possibilitar uma comunicação segura e eficiente usando IPs particulares nesses limites. Na configuração da VPC compartilhada, o Cloud Composer pode invocar serviços hospedados em outros projetos do Google Cloud na mesma organização sem expor serviços à Internet pública.

Diretrizes para VPC compartilhada

Projetos de serviço e host do Cloud Composer
Figura 1. Projetos de serviço e host para o Cloud Composer
  • A VPC compartilhada exige que você determine um projeto host, que incluirá redes e sub-redes, e um projeto de serviço, que será anexado ao de host. Quando o Cloud Composer faz parte de uma VPC compartilhada, o ambiente dele fica no projeto de serviço.

  • Para configurar a VPC compartilhada, selecione os seguintes intervalos de IP no projeto host:

    • O intervalo de IP principal da sub-rede usada pelos nós do GKE que o Cloud Composer usa como camada do Compute Engine.
    • O intervalo de IP secundário de serviços do GKE.
    • O intervalo de IP secundário de pods do GKE.
  • Os intervalos de IP secundários não podem se sobrepor a nenhum outro intervalo secundário nessa VPC.

  • Verifique se os intervalos secundários são grandes o suficiente para acomodar o tamanho do cluster e o escalonamento do ambiente.

    Consulte Como criar um cluster nativo de VPC para ver diretrizes sobre como configurar intervalos secundários de pods e serviços.

  • O intervalo de endereços principal da sub-rede precisa acomodar o crescimento previsto e levar em consideração os endereços IP reservados.

  • Se você usar o agente de mascaramento de IP e a configuração de IP privado para seus ambientes, adicione os intervalos de IP de nós e pods à seção nonMasqueradeCIDRs do ConfigMap ip-masq-agent. Para mais informações, consulte Como configurar um agente de mascaramento de IP.

Preparação

  1. Encontre os IDs e números de projeto a seguir:

    • Projeto host: contém a rede VPC compartilhada.
    • Projeto de serviço: contém o ambiente do Cloud Composer.
  2. Prepare a organização.

  3. Ative a API GKE nos projetos host e de serviço.

  4. Se você configurar o Cloud Composer no modo de IP privado ou no modo de IP privado no VPC SC, siga as instruções relacionadas à configuração de regras de DNS e firewall, conforme descrito nas instruções de IP privado e no VPC SC.

Configurar o projeto host

Configure o projeto host conforme descrito.

(IP privado) Ativar o acesso privado do Google

Se você planeja usar ambientes de IP particulares, ative o Acesso privado do Google para a sub-rede no projeto host. Você pode fazer isso na próxima etapa, ao configurar recursos de rede em uma sub-rede nova ou já existente.

Se você planeja usar ambientes de IP público, ainda recomendamos ativar o Acesso privado do Google para a sub-rede no projeto host. Se você decidir não usar o Acesso privado do Google, verifique se não está bloqueando o tráfego que a regra de firewall de saída IPv4 implícita permitiria. Isso é necessário para alcançar os endpoints *.googleapis.com.

Configurar recursos de rede

Escolha uma das opções a seguir para alocar e configurar os recursos de rede. Para cada opção, você precisa nomear os intervalos secundários de IPs dos pods e serviços.

Configurar a VPC compartilhada e anexar o projeto de serviço

  1. Configure a VPC compartilhada caso ainda não tenha feito isso. Se você já configurou a VPC compartilhada, pule para a próxima etapa.

  2. Anexe o projeto de serviço, que você usa para hospedar ambientes do Cloud Composer.

    Ao anexar um projeto, deixe as permissões de rede VPC padrão em vigor.

Editar permissões da conta de serviço das APIs do Google

No projeto host, edite as permissões da conta de serviço das APIs do Google, SERVICE_PROJECT_NUMBER@cloudservices.gserviceaccount.com.

Para essa conta, adicione outro papel, compute.networkUser no nível do projeto. Esse é um requisito para grupos de instâncias gerenciadas usados com a VPC compartilhada porque esse tipo de conta de serviço realiza tarefas como a criação de instâncias.

Editar permissões para contas de serviço do GKE

No projeto host, edite as permissões das contas de serviço do GKE, service-SERVICE_PROJECT_NUMBER@container-engine-robot.iam.gserviceaccount.com.

Para cada conta de serviço, adicione outro papel, compute.networkUser.

Conceda esse papel no nível da sub-rede para permitir que uma conta de serviço configure os peerings de VPC exigidos pelo Cloud Composer. Nesse caso, será necessário especificar explicitamente a sub-rede que será usada pelo ambiente, já que o cluster do GKE pode não ter permissões para encontrá-la na rede.

Como alternativa, é possível conceder esse papel a todo o projeto host. Nesse caso, a conta de serviço do GKE do projeto de serviço tem permissões para usar qualquer sub-rede no projeto host.

Editar permissões da conta de serviço do GKE do projeto de serviço

No projeto host, edite as permissões da conta de serviço do GKE do projeto de serviço.

Nessa conta, adicione outro papel, Host Service Agent User.

Isso permite que essa conta no projeto de serviço use a conta de serviço do GKE do projeto host para configurar recursos de rede compartilhados.

Configurar conectividade com o *.pkg.dev

No projeto host, verifique se o DNS *.pkg.dev corresponde ao intervalo definido para o Acesso privado do Google. O exemplo a seguir usa 199.36.153.4/30.

Para fazer isso, crie uma nova zona como: CNAME *.pkg.dev -> pkg.dev. A pkg.dev. -> 199.36.153.4, 199.36.153.5, 199.36.153.6, 199.36.153.7

Editar permissões da conta de serviço do agente do Cloud Composer

  1. No projeto de serviço, se este for o primeiro ambiente do Cloud Composer, provisione a conta de serviço do agente do Composer: gcloud beta services identity create --service=composer.googleapis.com.

  2. No projeto host:

    1. Editar permissões da conta de serviço do agente do Composer, service-SERVICE_PROJECT_NUMBER@cloudcomposer-accounts.iam.gserviceaccount.com)

    2. Para esta conta, adicione outro papel:

      • Para ambientes de IP particular, adicione o papel Composer Shared VPC Agent.

      • Para ambientes de IP público, adicione o papel Compute Network User.

Você terminou de configurar a rede VPC compartilhada do projeto host.

A seguir