このドキュメントでは、限定公開コンテナ イメージ リポジトリのイメージを使用するように Apigee ハイブリッドを構成する方法について説明します。
概要
すべての Apigee ハイブリッド ランタイム イメージは Google Cloud Container Registry(GCR)でホストされます。なんらかの理由で限定公開イメージ コンテナ リポジトリを使用したい場合は、GCR からイメージをダウンロードし、限定公開リポジトリに push して、overrides.yaml
ファイルのデフォルトのイメージ ロケーションをオーバーライドできます。
構成手順
Apigee ハイブリッド イメージに限定公開イメージ コンテナ リポジトリを使用する手順は次のとおりです。これらの手順を実行して、限定公開リポジトリ内のイメージを正常に使用するには、Apigee ハイブリッドのインストール手順に精通している必要があります。典型的なシナリオでは、新しいハイブリッド インストールの一部として限定公開リポジトリを構成します。
- Apigee ハイブリッド イメージを GCR から限定公開リポジトリに push します。この手順を実施するには、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
の Namespace に必要なイメージを pull します。次に例を示します。docker pull gcr.io/apigee-release/hybrid/apigee-installer:1.11.2
次のリストは、各 Namespace に必要なイメージを示しています。
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
- イメージを pull してタグ付けしたら、限定公開リポジトリに push します。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 Secret を作成します。これらの名前空間がクラスタに存在しない場合は、この手順を実行する前に作成する必要があります。
Secret の作成手順については、コマンドラインで認証情報を指定して Secret を作成するをご覧ください。たとえば、
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
名前空間 に 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)"
- Secret を
overrides.yaml
ファイルに追加します。オーバーライド ファイルの作成については、ハイブリッドのインストール手順をご覧ください。詳細については、クラスタの構成をご覧ください。imagePullSecrets: - name: SECRET_NAME
- 限定公開リポジトリに保存されているイメージの 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
をインストールし、互換性を確保することが重要です。