Configurar la conectividad de la autoridad certificadora a través de un proxy
En esta guía, se explica cómo configurar la conectividad de la autoridad certificadora (AC) a través de un proxy cuando la conectividad directa desde las cargas de trabajo insertadas de sidecar no está disponible (por ejemplo, debido a firewalls o a otras funciones restrictivas). Esta configuración solo se aplica a las instalaciones de Cloud Service Mesh que usan Certificate Authority Service.
En una instalación típica de Cloud Service Mesh en el clúster, debes implementar archivos adicionales en pods de aplicación en los que está disponible la conectividad directa a los servicios de CA (como meshca.googleapis.com
y privateca.googleapis.com
). En los casos en los que no haya una conexión directa disponible, debes configurar un proxy HTTPS explícito basado en CONNECT
.
Requisitos previos
Antes de configurar la conectividad de la AC a través de un proxy, asegúrate de haber hecho lo siguiente:
- Se estableció la conectividad de red de todos los Pods insertados de sidecar al proxy HTTPS.
- Se otorga acceso para el proxy HTTPS implementado a todos los servicios de Google Cloud.
Configura un recurso personalizado de ProxyConfig
Configurar un recurso personalizado (CR) de ProxyConfig de Istio para insertarlo en el proxy de sidecar y que apunte al proxy HTTPS Por ejemplo:
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>
Donde:
CA_PLUGIN_PROXY_URL
es la configuración que consumen los sidecars para establecer un protocolo de enlaceCONNECT
con el proxy que, luego, reenvía todo el tráfico destinado a la AC al extremo relevante.proxy-service
se implementa en el espacio de nombresproxy-ns
y detecta los protocolos de enlaceCONNECT
en el puertoproxy-port
. El formato de esta variable de entorno es similar al de la variable de entornoHTTPS_PROXY
estándar.
Una vez que se haya instalado el plano de control de Cloud Service Mesh, aplica la CR correspondiente de
ProxyConfig
(configurada en el paso 1) en el clúster antes de reiniciar las cargas de trabajo en los espacios de nombres etiquetados con Cloud Service Mesh para asegurarte de que la configuración se inserte de forma correcta en los sidecars. Esta configuración es necesaria para que los sidecars obtengan certificados de carga de trabajo firmados de la AC, lo que garantiza que se pueda iniciar el pod de sidecar insertado.