Verbindung der Zertifizierungsstelle über einen Proxy konfigurieren
Auf dieser Seite wird erläutert, wie die Verbindung der Zertifizierungsstelle (Certificate Authority, CA) über einen Proxy konfiguriert wird, wenn keine direkte Verbindung von den Arbeitslasten mit Sidecar-Datei verfügbar ist (z. B. aufgrund von Firewalls oder anderen restriktiven Funktionen). Diese Konfiguration gilt nur für Anthos Service Mesh-Installationen, die den Certificate Authority Service verwenden.
In einer typischen clusterinternen Anthos Service Mesh-Installation stellen Sie Sidecars in Anwendungs-Pods bereit, bei denen eine direkte Verbindung zu CA-Diensten wie meshca.googleapis.com
und privateca.googleapis.com
verfügbar ist. 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 in die Sidecar-Datei eingefügten Pods zum HTTPS-Proxy hergestellt.
- Dem bereitgestellten HTTPS-Proxy wurde Zugriff auf alle Google Cloud-Dienste gewährt.
Benutzerdefinierte ProxyConfig-Ressource konfigurieren
Konfigurieren Sie eine benutzerdefinierte Istio-ProxyConfig-Ressource, die in den Sidecar-Proxy eingefügt wird, um auf den HTTPS-Proxy zu verweisen. 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 den Sidecars genutzt wird, um einenCONNECT
-Handshake mit dem Proxy einzurichten, der dann den gesamten von der Zertifizierungsstelle festgelegten Traffic an den entsprechenden Endpunkt weiterleitet.proxy-service
wird im Namespaceproxy-ns
bereitgestellt und überwacht den Portproxy-port
aufCONNECT
-Handshakes. Das Format dieser Umgebungsvariablen ähnelt der standardmäßigenHTTPS_PROXY
-Umgebungsvariable.
Nachdem die Anthos Service Mesh-Steuerungsebene installiert wurde, wenden Sie die entsprechende
ProxyConfig
-Antwortvorlage (in Schritt 1 konfiguriert) auf den Cluster an, bevor Sie Arbeitslasten in Namespaces mit Anthos Service Mesh-Label neu starten. So sorgen Sie dafür, dass die Konfiguration korrekt in die Sidecars eingefügt wird. Diese Konfiguration ist erforderlich, damit Sidecars signierte Arbeitslastzertifikate von der Zertifizierungsstelle abrufen können. Dadurch wird sichergestellt, dass der Pod mit Sidecar-Datei gestartet werden kann.