Use um proxy HTTP
Este documento mostra como rotear o tráfego do GKE no Azure por meio de um proxy HTTP/HTTPS. Você especifica a configuração do proxy ao criar um cluster.
Visão geral
O GKE no Azure pode rotear o tráfego de saída da Internet por meio de um proxy pelos seguintes motivos:
- Para registrar clusters com Google Cloud através do Connect
- Para executar o Connect Agent
- Para baixar imagens do Container Registry
Limitações
- Os campos
httpProxy
ehttpsProxy
não suportam URLs que começam comhttps://
. Você deve usarhttp://
. As solicitações para a porta 443 usam HTTPS. - Você deve definir valores para
httpProxy
,httpsProxy
enoProxy
. - A configuração de proxy de um cluster — o ID do grupo de recursos e o ID secreto — é imutável. Você precisa criar um novo cluster e um pool de nós para atualizar esses valores.
- Pode ser necessário adicionar domínios, IPs ou CIDRs adicionais ao campo
noProxy
. Recomendamos adicionar os CIDRs de sub-rede dos planos de controle do seu cluster (o CIDR de endereço do pod e o CIDR de endereço do serviço são adicionados por padrão).
Pré-requisitos
Esta seção descreve os pré-requisitos que você deve aplicar antes de usar um proxy.
Configuração do Azure Key Vault
O GKE no Azure armazena informações de configuração de proxy no Azure Key Vault. Para configurar um proxy com o GKE no Azure, você precisa ter permissões para criar um segredo em um Key Vault. O Key Vault precisa ser acessível a partir da VNet do seu cluster.
Lista de permissões de proxy
Para o GKE no Azure se conectar a Google Cloud serviços, o servidor proxy deve permitir tráfego para domínios específicos do Google e da Microsoft.
.azure.com
.gcr.io
cloudresourcemanager.googleapis.com
container.googleapis.com
gkeconnect.googleapis.com
gkehub.googleapis.com
oauth2.googleapis.com
securetoken.googleapis.com
storage.googleapis.com
sts.googleapis.com
www.googleapis.com
servicecontrol.googleapis.com
logging.googleapis.com
monitoring.googleapis.com
opsconfigmonitoring.googleapis.com
GCP_LOCATION-gkemulticloud.googleapis.com
Substitua GCP_LOCATION
por Google Cloud região na qual seu cluster do GKE Enterprise reside. Especifique us-west1
ou outra região compatível .
Requisito de grupo de segurança de rede de sub-rede
Se você estiver usando Grupos de Segurança de Rede (NSGs) para gerenciar o tráfego para suas sub-redes, suas regras de NSG devem permitir tráfego TCP de saída para os seguintes destinos:
- AzureCloud: TCP, porta 80 e 443
Consulte Tags de serviço do Azure para obter mais informações sobre como usar tags de serviço com NSGs.
Crie um arquivo de configuração de proxy
A configuração do proxy é armazenada em um segredo do Azure Key Vault como uma string JSON. Você pode passar essa configuração para a ferramenta de linha de comando az
como um arquivo. Esta seção descreve como criar esse arquivo.
A tabela a seguir descreve o conteúdo deste arquivo.
Campo | Descrição | Exemplos | Obrigatório |
---|---|---|---|
httpProxy | Uma URL de servidor proxy. O valor deve incluir um nome de host/endereço IP e, opcionalmente, uma porta, nome de usuário e senha. | "http://user:[email protected]:80" "10.184.37.42" | Sim |
httpsProxy | Uma URL de proxy para tráfego HTTPS criptografado. A URL httpProxy será usada se httpsProxy tiver um valor vazio. | "http://10.101.16.31:80" | Sim |
noProxy | Uma lista separada por vírgulas de URLs a serem excluídas do proxy. Cada valor pode ser um endereço IP, um intervalo CIDR, um nome de domínio ou o caractere asterisco (*). Domínios especificados com um ponto inicial (por exemplo, `.google.com`) indicam que um subdomínio é necessário. Um único asterisco * ignora todas as configurações de proxy. | "1.2.3.4,10.0.0.0/16,example.com,.site.com" | Sim |
Para criar o arquivo de configuração, crie um arquivo JSON que contenha valores para
httpProxy
,noProxy
e chaveshttpsProxy
opcionais.{ "httpProxy": "AUTHENTICATION_URL", "httpsProxy": "AUTHENTICATION_URL", "noProxy": "NO_PROXY_ADDRESSES" }
Substitua o seguinte:
-
AUTHENTICATION_URL
: URL codificada contendo o nome de usuário do proxy e a senha -
NO_PROXY_ADDRESSES
: lista separada por vírgulas de blocos CIDR e URLs — por exemplo10.0.0.0/16,http://example.com
Salve o arquivo para usar na seção seguinte.
-
Crie um segredo com esses dados JSON como um segredo no Azure Key Vault usando a ferramenta de linha de comando
az
.az keyvault secret set --name SECRET_NAME \ --vault-name KEY_VAULT_NAME \ --file PROXY_CONFIGURATION_FILE
Substitua o seguinte:
-
SECRET_NAME
: o nome do novo segredo -
KEY_VAULT_NAME
: o nome do seu Key Vault PROXY_CONFIGURATION_FILE
: o caminho para o arquivo de configuração do proxy.A saída inclui o nome e o conteúdo do segredo. Agora você pode referenciar esse segredo ao criar um cluster.
-
Crie um cluster que use um proxy
Para configurar o GKE no Azure para usar um proxy HTTP para conectividade de saída, execute as seguintes etapas:
Siga as etapas em Criar um cluster e um pool de nós e passe os sinalizadores --proxy-resource-group-id
e --proxy-secret-id
.
gcloud container azure clusters create CLUSTER_NAME \
--proxy-resource-group-id=PROXY_RESOURCE_GROUP_ID \
--proxy-secret-id=PROXY_SECRET_ID
...
Substitua o seguinte:
-
CLUSTER_NAME
: nome do seu cluster -
PROXY_RESOURCE_GROUP_ID
: o grupo de recursos que hospeda seu cluster -
PROXY_SECRET_ID
: o ID do segredo que contém sua configuração de proxy — por exemplo,https:// VAULT_NAME .vault.azure.net/secrets/ SECRET_NAME / SECRET_VERSION
O que vem a seguir
- Leia informações adicionais sobre como criar um cluster .