Nesta página, você encontra informações sobre como configurar um ambiente de IP privado do Cloud Composer.
Quando você ativa o IP privado, o Cloud Composer atribui apenas endereços IP privados (RFC 1918) às VMs gerenciadas do Cloud SQL e Google Kubernetes Engine no ambiente.
Para mais informações sobre como se conectar a recursos no ambiente, consulte IP privado.
Antes de começar
Controle de acesso
- Tenha as permissões de usuário e conta de serviço apropriadas para criar um ambiente.
Requisitos de rede
Verifique se a rede VPC do seu projeto atende aos requisitos a seguir:
- Certifique-se de que não haja conflitos com blocos de IPs privados. Se a rede VPC e os pares estabelecidos dela tiverem blocos de IPs sobrepostos no projeto de locatário gerenciado pelo Google, o Cloud Composer não criará o ambiente. Consulte a coluna Intervalo de IP do servidor da Web na tabela abaixo para ver os padrões usados em cada região.
- Tenha intervalos de IPs secundários suficientes nos pods e serviços do GKE para o Cloud Composer. O GKE pesquisa esses intervalos para realizar o alias de IP. Se nenhum intervalo for encontrado, o Cloud Composer não criará o ambiente.
- Tenha até 25 conexões de peering VPC na rede VPC. Considere o seguinte:
- Para cada ambiente de IP privado, o Cloud Composer cria uma conexão de peering na rede do projeto de locatário.
- O cluster particular do GKE cria outra conexão de peering VPC na rede VPC.
- O número máximo aceito de ambientes de IP privado do Cloud Composer é 12.
- O número máximo de ambientes de IP privado do Cloud Composer que pode ser criado depende da quantidade de conexões de peering VPC usada na rede VPC.
- Tenha até 30 intervalos secundários na sub-rede. Considere o seguinte:
- O cluster do GKE no ambiente de IP privado do Cloud Composer cria dois intervalos secundários na sub-rede. É possível criar várias sub-redes na mesma região e na mesma rede VPC.
- O número máximo aceito de intervalos secundários é 30. Como cada ambiente de IP particular do Cloud Composer requer dois intervalos secundários para os pods e serviços do GKE do Cloud Composer, todas as sub-redes aceitam até 15 desses ambientes.
Configuração do nativo de VPC
O Cloud Composer é compatível com clusters do GKE nativos de VPC no ambiente.
Durante a criação do ambiente, é possível ativar o nativo de VPC, usando o IP de alias, e configurar a rede, como a alocação de IP, sem ativar o IP particular.
Como um cluster nativo de VPC é necessário para que as tarefas do Airflow se comuniquem com outras VMs acessíveis por IPs particulares, ative também o nativo de VPC para configurar um ambiente de IP particular.
O exemplo de IP particular e a configuração do intervalo secundário são fornecidos na seção a seguir.
Como configurar um ambiente de IP particular do Composer e intervalos secundários
Console
- Abra a página Criar ambiente no Console do Google Cloud.
- Configure o ambiente.
- Marque Ativar nativo de VPC (usando o IP do alias).
- Insira a configuração de rede do cluster do GKE do ambiente, incluindo os intervalos secundários de alias de IP, conforme necessário.
- Para ativar um ambiente de IP privado do Cloud Composer, marque Ambiente de IP privado.
- Em Intervalo de IP particular do mestre do cluster do GKE, digite um intervalo de IP para a VPC do mestre ou use o intervalo de IP padrão.
- Para ativar um endpoint público do cluster do GKE no ambiente, marque Acessar o mestre do GKE usando o endereço IP externo.
O cluster é configurado como Acesso ao endpoint público ativado, redes autorizadas ativadas.
- Em IP particular do servidor da Web, insira um intervalo de IP para o servidor da Web do Airflow ou use o intervalo de IP padrão.
- Em IP particular do Cloud SQL, insira um intervalo de IP para a instância do Cloud SQL ou use o intervalo de IP padrão.
- Quando terminar de configurar o ambiente, clique em Criar.
gcloud
Configure o ambiente, incluindo os seguintes argumentos de um ambiente de IP privado do Cloud Composer, conforme necessário:
gcloud composer environments create ENVIRONMENT_NAME \ --location LOCATION --enable-private-environment \ OTHER_ARGUMENTS
Os parâmetros a seguir são obrigatórios, a menos que especificados:
ENVIRONMENT_NAME
é o nome do ambiente; Precisa corresponder ao padrão^[a-z](?:[-0-9a-z]{0,62}[0-9a-z])?$
.LOCATION
é a região do Compute Engine em que o ambiente está localizado.--enable-private-environment
para ativar um ambiente de IP particular do Cloud Composer;--enable-ip-alias
para ativar o Nativo da VPC usando endereços IP do alias. Esse parâmetro é obrigatório ao usar--enable-private-environment
ou ao configurar intervalos secundários para pods e serviços:--cluster-secondary-range-name
ou --cluster-ipv4-cidr
para configurar o intervalo secundário para pods.--services-secondary-range-name
ou--services-ipv4-cidr
para configurar o intervalo secundário para serviços.
master-ipv4-cidr
para especificar um intervalo RFC 1918 particular para a VPC do mestre.- (Opcional)
enable-private-endpoint
para ativar um endpoint particular para o cluster do GKE no ambiente. O cluster é configurado como Acesso ao endpoint público desativado.
O exemplo a seguir cria um ambiente que executa a versão de imagem compatível mais recente do Cloud Composer na região us-central1
que usa a máquina n1-standard-2
.
O IP particular é ativado no ambiente, e 192.168.2.0/28
é o intervalo de IPs da VPC do mestre do GKE.
gcloud composer environments create test-environment \ --location us-central1 \ --zone us-central1-f \ --machine-type n1-standard-2 \ --image-version composer-latest-airflow-x.y.z \ --enable-ip-alias \ --enable-private-environment \ --enable-private-endpoint \ --master-ipv4-cidr 192.168.2.0/28
API
Para criar um novo ambiente do Cloud Composer com a API REST do Cloud Composer, faça uma solicitação de API environments.create
, preenchendo o recurso Environment
com as informações de configuração.
Por exemplo, essa solicitação de API cria um novo ambiente chamado privateip-test
na zona us-central1-c
:
POST https://composer.googleapis.com/v1/projects/test-project/locations/us-central1/environments{ "config":{ "nodeConfig":{ "ipAllocationPolicy":{ "useIpAliases":true, "clusterIpv4CidrBlock":"10.56.0.0/14", "servicesIpv4CidrBlock":"10.122.0.0/20" }, "location":"projects/test-project/zones/us-central1-c", "network":"projects/test-project/global/networks/default", "oauthScopes":[ ], "subnetwork":"projects/test-project/regions/us-central1/subnetworks/default", "tags":[ ] }, "nodeCount":3, "privateEnvironmentConfig":{ "cloudSqlIpv4CidrBlock":"10.32.0.0/12", "webServerIpv4CidrBlock":"172.30.240.0/24", "enablePrivateEnvironment":true, "privateClusterConfig":{ "enablePrivateEndpoint":false, "masterIpv4CidrBlock":"172.18.50.0/28" } }, "softwareConfig":{ "airflowConfigOverrides":{ }, "envVariables":{ }, "pythonVersion":"3", "pypiPackages":{ } } }, "labels":{ "purpose":"test" }, "name":"projects/test-project/locations/us-central1/environments/privateip-test" }
Intervalos de IP padrão
Região | Intervalo IP do mestre do GKE | Intervalo de IP do servidor da Web | Intervalo de IP do Cloud SQL |
---|---|---|---|
asia-east2 | 172.16.0.0/23 | 172.31.255.0/24 | 10.0.0.0/12 |
asia-northeast1 | 172.16.2.0/23 | 172.31.254.0/24 | 10.0.0.0/12 |
asia-northeast2 | 172.16.32.0/23 | 172.31.239.0/24 | 10.0.0.0/12 |
asia-northeast3 | 172.16.30.0/23 | 172.31.240.0/24 | 10.0.0.0/12 |
asia-south1 | 172.16.4.0/23 | 172.31.253.0/24 | 10.0.0.0/12 |
australia-southeast1 | 172.16.6.0/23 | 172.31.252.0/24 | 10.0.0.0/12 |
europe-west1 | 172.16.8.0/23 | 172.31.251.0/24 | 10.0.0.0/12 |
europe-west2 | 172.16.10.0/23 | 172.31.250.0/24 | 10.0.0.0/12 |
europe-west3 | 172.16.12.0/23 | 172.31.249.0/24 | 10.0.0.0/12 |
europe-west6 | 172.16.14.0/23 | 172.31.248.0/24 | 10.0.0.0/12 |
northamerica-northeast1 | 172.16.16.0/23 | 172.31.247.0/24 | 10.0.0.0/12 |
southamerica-east1 | 172.16.18.0/23 | 172.31.246.0/24 | 10.0.0.0/12 |
us-central1 | 172.16.20.0/23 | 172.31.245.0/24 | 10.0.0.0/12 |
us-east1 | 172.16.22.0/23 | 172.31.244.0/24 | 10.0.0.0/12 |
us-east4 | 172.16.24.0/23 | 172.31.243.0/24 | 10.0.0.0/12 |
us-west2 | 172.16.34.0/23 | 172.31.238.0/24 | 10.0.0.0/12 |
us-west3 | 172.16.26.0/23 | 172.31.242.0/24 | 10.0.0.0/12 |
us-west4 | 172.16.28.0/23 | 172.31.241.0/24 | 10.0.0.0/12 |
Como configurar regras de firewall
Sua rede VPC precisa ser configurada para permitir que o tráfego de um ambiente de IP particular do Cloud Composer alcance os destinos necessários. Siga os requisitos de configuração listados abaixo.
Abra a página Rede VPC -> Firewall no Console do Google Cloud.
Verifique se as seguintes regras de firewall estão configuradas:
- Permite a saída do intervalo de IP do nó do GKE para qualquer destino (0.0.0.0/0), a porta TCP/UDP 53.
- Permite saída do intervalo de IP do nó do GKE para o intervalo de IP do nó do GKE, todas as portas.
- Permite saída do intervalo de IP do nó do GKE para o intervalo de IP do GKE mestre, todas as portas.
- Permite a entrada de verificações de integridade do GCP 130.211.0.0/22 e 35.191.0.0/16 para o intervalo de IP do nó do GKE, portas TCP 80 e 443.
- Permite saída do intervalo de IP do nó do GKE para verificações de integridade do GCP 130.211.0.0, 35.191.0.0/16, portas TCP 80 e 443.
Consulte Como usar regras de firewall para aprender a verificar, adicionar e atualizar regras para sua rede VPC.