ArgoCDを構成するPod (メモ書き)
参考
Components
argocd-repo-server
ロール: Gitリポジトリをcloneする
cloneしたファイルをもとにconfig management(kustomize,helm)がmanifestsを生成する つまり、argocd-repo-server上でkustomize,helmコマンドが実行されている
cloneしたリポジトリは/tmp配下にstoreされる(TMPDIRで変更可能)
生成されたmanifestsはキャッシュしている(defaultで24時間) キャッシュはargocd-redisにstoreされる
argocd-application-controller
依存Components
argocd-repo-server : 生成されたmanifestを使うため
Kubernetes API server : 今のクラスタのstateを取得するため
kubectlコマンドを使ってクラスタへ変更を適用させている
3mおきにマニフェストの変更をチェックしている
argocd-server
ロール: WebUI,CLIやCI/CDで利用されるAPIを提供する
argocd-dex-server
configmapやsecretから生成した/tmp/dex.yamlを使ってdexコマンドを実行している
onelogin等を使うために必要
argocd-redis
redisはthrow-awayキャッシュとしてのみ使われる