apigeectl
如果您使用 Helm 圖表來管理 Apigee hybrid,請參閱「使用私人映像檔存放區搭配 Helm 圖表」。本文說明如何設定 Apigee hybrid,以便使用私人容器映像檔存放區的映像檔。
總覽
所有 Apigee 混合式執行階段映像檔都會託管在
Google Cloud Container Registry (GCR) 中。無論您出於何種原因想要採用私人映像檔容器存放區,都可以從 GCR 下載映像檔、將其推送至私人存放區,然後覆寫 overrides.yaml
檔案中的預設映像檔位置。
設定步驟
請按照下列步驟,為 Apigee 混合型映像檔使用私人映像檔容器存放區。如要執行這些步驟並在私人存放區中成功使用圖片,您必須熟悉 Apigee 混合式安裝程序。在一般情況下,您應將私人存放區納入新安裝混合式安裝作業的一部分。
- 將 Apigee 混合式映像檔從 GCR 推送至私人存放區。建議您使用 apigee-push-pull 公用程式完成這個步驟。
如果您想手動執行這個步驟,請先安裝 Docker,然後使用
docker pull
指令,如下所示。請務必在每個圖片名稱後方加上正確的標記。例如,apigee-synchronizer
的標記為1.11.2
,如下所示。- 在
apigeectl/tools/
目錄中使用apigee-pull-push.sh
公用程式的--list
選項,取得目前專案中所有圖片的最新清單:apigee-pull-push.sh --list
- 使用
docker pull
指令,提取apigee-system
和apigee
命名空間所需的圖片。例如:docker pull gcr.io/apigee-release/hybrid/apigee-installer:1.11.2
以下清單列出各個命名空間所需的圖片:
apigee-system
命名空間apigee-installer
apigee-kube-rbac-proxy
apigee-operators
您的
apigee
命名空間apigee-asm-ingress
apigee-asm-istiod
apigee-cassandra-backup-utility
apigee-connect-agent
apigee-diagnostics-collector
apigee-diagnostics-runner
apigee-envoy
apigee-fluent-bit
apigee-hybrid-cassandra-client
apigee-hybrid-cassandra
apigee-mart-server
apigee-prom-prometheus
apigee-prometheus-adapter
apigee-redis
apigee-runtime
apigee-stackdriver-logging-agent
apigee-stackdriver-prometheus-sidecar
apigee-synchronizer
apigee-udca
apigee-watcher
- 擷取及標記圖片後,請將圖片推送至私人存放區。請參閱「docker push」一文。
輸出內容應如下所示:
apigee: gcr.io/apigee-release/hybrid/apigee-mart-server:1.11.2 gcr.io/apigee-release/hybrid/apigee-synchronizer:1.11.2 gcr.io/apigee-release/hybrid/apigee-runtime:1.11.2 gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra-client:1.11.2 gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra:1.11.2 gcr.io/apigee-release/hybrid/apigee-cassandra-backup-utility:1.11.2 gcr.io/apigee-release/hybrid/apigee-udca:1.11.2 gcr.io/apigee-release/hybrid/apigee-connect-agent:1.11.2 gcr.io/apigee-release/hybrid/apigee-watcher:1.11.2 gcr.io/apigee-release/hybrid/apigee-operators:1.11.2 gcr.io/apigee-release/hybrid/apigee-installer:1.11.2 gcr.io/apigee-release/hybrid/apigee-redis:1.11.2 gcr.io/apigee-release/hybrid/apigee-diagnostics-collector:1.11.2 gcr.io/apigee-release/hybrid/apigee-diagnostics-runner:1.11.2 gcr.io/apigee-release/hybrid/apigee-mint-task-scheduler:1.11.2 third party: gcr.io/apigee-release/hybrid/apigee-stackdriver-logging-agent:1.10.5 gcr.io/apigee-release/hybrid/apigee-prom-prometheus:v2.52.0 gcr.io/apigee-release/hybrid/apigee-stackdriver-prometheus-sidecar:0.9.0 gcr.io/apigee-release/hybrid/apigee-kube-rbac-proxy:v0.18.0 gcr.io/apigee-release/hybrid/apigee-envoy:v1.27.0 gcr.io/apigee-release/hybrid/apigee-prometheus-adapter:v0.12.0 gcr.io/apigee-release/hybrid/apigee-asm-ingress:1.18.7-asm.26-distroless gcr.io/apigee-release/hybrid/apigee-asm-istiod:1.18.7-asm.26-distroless gcr.io/apigee-release/hybrid/apigee-fluent-bit:3.0.3
- 在
- 在
apigee
和apigee-system
命名空間中建立 Kubernetes 密鑰。如果叢集中沒有這些命名空間,您必須先建立再執行這個步驟。
如要瞭解建立密鑰的步驟,請參閱「在指令列中提供憑證,建立密鑰」。舉例來說,如要在
apigee-system
命名空間中建立 Secret,請按照下列步驟操作:kubectl create secret docker-registry SECRET_NAME -n apigee-system \ --docker-server=YOUR_REGISTRY_SERVER \ --docker-username=YOUR_DOCKER_USERNAME \ --docker-email=YOUR_DOCKER_EMAIL \ --docker-password="YOUR_DOCKER_PASSWORD)"
如要在
apigee
命名空間中建立密鑰,請按照下列步驟操作:kubectl create secret docker-registry SECRET_NAME -n apigee \ --docker-server=YOUR_REGISTRY_SERVER \ --docker-username=YOUR_DOCKER_USERNAME \ --docker-email=YOUR_DOCKER_EMAIL \ --docker-password="YOUR_DOCKER_PASSWORD)"
- 將密鑰新增至
overrides.yaml
檔案。混合安裝步驟說明瞭如何建立覆寫檔案。詳情請參閱「設定叢集」。imagePullSecrets: - name: SECRET_NAME
- 請更新
overrides.yaml
檔案,加入私人存放區中儲存圖片的圖片網址。存放於存放區中的每個元件都有image:url
元素。使用這個元素指定每個元件圖片的網址。例如:mart: serviceAccountPath: /installdir/hybrid-files/service-accounts/hybrid-apigee-non-prod.json image: url: my-docker.pkg.dev/hybrid-1/registry-name/apigee-mart-server
請按照這個模式,使用私人存放區圖片網址更新
overrides.yaml
檔案中的每個頂層混合元件。$APIGEECTL_HOME/examples/private-overrides.yaml
目錄中的混合式安裝作業會提供完整的範例覆寫檔案。
您現在可以使用私人映像檔完成新的混合式安裝作業,或更新現有安裝作業。詳情請參閱 Apigee 混合式安裝步驟。
從私人存放區安裝 cert-manager
如要從私人存放區安裝 cert-manager
,請參閱「使用 Helm 安裝」一文。請務必安裝 Apigee Hybrid 安裝說明中指定的 cert-manager
版本,以確保相容性。