Running Argo CD across regions: four topologies, one reference setup
Argo CD on one cluster is easy. Add a second region and a new set of questions appears. Where does Argo CD itself run? What happens when that region goes down? How do you stop one bad commit from landing in every region at once? This guide covers the topologies, the trade-offs, and a reference setup you can adapt, with Amazon EKS as the example. First, what Argo CD actually needs Git is the…
Argo CD becomes more complex when operating across multiple regions. Key considerations include where Argo CD itself runs, handling region failures, preventing a single bad commit from affecting all regions, and managing dependencies. This guide explores four topologies and provides a reference setup using Amazon EKS, with the source of truth being Git.
Argo CD needs Kubernetes objects like Applications, ApplicationSets, and AppProjects to function. Redis serves as a cache and does not impact data integrity. When Argo CD is unavailable, workloads continue running, but deployment and self-healing capabilities are lost until restored.
Four topologies are outlined: Central hub, Hub per region, One per cluster, and Agents. Each topology has its advantages and considerations, such as blast radius, recovery time, and team ownership. The recommended default for multi-region production is a hub per region, driven from one Git repository. Building blocks include labelled Secrets, EKS authentication without long-lived tokens, a layered repo structure, an AppProject to bound blast radius, and a single ApplicationSet with one Application per cluster.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.