非公開イメージ リポジトリを使用する

このドキュメントでは、限定公開コンテナ イメージ リポジトリのイメージを使用するように Apigee ハイブリッドを構成する方法について説明します。

概要

すべての Apigee ハイブリッド ランタイム イメージは Google Cloud Container Registry(GCR)でホストされます。なんらかの理由で限定公開イメージ コンテナ リポジトリを使用したい場合は、GCR からイメージをダウンロードし、限定公開リポジトリに push して、overrides.yaml ファイルのデフォルトのイメージ ロケーションをオーバーライドできます。

構成手順

Apigee ハイブリッド イメージに限定公開イメージ コンテナ リポジトリを使用する手順は次のとおりです。これらの手順を実行して、限定公開リポジトリ内のイメージを正常に使用するには、Apigee ハイブリッドのインストール手順に精通している必要があります。典型的なシナリオでは、新しいハイブリッド インストールの一部として限定公開リポジトリを構成します。

  1. Apigee ハイブリッド イメージを GCR から限定公開リポジトリに push します。この手順を実施するには、apigee-push-pull ユーティリティを使用することをおすすめします。

    この手順を手動で行う場合は、Docker をインストールして、次のように docker pull コマンドを使用する必要があります。それぞれのイメージ名に正しいタグを設定してください。たとえば、次のように apigee-synchronizer のタグは 1.8.8 です。

    次の図は、apigee-systemapigee の Namespace のイメージです。

    Namespace: apigee-system

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

    Namespace: apigee

    docker pull gcr.io/apigee-release/hybrid/apigee-cassandra-backup-utility:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-connect-agent:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-diagnostics-collector:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-envoy:v1.21.0
    docker pull gcr.io/apigee-release/hybrid/apigee-fluent-bit:1.9.9
    docker pull gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra-client:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-hybrid-cassandra:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-mart-server:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-mint-task-scheduler:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-prom-prometheus:v2.33.5
    docker pull gcr.io/apigee-release/hybrid/apigee-prometheus-adapter:v0.9.1
    docker pull gcr.io/apigee-release/hybrid/apigee-redis:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-runtime:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-stackdriver-logging-agent:1.8.9
    docker pull gcr.io/apigee-release/hybrid/apigee-stackdriver-prometheus-sidecar:0.9.0
    docker pull gcr.io/apigee-release/hybrid/apigee-synchronizer:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-udca:1.8.8
    docker pull gcr.io/apigee-release/hybrid/apigee-watcher:1.8.8
    

    イメージを pull してタグを付けたら、それらを限定公開リポジトリに push する必要があります。docker push をご覧ください。

  2. apigeeapigee-system の Namespace で Kubernetes Secret を作成します。

    これらの Namespace がクラスタに存在しない場合は、この手順を実行する前に作成する必要があります。

    Secret の作成手順については、コマンドラインで認証情報を指定して Secret を作成するをご覧ください。たとえば、apigee-system Namespace に 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 Namespace に 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. Secret を overrides.yaml ファイルに追加します。オーバーライド ファイルの作成については、ハイブリッドのインストール手順をご覧ください。詳細については、クラスタの構成をご覧ください。
    imagePullSecrets:
      - name: SECRET_NAME
  4. 限定公開リポジトリに保存されているイメージの URL を使って、overrides.yaml ファイルを更新します。リポジトリに保存されている各コンポーネントには、image:url 要素があります。この要素を使用して、各コンポーネント イメージの 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 ファイル内の最上位のハイブリッド コンポーネントをそれぞれ、限定公開リポジトリ イメージの URL で更新します。ハイブリッド インストールでは、$APIGEECTL_HOME/examples/private-overrides.yaml ディレクトリに完全なサンプルのオーバーライド ファイルが用意されています。

限定公開イメージを使用して新しいハイブリッド インストールを完了することも、既存のインストールを更新することもできます。詳細については、Apigee ハイブリッドのインストール手順をご覧ください。

非公開リポジトリからの cert-manager のインストール

非公開リポジトリから cert-manager をインストールするには、Helm によるインストールをご覧ください。Apigee ハイブリッド インストールの手順で指定されているのと同じバージョンの cert-manager をインストールし、互換性を確保することが重要です。