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 (CA) a través de un proxy cuando no está disponible la conectividad directa desde las cargas de trabajo insertadas de sidecar (por ejemplo, debido a firewalls o a otras funciones restrictivas). Esta configuración solo se aplica a las instalaciones de Anthos Service Mesh que usan Certificate Authority Service.

En una instalación típica de Anthos Service Mesh en el clúster, se implementan los sidecars 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 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 CA a través de un proxy, asegúrate de hacer lo siguiente:

  • Se estableció una conectividad de red desde todos los Pods insertados de sidecar al proxy HTTPS.
  • Acceso otorgado para el proxy HTTPS implementado a todos los servicios de Google Cloud.

Configura un recurso personalizado ProxyConfig

  1. Configura un recurso personalizado (CR) de Istio ProxyConfig para insertarlo en el proxy de sidecar y apuntar 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 enlace CONNECT con el proxy que, luego, reenvía todo el tráfico destinado a la CA al extremo relevante.
    • proxy-service se implementa en el espacio de nombres proxy-ns y escucha los protocolos de enlace CONNECT en el puerto proxy-port. El formato de esta variable de entorno es similar al de la variable de entorno estándar HTTPS_PROXY.
  2. Una vez que se haya instalado el plano de control de Anthos Service Mesh, aplica la CR ProxyConfig adecuada (configurada en el paso 1) en el clúster antes de reiniciar las cargas de trabajo en los espacios de nombres etiquetados de Anthos Service Mesh para garantizar que la configuración se inserte de forma correcta en los archivos adicionales. Esta configuración es necesaria para que los sidecars obtengan certificados de carga de trabajo firmados de la CA, lo que garantiza que el Pod insertado del sidecar pueda iniciarse.