Esta página mostra como configurar regras de proxy e firewall para o Google Distributed Cloud.
Configure o servidor proxy
Se as máquinas que está a usar para o arranque e os nós do cluster usarem um servidor proxy para aceder à Internet, tem de:
- Configure o proxy para o gestor de pacotes nos nós do cluster
- Configure os detalhes do proxy no ficheiro de configuração do cluster.
Pré-requisitos
O seu servidor proxy tem de permitir ligações aos seguintes endereços:
Endereço | Finalidade |
---|---|
*.gcr.io |
Extrair imagens do Artifact Registry. |
accounts.google.com |
Processar pedidos de autorização para o OpenID e descobrir chaves públicas para validar tokens. |
binaryauthorization.googleapis.com |
Obrigatório se usar a autorização binária. Autorizar (ou rejeitar) pedidos de clusters para executar imagens de contentores. |
cloudresourcemanager.googleapis.com |
Resolva os metadados relativos ao Google Cloud projeto ao qual o cluster está a ser ligado. |
compute.googleapis.com |
Verifique a região do recurso do Cloud Logging e do Cloud Monitoring. |
connectgateway.googleapis.com |
Ativar a capacidade de conceder ao apoio ao cliente do Google Cloud acesso só de leitura ao seu cluster para diagnosticar problemas. |
dl.google.com |
Transfira e instale o SDK do Google Cloud. |
gkeconnect.googleapis.com |
Estabeleça o canal usado para receber pedidos de Google Cloud e
emitir respostas. Se o cluster foi registado na frota através de uma
Google Cloud região, tem de adicionar
REGION-gkeconnect.googleapis.com à lista de autorizações (por exemplo,
us-central1-gkeconnect.googleapis.com ). Se não especificou uma
região, o cluster usa a instância do serviço Connect global e adiciona
gkeconnect.googleapis.com à lista de autorizações. Se precisar de encontrar a localização da subscrição da frota
para o seu cluster, execute gcloud container fleet memberships list .
Para mais informações, consulte
gkeConnect.location .
|
gkehub.googleapis.com |
Crie recursos de associação à frota do lado do Google Cloud que correspondam ao cluster com o qual está a estabelecer ligação Google Cloud. |
gkeonprem.googleapis.com |
Crie e faça a gestão do ciclo de vida do cluster em infraestrutura de hardware físico e VMware. |
gkeonprem.mtls.googleapis.com |
Crie e faça a gestão do ciclo de vida do cluster em infraestrutura de hardware físico e VMware. Esta versão da API é usada automaticamente com o mTLS. |
iam.googleapis.com |
Criar contas de serviço que pode usar para fazer a autenticação em Google Cloud e fazer chamadas à API. |
iamcredentials.googleapis.com |
Fornece controlo de admissão e relatórios de telemetria para o registo de auditoria. |
kubernetesmetadata.googleapis.com |
Os clusters usam esta API como um ponto final para enviar metadados do Kubernetes para o Google Cloud. Os metadados são essenciais para a monitorização, a depuração e a recuperação de clusters. |
logging.googleapis.com |
Escrever entradas de registo e gerir a configuração do Cloud Logging. |
monitoring.googleapis.com |
Faça a gestão das suas configurações e dados do Cloud Monitoring. |
oauth2.googleapis.com |
Autentique através da troca de tokens OAuth para aceder à conta. |
opsconfigmonitoring.googleapis.com |
Recolha metadados para recursos do Kubernetes, como pods, implementações ou nós, para enriquecer as consultas de métricas. |
releases.hashicorp.com |
Opcional. Use o cliente Terraform na sua estação de trabalho de administrador para executar comandos, como terraform apply . |
securetoken.googleapis.com |
Obtenha tokens de atualização para autorização de identidade de carga de trabalho. |
servicecontrol.googleapis.com |
Escrever entradas do registo de auditoria nos registos de auditoria do Cloud. |
serviceusage.googleapis.com |
Ative e valide serviços e APIs. |
stackdriver.googleapis.com |
Gerir metadados do Google Cloud Observability, como contas do Stackdriver. |
storage.googleapis.com |
Gerir o armazenamento de objetos e os contentores, como os objetos do Artifact Registry. |
sts.googleapis.com |
Troque credenciais da Google ou de terceiros por um token de acesso de curta duração para aceder a Google Cloud recursos. |
www.googleapis.com |
Autenticar tokens de serviço de pedidos de Google Cloud serviço recebidos. |
Além destes URLs, o servidor proxy também tem de permitir todos os espelhos de pacotes que o gestor de pacotes do seu sistema operativo requer. Pode atualizar a configuração do gestor de pacotes para usar uma lista mais determinística, que é mais fácil de gerir.
Configure o proxy para o gestor de pacotes nos nós do cluster
O Google Distributed Cloud usa o gestor de pacotes APT no Ubuntu e o gestor de pacotes DNF no Red Hat Enterprise Linux. Certifique-se de que o gestor de pacotes do SO tem a configuração de proxy correta.
Consulte a documentação da distribuição do SO para ver detalhes sobre a configuração do proxy. Os exemplos seguintes mostram uma forma de configurar as definições de proxy:
APT
Estes comandos demonstram como configurar o proxy para o APT:
sudo touch /etc/apt/apt.conf.d/proxy.conf
echo 'Acquire::http::Proxy "http://USERNAME:PASSWORD@DOMAIN";' \
>> /etc/apt/apt.conf.d/proxy.conf
echo 'Acquire::https::Proxy "http://USERNAME:PASSWORD@DOMAIN";' \
>> /etc/apt/apt.conf.d/proxy.conf
Substitua USERNAME:PASSWORD@DOMAIN
por detalhes específicos da sua configuração. Por exemplo, se o seu proxy não exigir um início de sessão, não inclua USERNAME:PASSWORD@
com DOMAIN
.
DNF
Este comando demonstra como configurar o proxy para o DNF:
echo "proxy=http://USERNAME:PASSWORD@DOMAIN" >> /etc/dnf/dnf.conf
Substitua USERNAME:PASSWORD@DOMAIN
por detalhes específicos da sua configuração. Por exemplo, se o seu proxy não exigir um início de sessão, não inclua USERNAME:PASSWORD@
com DOMAIN
.
Configure os detalhes do proxy no ficheiro de configuração do cluster
No ficheiro de configuração do cluster, defina os seguintes valores para configurar o cluster de modo a usar o proxy:
proxy.url
Uma string que especifica o URL do proxy. As máquinas de arranque e de nós usam este proxy para aceder à Internet. A string do URL do proxy tem de começar com o respetivo esquema, por exemplo, http://
ou https://
.
proxy.noProxy
Uma lista de endereços IP, nomes de anfitriões e nomes de domínios que não devem passar pelo servidor proxy.
Na maioria dos casos, não tem de adicionar nenhum item a esta lista.
noProxy
exemplos de utilização:
Usar uma réplica privada de pacotes, localizada na mesma rede privada (não precisa de proxy para aceder)
Usar uma imagem espelhada de registo privado, localizada na mesma rede privada (não precisa de proxy para aceder)
Exemplo
Segue-se um exemplo das definições de proxy num ficheiro de configuração de cluster:
proxy:
url: http://USERNAME:PASSWORD@DOMAIN
noProxy:
- example1.com
- example2.com
Configurações de proxy para o GKE Identity Service
Se usar o GKE Identity Service para autenticação em clusters do Google Distributed Cloud, são necessários os seguintes passos adicionais para garantir que o GKE Identity Service funciona quando está atrás de um proxy.
No ficheiro de configuração do cluster, defina os detalhes do proxy na secção OIDC
authentication
para as definições do serviço de identidade do GKE.authentication: oidc: proxy: http://USERNAME:PASSWORD@DOMAIN
Atualize a configuração do servidor proxy para permitir ligações aos URLs de autenticação do fornecedor de OIDC.
Como é usado o proxy no cluster
Como regra geral, os comandos bmctl
e os processos que geram usam a configuração de proxy definida pelas variáveis de ambiente HTTPS_PROXY
e NO_PROXY
, se estiverem definidas. Caso contrário, o bmctl
usa a configuração de proxy do ficheiro de configuração do cluster. Outros comandos executados na estação de trabalho do administrador, em máquinas de nós do cluster ou pelo cluster de arranque usam a configuração de proxy do ficheiro de configuração do cluster.
O gestor de pacotes do SO em cada nó usa os seus próprios ficheiros de configuração para as definições de proxy.
Substitua a configuração de proxy na sua máquina de arranque
Pode executar a estação de trabalho de administrador atrás de um proxy diferente do usado pelas máquinas dos nós ao substituir as definições de proxy no ficheiro de configuração do cluster. Para substituir as definições de proxy, defina as seguintes variáveis de ambiente na máquina de arranque:
export HTTPS_PROXY=http://USERNAME:PASSWORD@DOMAIN
Substitua USERNAME:PASSWORD@DOMAIN
por detalhes específicos da sua configuração.
export NO_PROXY=example1.com,example2.com
Substitua example1.com,example2.com por endereços IP, nomes de anfitrião e nomes de domínio que não devem passar pelo servidor proxy.
Efeitos secundários
Quando executado como root, o bmctl
atualiza a configuração do proxy do Docker na máquina de arranque. Se não executar o bmctl
como raiz, configure o proxy do Docker
manualmente.
Regras de firewall
Configure as regras da firewall conforme descrito nas secções seguintes para permitir o tráfego descrito necessário para o Google Distributed Cloud.
Para ver os requisitos de portas pré-requisitos para o Google Distributed Cloud, consulte o artigo Utilização de portas.
Regras de firewall para endereços IP de nós de cluster
A tabela seguinte descreve as regras de firewall para endereços IP disponíveis nos seus clusters.
De |
Porta de origem |
Para |
Porta |
Protocolo |
Descrição |
---|---|---|---|---|---|
Nó de cluster | 1024 - 65535 | cloudresourcemanager.googleapis.com gkeconnect.googleapis.com gkehub.googleapis.com |
443 | TCP/HTTPS | O acesso é necessário para o registo de frotas. |
O coletor do Cloud Logging, que é executado no nó do cluster | 1024 - 65535 | oauth2.googleapis.com logging.googleapis.com stackdriver.googleapis.com servicecontrol.googleapis.com storage.googleapis.com www.googleapis.com |
443 | TCP/HTTPS | |
O Cloud Metadata Collector, que é executado no nó do cluster | 1024 - 65535 | opsconfigmonitoring.googleapis.com |
443 | TCP/HTTPS | |
O coletor do Cloud Monitoring, que é executado no nó do cluster | 1024 - 65535 | oauth2.googleapis.com monitoring.googleapis.com stackdriver.googleapis.com servicecontrol.googleapis.com |
443 | TCP/HTTPS | |
Nó de cluster | 1024 - 65535 | Registo Docker local no local | Depende do seu registo | TCP/HTTPS | Obrigatório se o Google Distributed Cloud estiver configurado para usar um registo Docker privado local em vez de gcr.io . |
Nó de cluster | 1024 - 65535 | gcr.io oauth2.googleapis.com storage.googleapis.com Qualquer URL da API Google no formato *.googleapis.com necessário para os
serviços ativados para o cluster de administrador. |
443 | TCP/HTTPS | Transferir imagens de registos públicos do Docker. Não é necessário se usar um registo do Docker privado. |
O Connect Agent, que é executado num nó do cluster | 1024 - 65535 | cloudresourcemanager.googleapis.com gkeconnect.googleapis.com gkehub.googleapis.com www.googleapis.com iam.googleapis.com iamcredentials.googleapis.com oauth2.googleapis.com securetoken.googleapis.com sts.googleapis.com accounts.google.com |
443 | TCP/HTTPS | Para mais informações sobre o tráfego gerido pelo Connect Agent, consulte a vista geral do Connect Agent. |
Nó de cluster | 1024 - 65535 |
gkeonprem.googleapis.com gkeonprem.mtls.googleapis.com |
443 | TCP/HTTPS | Crie e faça a gestão do ciclo de vida do cluster em infraestrutura de hardware físico e VMware. |
Regras de firewall para os restantes componentes
As regras descritas na tabela seguinte aplicam-se a todos os outros componentes não indicados na secção anterior.
De |
Porta de origem |
Para |
Porta |
Protocolo |
Descrição |
---|---|---|---|---|---|
Clientes e utilizadores finais da aplicação | Tudo | VIP de entrada do Istio | 80 443 | TCP | Tráfego do utilizador final para o serviço de entrada de um cluster de utilizadores. |
Estação de trabalho do administrador | 32768 - 60999 | gcr.io cloudresourcemanager.googleapis.com oauth2.googleapis.com storage.googleapis.com Qualquer URL *.googleapis.com necessário para os serviços ativados
para este cluster |
443 | TCP/HTTPS | Transferir imagens do Docker de registos públicos do Docker. |
Estação de trabalho do administrador | 32768 - 60999 | gcr.io cloudresourcemanager.googleapis.com iam.googleapis.com oauth2.googleapis.com serviceusage.googleapis.com storage.googleapis.com Qualquer URL *.googleapis.com necessário para os serviços ativados
para os clusters de administrador ou de utilizador |
443 | TCP/HTTPS | Verificações prévias (validação). |