Configure a conetividade da autoridade de certificação através de um proxy
Este guia explica como configurar a conetividade da autoridade de certificação (AC) através de um proxy quando a conetividade direta dos workloads injetados no sidecar não está disponível (por exemplo, devido a firewalls ou outras funcionalidades restritivas). Esta configuração só é aplicável a instalações da malha de serviços na nuvem que usam o serviço de autoridade de certificação.
Numa instalação típica do Cloud Service Mesh no cluster, implementa sidecars em pods de aplicações onde a conetividade direta aos serviços de CA (como meshca.googleapis.com
e privateca.googleapis.com
) está disponível. Em cenários em que não está disponível uma ligação direta, tem de configurar um proxy HTTPS explícito baseado em CONNECT
.
Pré-requisitos
Antes de configurar a conetividade da CA através de um proxy, certifique-se de que tem:
- Conectividade de rede estabelecida de todos os pods injetados do sidecar para o proxy HTTPS.
- Acesso concedido ao proxy HTTPS implementado a todos os serviços Google Cloud .
Configure um recurso personalizado ProxyConfig
Configure um recurso personalizado (CR) ProxyConfig do Istio para injetar no proxy sidecar de modo a apontar para o proxy HTTPS. Por exemplo:
apiVersion: networking.istio.io/v1beta1 kind: ProxyConfig metadata: labels: istio.io/rev: <istio-rev> # To target proxies mapped to a specific control plane if needed. name: test-proxy-inject namespace: istio-system # To ensure side-cars injected into all namespaces process this CR spec: environmentVariables: CA_PLUGIN_PROXY_URL: http://<proxy-service>.<proxy-ns>:<proxy-port>
where:
CA_PLUGIN_PROXY_URL
é a configuração consumida pelos sidecars para estabelecer uma sincronizaçãoCONNECT
com o proxy, que encaminha todo o tráfego destinado à CA para o ponto final relevante.proxy-service
está implementado no espaço de nomesproxy-ns
e a ouvir negociaçõesCONNECT
na portaproxy-port
. O formato desta variável de ambiente é semelhante à variável de ambiente padrãoHTTPS_PROXY
.
Depois de instalar o plano de controlo do Cloud Service Mesh, aplique o CR
ProxyConfig
adequado (configurado no passo 1) no cluster antes de reiniciar as cargas de trabalho nos espaços de nomes etiquetados do Cloud Service Mesh para garantir que a configuração é injetada corretamente nos sidecars. Esta configuração é necessária para que os sidecars recebam certificados de carga de trabalho assinados da AC, o que garante que o pod injetado do sidecar pode ser iniciado.