🟧 CKA 2025 — Q-04

Install Argo CD in the cluster:

  1. Add the official Argo CD Helm repository with the name argo.
  2. The Argo CD CRDs are already pre-installed in the cluster.
  3. Generate a Helm template of the Argo CD chart version 7.7.3 for the argocd namespace and save it to /argo-helm.yaml.
  4. Configure the chart not to install CRDs.
  5. Install Argo CD using Helm with release name argocd, using the same version (7.7.3) and the same configuration used in the template.
  6. Install it in the argocd namespace and configure it to not install CRDs.
  7. You do not need to configure access to the Argo CD UI.

Solution (CKA Fast-Execution Style)

1️⃣ Add the Argo Helm repo

helm repo add argo https://argoproj.github.io/argo-helm
helm repo update

2️⃣ Create the namespace

kubectl create ns argocd

3️⃣ Generate Helm template WITHOUT CRDs

Save output → /argo-helm.yaml Chart version → 7.7.3 Namespace → argocd

helm template argocd argo/argo-cd \
  --version 7.7.3 \
  --namespace argocd \
  --set installCRDs=false \
  > /argo-helm.yaml

4️⃣ Install Argo CD using Helm (same settings)

Release name: argocd

helm install argocd argo/argo-cd \
  --version 7.7.3 \
  --namespace argocd \
  --set installCRDs=false

controlplane ~   helm repo add argo https://argoproj.github.io/argo-helm
"argo" has been added to your repositories

controlplane ~   helm search repo argo
NAME                            CHART VERSION   APP VERSION     DESCRIPTION                                       
argo/argo                       1.0.0           v2.12.5         A Helm chart for Argo Workflows                   
argo/argo-cd                    9.1.3           v3.2.0          A Helm chart for Argo CD, a declarative, GitOps...
argo/argo-ci                    1.0.0           v1.0.0-alpha2   A Helm chart for Argo-CI                          
argo/argo-events                2.4.17          v1.9.8          A Helm chart for Argo Events, the event-driven ...
argo/argo-lite                  0.1.0                           Lighweight workflow engine for Kubernetes         
argo/argo-rollouts              2.40.5          v1.8.3          A Helm chart for Argo Rollouts                    
argo/argo-workflows             0.45.28         v3.7.4          A Helm chart for Argo Workflows                   
argo/argocd-applicationset      1.12.1          v0.4.1          A Helm chart for installing ArgoCD ApplicationSet 
argo/argocd-apps                2.0.2                           A Helm chart for managing additional Argo CD Ap...
argo/argocd-image-updater       1.0.1           v1.0.1          A Helm chart for Argo CD Image Updater, a tool ...
argo/argocd-notifications       1.8.1           v1.2.1          A Helm chart for ArgoCD notifications, an add-o...

controlplane ~   helm search repo argo/argo-cd --versions | grep -i 7.7.3
argo/argo-cd    7.7.3           v2.13.0         A Helm chart for Argo CD, a declarative, GitOps...

controlplane ~   helm template argocd argo/argo-cd -n argocd --create-namespace --version 7.7.3 --set installCRDs=false > /argo-helm.yaml

controlplane ~   helm install argocd argo/argo-cd -n argocd --create-namespace --version 7.7.3 --set installCRDs=false
I1115 17:18:22.698946   73211 warnings.go:110] "Warning: unrecognized format \"int64\""
I1115 17:18:22.990617   73211 warnings.go:110] "Warning: unrecognized format \"int64\""
I1115 17:18:24.896950   73211 warnings.go:110] "Warning: unrecognized format \"int64\""
NAME: argocd
LAST DEPLOYED: Sat Nov 15 17:17:58 2025
NAMESPACE: argocd
STATUS: deployed
REVISION: 1
TEST SUITE: None

controlplane ~   helm get values argocd -n argocd
USER-SUPPLIED VALUES:
installCRDs: false

controlplane ~   helm get values argocd -n argocd  -a | grep -i installcrds -A1
installCRDs: false
kubeVersionOverride: ""

controlplane ~   k get deploy,sts,svc -n argocd 
NAME                                               READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/argocd-applicationset-controller   1/1     1            1           4m40s
deployment.apps/argocd-dex-server                  1/1     1            1           4m40s
deployment.apps/argocd-notifications-controller    1/1     1            1           4m40s
deployment.apps/argocd-redis                       1/1     1            1           4m40s
deployment.apps/argocd-repo-server                 1/1     1            1           4m40s
deployment.apps/argocd-server                      1/1     1            1           4m40s

NAME                                             READY   AGE
statefulset.apps/argocd-application-controller   1/1     4m40s

NAME                                       TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)             AGE
service/argocd-applicationset-controller   ClusterIP   172.20.150.85    <none>        7000/TCP            4m41s
service/argocd-dex-server                  ClusterIP   172.20.139.231   <none>        5556/TCP,5557/TCP   4m41s
service/argocd-redis                       ClusterIP   172.20.181.20    <none>        6379/TCP            4m41s
service/argocd-repo-server                 ClusterIP   172.20.144.2     <none>        8081/TCP            4m41s
service/argocd-server                      ClusterIP   172.20.71.230    <none>        80/TCP,443/TCP      4m41s

controlplane ~