Usar o Cloud Build numa rede privada

Esta página explica como configurar as configurações de rede privada usadas com frequência para usar com pools privados. Para uma vista geral das piscinas privadas, consulte o artigo Vista geral das piscinas privadas.

Definir as predefinições de rede

Quando cria um pool privado, a configuração predefinida é usar a rede da nuvem privada virtual na qual os pools privados residem. Use a rede VPC predefinida se:

Para ver instruções sobre como estabelecer ligação à rede predefinida, consulte o artigo Criar um conjunto privado.

Definir um intervalo de IPs internos estáticos

Em alguns casos, pode ter de ter um intervalo de IPs estáticos definido para o seu conjunto privado, como quando chama um serviço que permite chamadas a partir de um intervalo de IPs definido. Com os conjuntos privados, quando configura uma ligação privada entre a sua rede VPC e a rede VPC do conjunto privado, pode criar intervalos de endereços IP alocados com um intervalo CIDR definido de IPs nos quais os seus conjuntos privados serão executados. Também pode especificar um intervalo CIDR mais pequeno num intervalo de endereços IP atribuído que um conjunto privado vai usar.

Execução numa rede de VPC

Para usar o Cloud Build com recursos numa rede privada atrás de uma firewall, como numa rede VPC, pode criar uma ligação privada entre o pool privado e a sua rede VPC gerida. Isto permite que o pool privado aceda a recursos na sua rede privada, como repositórios de origem, repositórios de artefactos, bases de dados, instâncias de segredos e tempos de execução.

Em execução numa rede VPC partilhada

Se estiver a usar uma rede VPC partilhada, o projeto onde está a criar o pool privado tem de estar associado ao projeto anfitrião que contém a rede VPC partilhada. Para ver instruções sobre como anexar um projeto, consulte o artigo Aprovisionar uma rede VPC partilhada.

Estabelecer ligação a recursos noutra rede VPC com intercâmbio ou rede VPC partilhada

As organizações adotam frequentemente uma VPC partilhada (projeto anfitrião) para centralizar a rede e a gestão de identidades e acessos em todos os projetos. Isto permite que os endereços IP internos sejam usados para serviços geridos pela Google, como clusters GKE privados e Cloud SQL privado. Estes serviços geridos pela Google também são intercambiados numa rede VPC partilhada pertencente ao cliente. O problema desta configuração é que os pools privados não conseguem comunicar com os serviços geridos pela Google devido à falta de peering transitivo. A interligação transitiva só é um problema quando várias redes estão ligadas entre si através da interligação de VPCs. Se uma das ligações for alterada para usar uma VPN (ou uma interligação) em vez da interligação de VPCs, as redes podem estabelecer conetividade. Para ver instruções sobre esta configuração de rede, consulte o artigo Aceder a clusters privados do Google Kubernetes Engine com pools privados do Cloud Build.

Em execução numa região específica

Pode criar um conjunto privado numa das regiões suportadas. Pode armazenar quaisquer imagens e artefactos de contentores criados em repositórios do Artifact Registry e contentores do Cloud Storage em regiões especificadas.

Implementação em clusters privados do GKE

Os clusters privados do GKE podem ter um ponto final público ou privado para o plano de controlo.

Para implementar num cluster do GKE privado com um ponto final público, pode criar o seu pool privado na rede predefinida com acesso à Internet pública e definir um intervalo de IPs internos estático para a sua lista de permissões do pool para acesso ao cluster.

Para implementar em clusters privados do GKE com um ponto final privado, pode seguir os passos descritos no artigo Aceder a clusters privados do Google Kubernetes Engine com pools privados do Cloud Build. Em alternativa, depois de estabelecer a interligação com a sua VPC, pode executar um proxy de rede no cluster, conforme descrito no artigo Criar clusters privados do GKE com proxies de rede.

Usar com os VPC Service Controls

Os VPC Service Controls são uma Google Cloud funcionalidade que lhe permite configurar um perímetro seguro para se proteger contra a exfiltração de dados. Para obter instruções sobre como usar os VPC Service Controls com pools privados para adicionar segurança adicional às suas compilações, consulte o artigo Usar os VPC Service Controls.

Remoção de IPs públicos em pools privados

Pode remover IPs públicos em pools privados definindo o campo egressOption no ficheiro de configuração do pool privado como NO_PUBLIC_EGRESS. No entanto, tenha em atenção que a remoção de IPs públicos restringe o acesso do seu conjunto privado a recursos na Internet pública.

Restringir a saída para a Internet pública

Existem algumas formas de restringir a saída de pools privadas para a Internet pública:

Impor a utilização de pools privadas

O Cloud Build fornece uma constraints/cloudbuild.allowedWorkerPools restrição de política organizacional que pode aplicar para exigir que as compilações na sua organização não usem o conjunto predefinido e usem apenas o conjunto privado. Para ver instruções sobre como usar esta funcionalidade, consulte o artigo Configurar restrições de políticas da organização.

Utilização com zonas de DNS da nuvem privadas

Pode partilhar uma zona DNS do Cloud privada para usar com pools privadas. Para ver instruções, consulte o artigo Partilhar uma zona privada.

Executar atrás de um NAT

Embora possa controlar o intervalo de IP do seu pool privado na VPC, não é possível controlar os endereços IP externos (se ativados). Se precisar de aceder a um recurso a partir de um IP reservado, crie uma VM de proxy e encaminhe o tráfego através dela concluindo os passos em Aceda a um recurso externo a partir de um endereço IP de origem estático com o Cloud Build.

O que se segue?