Skip to content

Phase 5: GitOps & Multi-Cloud Control Planes

πŸ“– Deep-Dive Index

1. GitOps with ArgoCD

  • Pull vs Push: Why CI push is bad for infrastructure, why CD pull (reconciliation loops) is enterprise standard.
  • ArgoCD Core: Applications, ApplicationSets, Sync Waves/Phases, self-healing, drift detection.
  • Manifest Management: Helm (templating) vs Kustomize (patching/overlays).

2. Infrastructure as Data (Crossplane)

  • Architecture: Extending the K8s API via CRDs. Providers (AWS/Azure).
  • Abstractions: Managed Resources (1:1 mapping to cloud API), Composite Resources (XRDs), Compositions (templates).
  • Crossplane vs Terraform: Eventual consistency and continuous reconciliation vs discrete state updates.

πŸ› οΈ Job-Essential Exercises

  1. The App of Apps Bootstrap:
  2. Create a Git repo. Structure it using the "App of Apps" pattern. Install ArgoCD on your cluster and point it to the root Application. Watch it recursively deploy Prometheus, Grafana, and an NGINX ingress controller simultaneously.
  3. Self-Healing Infrastructure:
  4. Manually delete a Deployment that ArgoCD manages using kubectl delete. Watch ArgoCD detect the drift and immediately recreate it to match the Git state.
  5. The Kubernetes Cloud Vending Machine (Crossplane):
  6. Install the Crossplane AWS provider. Create an XRD called CustomDatabase. Write a Composition that provisions an AWS RDS instance, a Subnet Group, and a Security Group. Deploy a single CustomDatabase manifest to the cluster and watch Crossplane build the AWS resources.