Configurer la connectivité de l'autorité de certification via un proxy
Ce guide explique comment configurer la connectivité de l'autorité de certification via un proxy lorsque la connectivité directe des charges de travail injectées via le side-car est non disponible (par exemple, en raison de pare-feu ou d'autres restrictions). Cette configuration ne s'applique qu'aux installations Cloud Service Mesh qui utilisent Certificate Authority Service.
Dans une installation classique de Cloud Service Mesh dans un cluster, vous déployez des side-cars
pods d'application où une connectivité directe aux services d'autorité de certification (tels que
meshca.googleapis.com
et privateca.googleapis.com
) est disponible. Dans
dans les cas où aucune connexion directe n'est disponible, vous devez
HTTPS explicite basé sur CONNECT
.
Prérequis
Avant de configurer la connectivité CA via un proxy, assurez-vous d'avoir:
- Connectivité réseau établie à partir de tous les pods injectés par sidecar au proxy HTTPS.
- Accès à tous les services Google Cloud accordé au proxy HTTPS déployé.
Configurer une ressource personnalisée ProxyConfig
Configurez un Ressource personnalisée Istio ProxyConfig (CR) à injecter dans le proxy side-car pour pointer vers le proxy HTTPS. Exemple :
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>
où :
CA_PLUGIN_PROXY_URL
est la configuration utilisée par les sidecars pour établir un échange de clésCONNECT
avec le proxy, qui transfère ensuite tout le trafic destiné à la CA vers le point de terminaison approprié.proxy-service
est déployé dans l'espace de nomsproxy-ns
et écoute les poignées de mainCONNECT
sur le portproxy-port
. Le format de cette variable d'environnement est semblable à celui de la variable d'environnementHTTPS_PROXY
standard.
Une fois le plan de contrôle de Cloud Service Mesh installé, appliquez la CR
ProxyConfig
appropriée (configurée à l'étape 1) sur le cluster avant de redémarrer les charges de travail dans les espaces de noms libellés Cloud Service Mesh pour vous assurer que la configuration est correctement injectée dans les sidecars. Cette configuration pour que les side-cars obtiennent des certificats de charge de travail signés de l'autorité de certification, ce qui garantit le démarrage du pod avec injection side-car.