使用私人映像檔存放區

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

總覽

所有 Apigee Hybrid 執行階段映像檔都託管在 Google Cloud Container Registry (GCR)。如果基於任何原因,您想使用私人映像檔容器存放區,可以從 GCR 下載映像檔,然後推送至私人存放區,並在 overrides.yaml 檔案中覆寫預設映像檔位置。

設定步驟

請按照下列步驟,為 Apigee Hybrid 映像檔使用私人映像檔容器存放區。如要執行這些步驟,並在私人存放區中順利使用映像檔,您必須熟悉 Apigee Hybrid 安裝程序。在一般情況下,您會規劃在全新混合式安裝作業中設定私人存放區。

  1. 將 Apigee Hybrid 映像檔從 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 Secret。

    如果叢集中沒有這些命名空間,您必須先建立命名空間,才能執行這個步驟。

    如需建立 Secret 的步驟,請參閱透過指令列提供憑證來建立 Secret。 舉例來說,如要在 apigee-system 命名空間中建立密鑰:

    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 命名空間中建立 Secret:

    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 hybrid 安裝步驟

從私人存放區安裝 cert-manager

如要從私有存放區安裝 cert-manager,請參閱「使用 Helm 安裝」。 請務必安裝 cert-manager,版本須與 Apigee Hybrid 安裝說明中指定的版本相同,確保相容性。