透過 Proxy 設定憑證授權單位連線
本指南說明如何在無法透過側載注入的工作負載建立直接連線 (例如因防火牆或其他限制性功能而無法連線) 時,透過 Proxy 設定憑證授權單位 (CA) 連線。這項設定僅適用於使用憑證授權單位服務的 Cloud Service Mesh 安裝作業。
在典型的叢集內 Cloud Service Mesh 安裝作業中,您會在應用程式 Pod 中部署 sidecar,以便直接連線至 CA 服務 (例如 meshca.googleapis.com 和 privateca.googleapis.com)。在無法使用直接連線的情況下,您必須設定明確的 CONNECT 型 HTTPS Proxy。
事前準備
透過 Proxy 設定 CA 連線之前,請確認您已:
- 建立從所有補充 Pod 到 HTTPS Proxy 的網路連線。
- 已授予已部署的 HTTPS Proxy 存取所有 Google Cloud 服務的權限。
設定 ProxyConfig 自訂資源
- 設定 Istio ProxyConfig 自訂資源 (CR),以便將其插入 sidecar proxy,並將其指向 HTTPS proxy。例如: - 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>- 其中: - CA_PLUGIN_PROXY_URL是 sidecar 使用的設定,可與 Proxy 建立- CONNECT握手,然後將所有 CA 目的地流量轉送至相關端點。
- proxy-service會部署在- proxy-ns命名空間中,並監聽- proxy-port通訊埠上的- CONNECT握手。這個環境變數的格式類似標準- HTTPS_PROXY環境變數。
 
- 安裝 Cloud Service Mesh 控制層後,請在叢集上套用適當的 - ProxyConfigCR (在步驟 1 中設定),然後在 Cloud Service Mesh 標記命名空間中重新啟動工作負載,以確保設定正確插入 sidecar。這個設定是 sidecar 取得 CA 簽署的工作負載憑證所需的,可確保 sidecar 注入的 Pod 能啟動。