使用私人映像檔存放區

本文說明如何設定 Apigee hybrid,以便使用私人容器映像檔存放區的映像檔。

總覽

所有 Apigee 混合式執行階段映像檔都會託管在 Google Cloud Container Registry (GCR) 中。無論您出於何種原因想要採用私人映像檔容器存放區,都可以從 GCR 下載映像檔、將其推送至私人存放區,然後覆寫 overrides.yaml 檔案中的預設映像檔位置。

設定步驟

請按照下列步驟,為 Apigee 混合型映像檔使用私人映像檔容器存放區。如要執行這些步驟並在私人存放區中成功使用圖片,您必須熟悉 Apigee 混合式安裝程序。在一般情況下,您應將私人存放區納入新安裝混合式安裝作業的一部分。

  1. 將 Apigee 混合式映像檔從 GCR 推送至私人存放區。建議您使用 apigee-push-pull 公用程式完成這個步驟。

    如果您想手動執行這個步驟,請先安裝 Docker,然後使用 docker pull 指令,如下所示。請務必在每個圖片名稱後方加上正確的標記。例如,apigee-synchronizer 的標記為 1.9.4,如下所示。

    以下是 apigee-systemapigee 命名空間的圖片:

    命名空間:apigee-system

    docker pull gcr.io/apigee-release/hybrid/apigee-installer:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-kube-rbac-proxy:v0.14.0
    docker pull gcr.io/apigee-release/hybrid/apigee-operators:1.9.4

    命名空間:apigee

    docker pull gcr.io/apigee-release/hybrid/apigee-cassandra-backup-utility:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-connect-agent:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-diagnostics-collector:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-envoy:v1.25.1
    docker pull gcr.io/apigee-release/hybrid/apigee-fluent-bit:2.1.3
    docker pull gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra-client:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-mart-server:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-mint-task-scheduler:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-prom-prometheus:v2.39.1
    docker pull gcr.io/apigee-release/hybrid/apigee-prometheus-adapter:v0.10.0
    docker pull gcr.io/apigee-release/hybrid/apigee-redis:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-runtime:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-stackdriver-logging-agent:1.9.12-2
    docker pull gcr.io/apigee-release/hybrid/apigee-stackdriver-prometheus-sidecar:0.9.0
    docker pull gcr.io/apigee-release/hybrid/apigee-synchronizer:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-udca:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-watcher:1.9.4
    docker pull gcr.io/apigee-release/hybrid/apigee-asm-ingress:1.17.2-asm.8-distroless
    docker pull gcr.io/apigee-release/hybrid/apigee-asm-istiod:1.17.2-asm.8-distroless

    擷取及標記圖片後,您必須將圖片推送至私人存放區。請參閱「docker push」一文。

  2. apigeeapigee-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)"
  3. 將密鑰新增至 overrides.yaml 檔案。混合安裝步驟說明瞭如何建立覆寫檔案。詳情請參閱「設定叢集」。
    imagePullSecrets:
      - name: SECRET_NAME
  4. 請更新 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 版本,以確保相容性。