アプリケーションのデプロイ
Argo CDをクラスターに正常に設定したので、アプリケーションをデプロイしましょう。GitOpsベースの配信アプローチと従来のデプロイ方法の違いを示すために、サンプルアプリケーションのUIコンポーネントをkubectl apply -kアプローチからArgo CD管理のデプロイに移行します。
Argo CDアプリケーションは、環境内のデプロイされたアプリケーションインスタンスを表すCustom Resource Definition(CRD)です。アプリケーション名、Gitリポジトリの場所、Kubernetesマニフェストへのパスなどの重要な情報を定義します。アプリケーションリソースはまた、望ましい状態、ターゲットリビジョン、同期ポリシー、およびヘルスチェックポリシーも指定します。
まず、既存のサンプルアプリケーションをクラスターから削除しましょう:
namespace "carts" deleted
namespace "catalog" deleted
namespace "checkout" deleted
namespace "orders" deleted
namespace "other" deleted
namespace "ui" deleted
次に、UIコンポーネント用の公開チャートをHelm依存関係として使用する単純なHelmチャートでGitリポジトリを設定します:
apiVersion: v2
name: retail-store-sample-chart
description: A Helm chart for the AWS retail store ui component
type: application
version: 0.0.1
dependencies:
- name: retail-store-sample-ui-chart
alias: ui
version: 1.2.1
repository: oci://public.ecr.aws/aws-containers
ラッパーHelmチャートの名前
このチャートがアプリケーションをデプロイすることを示す
チャートのバージョンを指定
ラッパーHelmチャートの依存関係として、AWSのパブリックOCIレジストリからリテールストアUIコン ポーネントの名前、エイリアス、バージョンを指定
このファイルをGitディレクトリにコピーしましょう:
Gitディレクトリは以下のような構造になってい るはずです:
`-- ui
`-- Chart.yaml
次に、構成をGitリポジトリにプッシュします:
次に、Gitリポジトリを使用するように構成されたArgo CDアプリケーションを作成します:
application 'ui' created
アプリケーションが作成されたことを確認できます:
NAME CLUSTER NAMESPACE PROJECT STATUS HEALTH SYNCPOLICY CONDITIONS
argocd/ui https://kubernetes.default.svc ui default OutOfSync Missing Manual <none>
このアプリケーションはArgo CD UIで確認できます:

あるいは、kubectlコマンドを使用してArgo CDオブジェクトを直接操作することもできます:
NAME SYNC STATUS HEALTH STATUS
apps OutOfSync Missing
Argo CD UIを開いてappsアプリケーションに移動すると、以下のように表示されます:

Argo CDでは、「out of sync」(同期していない)は、Gitリポジトリで定義された望ましい状態がKubernetesクラスター内の実際の状態と一致していないことを示します。Argo CDは自動同期が可能ですが、今は手動でこのプロセスをトリガーします:
しばらくすると、アプリケーションはSynced状態に到達し、すべてのリソースがデプロイされます。UIは次のようになります:

これにより、Argo CDがHelmチャートを正常にインストールし、クラスターと同期していることが確認されました。
これでUIコンポーネントをArgo CDを使用してデプロイするように正常に移行しました。今後Gitリポジトリにプッシュされた変更は、自動的にEKSクラスターに調整されます。
UIサービスに関連するすべてのリソースがデプロイされたことを確認するために、次のコマンドを実行します:
NAME READY UP-TO-DATE AVAILABLE AGE
ui 1/1 1 1 61s
NAME READY STATUS RESTARTS AGE
ui-6d5bb7b95-rjfxd 1/1 Running 0 62s