Verbindung der Zertifizierungsstelle über einen Proxy konfigurieren
In diesem Leitfaden wird erläutert, wie Sie die Verbindung einer Zertifizierungsstelle konfigurieren über einen Proxy, wenn die direkte Verbindung von den in Sidecar eingefügten Arbeitslasten nicht verfügbar ist, z. B. aufgrund von Firewalls oder anderen restriktiven Funktionen. Diese Konfiguration gilt nur für Cloud Service Mesh-Installationen, die Certificate Authority Service
Bei einer typischen Cloud Service Mesh-Installation im Cluster stellen Sie Sidecars in
Anwendungs-Pods, die direkte Verbindungen zu CA-Diensten (z. B.
meshca.googleapis.com
und privateca.googleapis.com
) ist verfügbar. In Szenarien, in denen keine direkte Verbindung verfügbar ist, müssen Sie einen expliziten CONNECT
-basierten HTTPS-Proxy konfigurieren.
Vorbereitung
Bevor Sie die CA-Verbindung über einen Proxy konfigurieren, müssen folgende Voraussetzungen erfüllt sein:
- Es wurde eine Netzwerkverbindung von allen Pods, in die Sidecars eingeschleust wurden, zum HTTPS-Proxy hergestellt.
- Dem bereitgestellten HTTPS-Proxy wurde Zugriff auf alle Google Cloud-Dienste gewährt.
Benutzerdefinierte ProxyConfig-Ressource konfigurieren
Konfigurieren Sie ein Benutzerdefinierte Istio-Ressource ProxyConfig (CR) in den Sidecar-Proxy einzufügen, damit er auf den HTTPS-Proxy verweist. Beispiel:
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>
Dabei gilt:
CA_PLUGIN_PROXY_URL
ist die Konfiguration, die von Sidecars genutzt wird, um einenCONNECT
-Handshake mit dem Proxy, der dann alle an den relevanten Endpunkt zu leiten.proxy-service
ist im Namespaceproxy-ns
bereitgestellt und wartet aufCONNECT
-Handshakes am Portproxy-port
. Das Format dieser Umgebung Die Variable ähnelt der standardmäßigenHTTPS_PROXY
-Umgebungsvariable.
Nachdem die Cloud Service Mesh-Steuerungsebene installiert wurde, wenden Sie die entsprechende
ProxyConfig
-Konfigurationsdatei (in Schritt 1 konfiguriert) auf den Cluster an, bevor Sie die Arbeitslasten in Namespaces mit Cloud Service Mesh-Label neu starten, damit die Konfiguration korrekt in die Sidecars eingefügt wird. Diese Konfiguration ist sind erforderlich, damit Sidecars signierte Arbeitslastzertifikate von der Zertifizierungsstelle abrufen können, die sorgt dafür, dass der in die Sidecar-Datei eingefügte Pod gestartet werden kann.