
kindでKubernetesクラスターを作成してArgo CDのGetting Startedをやってみる
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
「Argo CDをローカルで手軽に試してみたい」
今回はkindを使って、ローカルにkubernetesクラスターを作成して、Argo CDのGetting Startedをやってみます。
EKSで試してみたい場合は、以下の記事はがおすすめです。
やってみた
kindでKubernetesクラスターを作成する
kindはbrewでインストールできます。
$ brew install kind
kindでクラスターを作成します。
$ kind create cluster
しばらく待つと、クラスターが作成されたことを確認できます。
$ kind get clusters kind $ kubectl config get-contexts kind-kind $ kubectl get nodes NAME STATUS ROLES AGE VERSION kind-control-plane Ready control-plane 8m12s v1.25.3
Argo CDをインストールする
Argo CD用のnamaspace作成後、マニフェストを適用してArgo CDをインストールします。
$ kubectl create namespace argocd $ kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
Argo CDサーバーへのアクセス
brewでArgo CDのCLIをインストールしておきます。
$ brew install argocd
Argo CDサーバーへのアクセス方法はいくつかありますが、今回はポートフォワードで接続します。
$ kubectl port-forward svc/argocd-server -n argocd 8080:443
ブラウザで以下にアクセスします。
https://localhost:8080/
ログイン画面が確認できました。

パスワードは以下のコマンドで確認できます。
$ argocd admin initial-password -n argocd
ユーザー名とパスワードを入力してログインします。
- 初期ユーザー名: admin
- 初期パスワード: コマンドで確認した初期パスワード
サンプルアプリケーションのデプロイ
サンプルアプリケーションをデプロイしてみましょう。

| 項目 | 設定値 |
|---|---|
| Application Name | guestbook |
| Project Name | default |
| Repository URL | https://github.com/argoproj/argocd-example-apps.git |
| Path | guestbook |
| Cluster URL | https://kubernetes.default.svc |
| Namespace | default |


アプリケーションを作成できると、ステータスはOutOfSyncになっていると思います。
一通り設定が終わったら、SYNCを実行してアプリケーションをデプロイします。

ステータスがSyncedになりアプリケーションをデプロイできました。

GUI上でGithubリポジトリとの差分はどのように表示されるのか
forkしたサンプルアプリケーションリポジトリを使って、Argo CDのアプリケーションを作成して試してみました。
Github上でreplicasを2に変更してみます。

しばらく待つか、Refreshボタンを押すとステータスがOutOfSyncになっていることが確認できます。

Argo CDの画面上から、APP DIFFを見てみると差分を確認できます。

差分の内容は想定通りのため、SYNCを実行します。
replicasが増えたことをArgo CDの画面上からも確認できます。

HISTORY AND ROLLBACKから履歴を確認できます。
また、特定のデプロイを再デプロイしたりロールバックすることもできます。

後片付け
検証が終わったら以下のコマンドで作成したクラスターを削除します。
$ kind delete cluster








