ステップ 2: Apigee Helm チャートをダウンロードする

このステップでは、Apigee ハイブリッドのインストールと管理に使用する Helm チャートをダウンロードする方法について説明します。Apigee ハイブリッド チャートは Google Artifact Registry でホストされます。

oci://us-docker.pkg.dev/apigee-release/apigee-hybrid-helm-charts

ディレクトリ構造を準備する

この手順は省略可能ですが、実施することをおすすめします。この手順では、Apigee Helm チャートをダウンロードするディレクトリの $APIGEE_HELM_CHARTS_HOME 環境変数を参照します。

  1. ハイブリッド インストールのベース ディレクトリを作成し、その中にチャート用のディレクトリを作成します。
    mkdir APIGEE_HYBRID_BASE
    mkdir APIGEE_HYBRID_BASE/APIGEE_HELM_CHARTS_HOME

    次に例を示します。

    mkdir apigee-hybrid/helm-charts
  2. 便宜上、Helm チャート ディレクトリの場所を環境変数に保存します。
    cd APIGEE_HYBRID_BASE/APIGEE_HELM_CHARTS_HOME
    export APIGEE_HELM_CHARTS_HOME=$PWD

Apigee Helm チャートを pull する

  1. $APIGEE_HELM_CHARTS_HOME ディレクトリで、pull コマンドを使用して、すべての Apigee ハイブリッド Helm チャートをローカル ストレージにコピーします。
    export CHART_REPO=oci://us-docker.pkg.dev/apigee-release/apigee-hybrid-helm-charts
    export CHART_VERSION=1.11.2
    helm pull $CHART_REPO/apigee-operator --version $CHART_VERSION --untar
    helm pull $CHART_REPO/apigee-datastore --version $CHART_VERSION --untar
    helm pull $CHART_REPO/apigee-env --version $CHART_VERSION --untar
    helm pull $CHART_REPO/apigee-ingress-manager --version $CHART_VERSION --untar
    helm pull $CHART_REPO/apigee-org --version $CHART_VERSION --untar
    helm pull $CHART_REPO/apigee-redis --version $CHART_VERSION --untar
    helm pull $CHART_REPO/apigee-telemetry --version $CHART_VERSION --untar
    helm pull $CHART_REPO/apigee-virtualhost --version $CHART_VERSION --untar
    
  2. 省略可: tree コマンドを使用して、チャートが目的のディレクトリ構造に展開されたことを確認します。出力は次のようになります。
    tree
    .
    ├── apigee-datastore
    │   ├── Chart.yaml
    │   ├── templates
    │   │   ├── backup-cert.yaml
    │   │   ├── backup-cronjob.yaml
    │   │   ├── backup-gsa-secret.yaml
    │   │   ├── backup-key.yaml
    │   │   ├── backup-sa.yaml
    │   │   ├── datastore-secret.yaml
    │   │   ├── datastore.yaml
    │   │   ├── _helpers.tpl
    │   │   ├── NOTES.txt
    │   │   ├── restore-cert.yaml
    │   │   ├── restore-gsa-secret.yaml
    │   │   ├── restore-job.yaml
    │   │   ├── restore-key.yaml
    │   │   └── restore-sa.yaml
    │   └── values.yaml
    ├── apigee-env
    │   ├── Chart.yaml
    │   ├── templates
    │   │   ├── encryption-keys-secret.yaml
    │   │   ├── environment.yaml
    │   │   ├── _helpers.tpl
    │   │   ├── NOTES.txt
    │   │   ├── runtime-gsa-secret.yaml
    │   │   ├── runtime-sa.yaml
    │   │   ├── synchronizer-gsa-secret.yaml
    │   │   ├── synchronizer-sa.yaml
    │   │   ├── udca-gsa-secret.yaml
    │   │   └── udca-sa.yaml
    │   └── values.yaml
    ├── apigee-ingress-manager
    │   ├── Chart.yaml
    │   ├── templates
    │   │   ├── apigee-ca-issuer.yaml
    │   │   ├── apigee-istiod-certificate.yaml
    │   │   ├── _helpers.tpl
    │   │   ├── ingress-service-account.yaml
    │   │   ├── istio-config.yaml
    │   │   ├── istiod-deployment-with-apigee-controller.yaml
    │   │   ├── istiod-envoyfilters.yaml
    │   │   ├── istiod-hpa.yaml
    │   │   ├── istiod-service-account.yaml
    │   │   └── istiod-svc.yaml
    │   └── values.yaml
    ├── apigee-operator
    │   ├── Chart.yaml
    │   ├── etc
    │   │   ├── crds
    │   │   │   ├── crd
    │   │   │   │   ├── bases
    │   │   │   │   │   ├── apigee.cloud.google.com_apigeedatastores.yaml
    │   │   │   │   │   ├── apigee.cloud.google.com_apigeedeployments.yaml
    │   │   │   │   │   ├── apigee.cloud.google.com_apigeeenvironments.yaml
    │   │   │   │   │   ├── apigee.cloud.google.com_apigeeissues.yaml
    │   │   │   │   │   ├── apigee.cloud.google.com_apigeeorganizations.yaml
    │   │   │   │   │   ├── apigee.cloud.google.com_apigeeredis.yaml
    │   │   │   │   │   ├── apigee.cloud.google.com_apigeerouteconfigs.yaml
    │   │   │   │   │   ├── apigee.cloud.google.com_apigeeroutes.yaml
    │   │   │   │   │   ├── apigee.cloud.google.com_apigeetelemetries.yaml
    │   │   │   │   │   └── apigee.cloud.google.com_cassandradatareplications.yaml
    │   │   │   │   ├── kustomization.yaml
    │   │   │   │   ├── kustomizeconfig.yaml
    │   │   │   │   └── patches
    │   │   │   │       ├── cainjection_in_apigeedatastores.yaml
    │   │   │   │       ├── cainjection_in_apigeedeployments.yaml
    │   │   │   │       ├── cainjection_in_apigeeenvironments.yaml
    │   │   │   │       ├── cainjection_in_apigeeissues.yaml
    │   │   │   │       ├── cainjection_in_apigeeorganizations.yaml
    │   │   │   │       ├── cainjection_in_apigeeroutes.yaml
    │   │   │   │       ├── cainjection_in_apigeetelemetries.yaml
    │   │   │   │       ├── k8s_list_map_keys.yaml
    │   │   │   │       ├── nested_metadata_validation_properties.yaml
    │   │   │   │       ├── webhook_in_apigeedatastores.yaml
    │   │   │   │       ├── webhook_in_apigeedeployments.yaml
    │   │   │   │       ├── webhook_in_apigeeenvironments.yaml
    │   │   │   │       ├── webhook_in_apigeeissues.yaml
    │   │   │   │       ├── webhook_in_apigeeorganizations.yaml
    │   │   │   │       ├── webhook_in_apigeeroutes.yaml
    │   │   │   │       └── webhook_in_apigeetelemetries.yaml
    │   │   │   └── default
    │   │   │       └── kustomization.yaml
    │   │   ├── examples
    │   │   │   └── helmfiles
    │   │   │       ├── helmfile.yaml
    │   │   │       └── README.md
    │   │   └── tools
    │   │       ├── apigee-pull-push.sh
    │   │       ├── common.sh
    │   │       ├── create-service-account
    │   │       └── dump_kubernetes.sh
    │   ├── templates
    │   │   ├── apigee-operators-roles.yaml
    │   │   ├── apigee-operators.yaml
    │   │   ├── apigee-resources.yaml
    │   │   ├── cassandra-backup-clusterrolebinding.yaml
    │   │   ├── cassandra-backup-clusterrole.yaml
    │   │   ├── cassandra-restore-clusterrolebinding.yaml
    │   │   ├── cassandra-restore-clusterrole.yaml
    │   │   ├── _helpers.tpl
    │   │   ├── ingress-role-binding.yaml
    │   │   ├── ingress-role.yaml
    │   │   ├── istiod-cluster-role-binding.yaml
    │   │   ├── istiod-cluster-role.yaml
    │   │   ├── istiod-role-binding.yaml
    │   │   └── istiod-role.yaml
    │   └── values.yaml
    ├── apigee-org
    │   ├── Chart.yaml
    │   ├── templates
    │   │   ├── ax-hash-salt-secret.yaml
    │   │   ├── connect-agent-gsa-secret.yaml
    │   │   ├── connect-agent-sa.yaml
    │   │   ├── data-encryption-secret.yaml
    │   │   ├── encryption-keys-secret.yaml
    │   │   ├── _helpers.tpl
    │   │   ├── mart-gsa-secret.yaml
    │   │   ├── mart-sa.yaml
    │   │   ├── NOTES.txt
    │   │   ├── organization.yaml
    │   │   ├── udca-gsa-secret.yaml
    │   │   ├── udca-sa.yaml
    │   │   ├── watcher-gsa-secret.yaml
    │   │   └── watcher-sa.yaml
    │   └── values.yaml
    ├── apigee-redis
    │   ├── Chart.yaml
    │   ├── templates
    │   │   ├── _helpers.tpl
    │   │   ├── redis-creds-secret.yaml
    │   │   └── redis.yaml
    │   └── values.yaml
    ├── apigee-telemetry
    │   ├── Chart.yaml
    │   ├── templates
    │   │   ├── apigee-logger-gsa-secret.yaml
    │   │   ├── apigee-logger-sa.yaml
    │   │   ├── apigee-metrics-gsa-secret.yaml
    │   │   ├── apigee-metrics-sa.yaml
    │   │   ├── apigee-telemetry.yaml
    │   │   ├── _helpers.tpl
    │   │   └── NOTES.txt
    │   └── values.yaml
    └── apigee-virtualhost
        ├── Chart.yaml
        ├── templates
        │   ├── apigee-route-config.yaml
        │   ├── ca-cert.yaml
        │   ├── cert.yaml
        │   └── _helpers.tpl
        └── values.yaml
    

Kubernetes クラスタで Apigee ハイブリッドを構成、デプロイ、管理するためのツールが整いました。次に、ほとんどのハイブリッド コンポーネントが動作する Kubernetes 名前空間を作成します。 1 2 (次)ステップ 3: apigee 名前空間を作成する 4 5 6 7 8 9 10 11 12