Should I Use One Central ArgoCD or Multiple Instances for My Clusters?

April 29, 2025 5 answers
Asked by SparkyGamer92
I have three production clusters set up: one for the API server, frontend, and databases; another for machine learning inference; and the third for background job processing. Each cluster hosts multiple projects, each with its own namespace. I'm trying to figure out the best way to install ArgoCD for deployment management. Should I go for a central ArgoCD instance to deploy applications from one place, or should I install ArgoCD separately in each cluster, managing applications based on cluster type? I'm curious about how others approach this situation and what your implementation looks like.

Answers

TechieTribe5
I've found that using one ArgoCD instance works well for this scenario. You can set it up to handle everything by organizing your projects with a staging concept and labeling your clusters. This way, management is centralized, which makes it easier to oversee deployments across your environments.
Reply to this answer
CloudNavigator88
I lean towards a single ArgoCD setup too. You can refine your projects and configure RBAC to control access. Integrating with Keycloak for authentication also simplifies user management.
Reply to this answer
DevGuru_47
A central ArgoCD can be a bit tricky, especially if youโ€™re following strict GitOps principles, but it definitely pays off in the long run if managed properly.
Reply to this answer
CodeCrafter13
If your clusters are tied to different AWS accounts and environments, Iโ€™d recommend setting up one ArgoCD per environment. Otherwise, managing multiple instances can get a bit annoying, even if it's not the hardest thing ever. Just having one can simplify the overall process.
Reply to this answer
ClusterCommander99
We opt for one ArgoCD instance per cluster and manage them all from a single repository. This allows us to make changes in the non-production environment, then merge those PRs to push changes to production. Itโ€™s a straightforward approach for managing multiple clusters and keeps things in sync.
Reply to this answer

Add your answer

Answers are reviewed before publication.

Related Discussions