Ravindra BagaleCourses & study guides मराठी Track your progress

Guides

Argo CD Install करून पहिली App Deploy कशी करावी

Argo CD install, login, Application → Git path, sync, Synced+Healthy.

Friends, Argo CD is the sync agent from the GitOps story. Chala mitrano — wait for Synced and Healthy, not just Applied.

Quick answer

Hold this vertical picture:

  1. argocd ns+install.
  2. pods Ready.
  3. login; change pw.
  4. Application YAML.
  5. sync; Synced/Healthy.

Language: English · मराठी · हिंदी

Install in argocd nsPods Ready Login UI/CLIChange admin pw Application CRrepo + path SyncApply manifests Healthy/SyncedDone
Argo CD first app

Argo CD का

GitOps controller.

Why: manual kubectl continuous नाही. What: Applications → Git. How: UI+CLI.

Example 1: Install namespace idea

Type this:

printf '%s\n' 'kubectl create namespace argocd'

You will see:

kubectl create namespace argocd

What it means: Argo CD components live in their own namespace.

Example 2: Install manifests reminder

Type this:

printf '%s\n' 'Apply the official Argo CD install manifests for your version from the project release notes (not a random blog copy)'

You will see:

Apply the official Argo CD install manifests for your version from the project release notes (not a random blog copy)

What it means: Pin the version your platform team approves.

Example 3: Wait for pods

Type this:

printf '%s\n' 'kubectl -n argocd get pods'

You will see:

kubectl -n argocd get pods

What it means: All controllers should become Running/Ready.

Concept 1: Access

password; port-forward.

Why: default admin = incident. What: change pw; SSO later. How: CLI login.

Example 4: Initial admin password

Type this:

printf '%s\n' 'kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d; echo'

You will see:

kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d; echo

What it means: Change this password after first login — Infosys checklist.

Example 5: Port-forward UI

Type this:

printf '%s\n' 'kubectl -n argocd port-forward svc/argocd-server 8080:443'

You will see:

kubectl -n argocd port-forward svc/argocd-server 8080:443

What it means: Lab access; prod uses Ingress + SSO later.

Example 6: CLI login sketch

Type this:

printf '%s\n' 'argocd login 127.0.0.1:8080 --insecure'

You will see:

argocd login 127.0.0.1:8080 --insecure

What it means: --insecure only for local TLS labs.

Concept 2: Application

repoURL/path/dest/policy.

Why: wrong path. What: apply; get; sync. How: private Git.

Example 7: Application YAML

Type this:

mkdir -p /tmp/argo && printf '%s\n' 'apiVersion: argoproj.io/v1alpha1' 'kind: Application' 'metadata: {name: web, namespace: argocd}' 'spec:' '  project: default' '  source:' '    repoURL: https://git.example.internal/demo/web-config.git' '    targetRevision: main' '    path: apps/web' '  destination:' '    server: https://kubernetes.default.svc' '    namespace: demo' '  syncPolicy: {automated: {prune: true, selfHeal: true}}' > /tmp/argo/app.yaml && head -5 /tmp/argo/app.yaml

You will see:

apiVersion: argoproj.io/v1alpha1

What it means: repoURL uses your company Git host — not a banned public host in samples.

Example 8: kubectl apply Application

Type this:

printf '%s\n' 'kubectl apply -f app.yaml && argocd app get web'

You will see:

kubectl apply -f app.yaml && argocd app get web

What it means: Look for Synced and Healthy.

Example 9: Manual sync

Type this:

printf '%s\n' 'argocd app sync web'

You will see:

argocd app sync web

What it means: Use when automation is off or first sync.

Concept 3: Heal/RBAC

automation + who.

Why: open admin = audit fail. What: selfHeal/prune; SSO. How: Healthy vs Progressing.

Example 10: Self-heal meaning

Type this:

printf '%s\n' 'selfHeal: true → controller reverts manual kubectl drift'

You will see:

selfHeal: true → controller reverts manual kubectl drift

What it means: Matches the GitOps lesson.

Example 11: Prune meaning

Type this:

printf '%s\n' 'prune: true → deletes cluster objects removed from Git'

You will see:

prune: true → deletes cluster objects removed from Git

What it means: Without prune, deleted YAML leaves orphans.

Example 12: RBAC note

Type this:

printf '%s\n' 'Map SSO groups to Argo CD RBAC before opening UI to everyone'

You will see:

Map SSO groups to Argo CD RBAC before opening UI to everyone

What it means: Admin for all is an audit fail at Capgemini.

Argo CD card

1 install 2 pods 3 login 4 Application 5 sync 6 Healthy+RBAC

Suppose: Progressing

repo/path/ns.

Suppose: Unknown

App details.

Ravindra Bagale's Tip

At TCS platform teams, first app uses a private Git path and automated sync with prune+selfHeal in non-prod only until trust grows.

Check yourself (quiz)

Q1. ns?

argocd

Q2. success?

Synced+Healthy

Q3. points?

repo+path

Q4. selfHeal?

revert drift

Q5. prune?

delete orphans

Q6. password?

change

Reading tracking

Mark this guide when you finish. Your browser remembers it on this device.

install → login → Application → sync → Healthy. Did you understand? Let us try it once more.

Frequently asked questions

Argo CD vs Flux?

Both GitOps; Argo has a popular UI.

Automated sync in prod?

Many teams enable after trust; start manual.

Where is admin password?

argocd-initial-admin-secret.

Progressing forever?

Repo credentials or bad path.

selfHeal risk?

Fights intentional break-glass edits — use policy.

App of apps?

Root Application managing many children.