Skip to main content

Flexible Architecture

Argo CD consists of several components that serve different purposes. The following diagram shows the high-level architecture of Argo CD:

Argo CD Architecture

  • API server - the stateless service that provides the API and UI for Argo CD.
  • Application Controller - the Kubernetes controller that continuously reconciles the state of managed applications and applies changes from Git to managed Kubernetes clusters.
  • Application Set - the controller that automates Argo CD application management.
  • Image Updater - the controller that monitors Docker registries and automatically updates image tags in Git repositories.
  • Repo Server - the service responsible for interacting with Git and generating manifests using config management tools such as Helm or Kustomize.
  • Dex - the OpenID Connect identity provider used for authentication and authorization.

Depending on the use case the desired location of some components varies. For example, some organizations choose to run Repo Server in each cluster, closer to managed workloads. Other organizations prefer to have tighter control over the Git repository and like to run Repo Server in a dedicated cluster with Git access.

Components Host Cluster

Akuity Platform allows you to choose the location of Argo CD components depending on your needs. The following components' location is configurable Application Set, Repo Server or Image Updater.

Use the following steps to change the location of the desired component:

  1. Navigate to Argo CDyour instanceSettings.
  2. Choose the desired component settings section.
  3. Select the desired Kubernetes cluster using Select Cluster control.
  4. Click Save