Argo CD offers flexible installation options to suit different use cases, from testing to production deployments. Choose the installation method that best fits your requirements.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/argoproj/argo-cd/llms.txt
Use this file to discover all available pages before exploring further.
Installation Types
Argo CD has two primary installation types:Multi-Tenant
Full-featured installation with UI, API, and RBAC for serving multiple teams
Core
Lightweight headless installation for single-cluster GitOps
Multi-Tenant Installation
The multi-tenant installation is the most common deployment method, typically maintained by a platform team to service multiple application developer teams.Standard Installation
Recommended for: Testing, demonstrations, and single-cluster deployments
- API Server (argocd-server)
- Repository Server (argocd-repo-server)
- Application Controller (argocd-application-controller)
- Redis
- Dex (for SSO)
- ApplicationSet Controller
- Notifications Controller
Standard Installation
Get started with the standard installation
High Availability Installation
The HA installation includes the same components but configured for high availability: Key Differences:- Multiple replicas for critical components
- Redis HA with Sentinel
- Pod anti-affinity rules
- Requires at least 3 nodes
HA Installation
Set up Argo CD for production
Installation Comparison
- Standard vs HA
- Multi-Tenant vs Core
| Component | Standard | High Availability |
|---|---|---|
| API Server | 1 replica | Multiple replicas |
| Repo Server | 1 replica | Multiple replicas |
| Application Controller | 1 replica (StatefulSet) | Multiple replicas (StatefulSet) |
| Redis | Single instance | Redis HA with Sentinel |
| Use Case | Testing, demos | Production |
| Min Nodes | 1 | 3 (due to anti-affinity) |
| IPv6 Support | Yes | No |
Cluster Access Modes
Argo CD supports two cluster access modes:Cluster-Admin Access
install.yaml - Standard installation with cluster-admin access- Use when Argo CD manages applications in the same cluster it runs in
- Can deploy to
kubernetes.svc.default(in-cluster) - Can also deploy to external clusters with credentials
- Includes ClusterRole and ClusterRoleBinding
The ClusterRoleBinding is bound to a ServiceAccount in the
argocd namespace. Be cautious when changing the namespace - update the ClusterRoleBinding accordingly.Namespace-Level Access
namespace-install.yaml - Installation with namespace-level privileges only- Use when Argo CD only deploys to external clusters
- No cluster-level permissions required
- Ideal for multi-instance deployments (different teams/namespaces)
- Can still deploy to same cluster with explicit credentials
- Only deploys Argo CD resources (Applications, ApplicationSets, AppProjects) locally
Installation Methods
Argo CD manifests can be installed using multiple methods:- kubectl
- Kustomize
- Helm
Direct installation using kubectl:
The
--server-side --force-conflicts flags are required because some CRDs exceed the size limit for client-side apply.Custom Namespace Installation
To install Argo CD in a custom namespace, use Kustomize to patch the ClusterRoleBinding:Next Steps
Choose Installation Type
Select between Standard, High Availability, or Core Mode based on your requirements.