Distributed Cloud Container Platform for Kubernetes (ACK One) では、Argo CD ApplicationSetsを使用してマルチクラスターアプリケーションオーケストレーションを実装できます。 ApplicationSetを使用すると、1つのオーケストレーションテンプレートを使用して1つ以上のアプリケーションを作成し、複数のクラスターにデプロイできます。 このトピックでは、ACK Oneコンソールを使用してマルチクラスタアプリケーションを作成する方法について説明します。
前提条件
フリート管理機能が有効になっています。 詳細については、「マルチクラスター管理の有効化」をご参照ください。
複数のクラスターがフリートインスタンスに関連付けられています。 詳細については、「クラスターとフリートインスタンスの関連付け」をご参照ください。
GitOpsシステムにログオンしています。 詳細については、「GitOpsシステムへのログイン」をご参照ください。
手順
ACK Oneコンソールにログインします。 左側のナビゲーションウィンドウで、 を選択します。
[マルチクラスターアプリケーション] ページの左上隅で、フリートインスタンスの名前の横にある
ボタンをクリックし、ドロップダウンリストから対象のフリートインスタンスを選択します。
を選択し、[マルチクラスターアプリケーションの作成-GitOps] ページに移動します。
[クイック作成] タブで、次の設定情報に基づいてコンテンツを入力します。
パラメーター
説明
例
マルチクラスタアプリケーションセット名
アプリケーションの名前。
appset-echo-server-demo
プロジェクト
アプリケーションの対応するプロジェクト。
default
ソースコードURL
アプリケーションのソースコードURL。
Gitブランチ
アプリケーションのGitブランチ。The Git branch of the application.
メイン
パス
Gitリポジトリでアプリケーションによって定義されたYAMLファイルの相対パス。
manifests/helm/echo-server
宛先クラスター
アプリケーションのデプロイ先クラスター。 クラスターが指定されていない場合、フリートインスタンスとArgo CDが存在するクラスターを除く、Argo CD内のすべてのクラスターが宛先クラスターとして扱われます。
名前空間
アプリケーションがデプロイされているクラスターの名前空間。
demo
アプリケーション名
アプリケーション名。 デフォルトでは、次のパラメータがサポートされています。
{{.name}}
{{.metadata.annotations.cluster_name}}
{{.metadata.annotations.cluster_id}}
{{.metadata.annotations.cluster_id}}-echoserver
詳細設定
同期ポリシー (アプリケーションセット)
削除時のリソースの保存: このオプションを選択すると、このアプリケーションセットが削除されたときにアプリケーションの子リソースが保持されます。
同期ポリシー (アプリケーション)
Manual: 手動同期。
Automatic: 自動同期。
PRUNE RESOURCES: このオプションを選択すると、対応する構成がリソースのGitリポジトリに存在しない場合、リソースは自動的に削除されます。
SELF HEAL: このオプションを選択すると、実際の状態はGitリポジトリの目的の状態と自動的に同期されます。 これにより、変更やその他の理由によるステータスの不一致が防止されます。
次の表に、同期が必要なパラメーターを示します。
パラメーター
説明
スキップスキーマの検証
リソースのフォーマット検証を実行するかどうかを指定します。 このパラメーターは、
"kubectl apply -- validate=true | false"
に相当します。 デフォルト値:trueAUTO-CREATE NAMESPACE
欠落した名前空間を自動的に作成します。
PRUNE LAST
リソースがデプロイされ、正常な状態になった後、リソースを剪定します。
同期からのみ適用
OutOfSync状態のリソースのみを同期して、同期プロセスを高速化します。
敬意無視の違い
所望の状態のフィールドは、同期フェーズ中に無視される。
サーバー側適用
Kubernetesサーバー側の適用を有効にします。 この機能は、次のシナリオで有効にできます。
1. リソースが大きすぎて、許容される注釈サイズが上限を超えています。
2. Argo CDで完全に管理されていないクラスター上の既存のリソースにパッチを適用する必要があります。
3. ユーザーのフィールド管理を追跡するには、より宣言的なアプローチを使用します。
交換
デフォルトのapplyメソッドの代わりにreplaceメソッドを使用してリソースを変更します。 replaceメソッドはリソースを削除し、リソースを再作成します。 applyメソッドは、パッチを使用してリソースを更新します。
RETRY
同期失敗後のリトライ回数、リトライ間隔、およびリトライ間隔の増分を指定できます。
同期オプションの詳細については、「Argo CD同期オプション」をご参照ください。
[クイック作成] メソッドが要件を満たせない場合は、[YAMLから作成] タブを選択し、次の例に基づいて関連するコンテンツを入力することもできます。
説明Quick CreateはCreate from YAMLにリンクされています。 クイック作成の変更は、[Create from YAML] のYAMLコンテンツにマップされます。
設定が完了したら、[OK] をクリックし、[マルチクラスターアプリケーション] ページで対応する [ステータス] を表示できます。
[アプリケーション] 列にある対応する番号をクリックして、マルチクラスターアプリケーションによって作成されたアプリケーションの概要情報を表示します。 [アプリケーション名] 列のアプリケーション名をクリックして、Argo CD UIに移動します。