hisamounaのブログ

アウトプットを習慣化するためのブログ

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キャッシュとしてのみ使われる