自動DevOpsのための複数のKubernetesクラスタ
Auto DevOpsを使用する場合、異なるKubernetesクラスタに異なる環境をデプロイできます。
Auto DevOpsで使用されるデプロイジョブテンプレートでは、3つの環境名が定義されています:
-
review/
(で始まるすべての環境review/
)。 staging
production
これらの環境は自動デプロイを使用するジョブに関連付けられるため、異なるデプロイメントドメインを持つ必要があります。3つの環境それぞれに個別の変数KUBE_CONTEXT
とKUBE_INGRESS_BASE_DOMAIN
を定義する必要があります。
異なるクラスターへのデプロイ
環境を異なるKubernetesクラスタにデプロイするには:
- Kubernetesクラスタを作成します。
- クラスターをプロジェクトに関連付けます:
- NGINX Ingress Controllerを各クラスターにインストールします。次のステップのためにIPアドレスとKubernetesネームスペースを保存します。
- Auto DevOps CI/CD パイプライン変数の設定
非推奨の証明書ベースのクラスターの場合:
- プロジェクトに移動し、左サイドバーからOperate > Kubernetes clustersを選択します。
- 各クラスターの環境スコープを設定します。
- 各クラスターについて、Ingress IPアドレスに基づいてドメインを追加します。
アクティブなKubernetesクラスタをチェックする際、クラスタ環境スコープは尊重されません。Auto DevOpsでマルチクラスターセットアップを動作させるには、クラスター環境スコープを
*
に設定したフォールバッククラスターを作成する必要があります。 すでに追加したクラスターのいずれかをフォールバッククラスターとして設定できます。設定例
クラスター名 | クラスター環境スコープ |
KUBE_INGRESS_BASE_DOMAIN 値 |
KUBE CONTEXT 値 | 変数環境スコープ | 備考 |
---|---|---|---|---|---|
レビュー | review/* | review.example.com | path/to/project:review-agent | review/* | すべてのレビューアプリを実行するレビュークラスター。 |
ステージ | staging | staging.example.com | path/to/project:staging-agent | staging | オプション。ステージング環境のデプロイを実行するステージング・クラスター。最初に有効にする必要があります。 |
プロダクション | production | example.com | path/to/project:production-agent | production | 本番環境のデプロイを実行する本番クラスター。インクリメンタルロールアウトを使用できます。 |
設定のテスト
設定が完了したら、マージリクエストを作成して設定をテストします。review/*
環境スコープを持つ Kubernetes クラスターにレビューアプリとしてアプリケーションがデプロイされているか確認します。同様に、他の環境も確認してください。