4.4.2.4. Argo CD の自己修復動作の確認

Argo CD は、デプロイされたアプリケーションの状態を常に監視し、Git の指定されたマニフェストとクラスターのライブの変更の違いを検出し、それらを自動的に修正します。この動作は自己修復として言及されます。

Argo CD で自己修復動作をテストし、確認することができます。

前提条件

  • サンプル app-spring-petclinic アプリケーションがデプロイされ、設定されている。

手順

  1. Argo CD ダッシュボードで、アプリケーションに Synced ステータスがあることを確認します。
  2. Argo CD ダッシュボードの app-spring-petclinic タイルをクリックし、クラスターにデプロイされたアプリケーションのリソースを表示します。
  3. OpenShift Web コンソールで、Developer パースペクティブに移動します
  4. Spring PetClinic デプロイメントを変更し、Git リポジトリーの app/ ディレクトリーに変更をコミットします。Argo CD は変更をクラスターに自動的にデプロイします。
  5. OpenShift Web コンソールでアプリケーションを監視している間に、クラスターでデプロイメントを変更し、これを 2 つの Pod にスケールアップして自己修復動作をテストします。

    1. 以下のコマンドを実行してデプロイメントを変更します。

      $ oc scale deployment spring-petclinic --replicas 2  -n spring-petclinic
    2. OpenShift Web コンソールでは、デプロイメントは 2 つの Pod にスケールアップし、すぐに再び 1 つの Pod にスケールダウンすることに注意してください。Argo CD は Git リポジトリーとの差異を検知し、OpenShift クラスターでアプリケーションを自動的に修復しました。
  6. Argo CD ダッシュボードで、app-spring-petclinic タイル → APP DETAILSEVENTS をクリックします。EVENTS タブには、以下のイベントが表示されます。Argo CD がクラスターのデプロイメントリソースが同期されていないことを検知し、Git リポジトリーを再同期してこれを修正します。