We use analytics cookies.We use cookies to analyze site traffic and improve your experience.
Loading...
System Design Masterclass · Kubernetes Containers
Free preview: the first 2 parts of this 6-part lesson.
Already bought the course? Sign in to read the whole lesson.
this lesson is part of
System Design Masterclass
Unlock this lesson and the 751 other paid lessons
$25 once, by PayPal
See the System Design courseread the rest of this lesson in
System Design Masterclass
Unlock this lesson and the 751 other paid lessons
$25 once, by PayPal
See the System Design coursein Kubernetes Containers
This lesson is part of the full System Design Masterclass. Unlock it along with 769 other lessons for a one-time payment.
One-time payment by card or PayPal
Get Lifetime AccessOne-time payment: UPI, card or netbanking
Get Lifetime Access18 Foundation lessons are free, no payment needed. Try them now
It is easy and good
“It is really nice and good Please join the course”
Traditional infrastructure management is procedural: "Install Nginx. Configure SSL. Create 3 app servers. Set up load balancing." Each step must execute in order, handle its own error cases, and be idempotent (or not, good luck running the script twice).
Desired state configuration flips this. You describe what you want the end state to be, and the system figures out how to get there. "I want 3 Nginx pods with SSL, behind a ." Whether you're starting from scratch, have 2 pods running, or have 5 pods running, the system converges to exactly 3.
This is the philosophy that underpins , Terraform, Ansible (in declarative mode), Puppet, and Chef. It's the reason Kubernetes YAML files are specifications (what you want) rather than scripts (what to do). And it's the foundation of GitOps, where the desired state lives in Git and the system continuously converges reality to match it.
| Layer | Tool | Desired State | Convergence Mechanism |
|---|---|---|---|
| Application | YAML manifests | Controllers (reconciliation loops) | |
| Infrastructure | HCL files | terraform apply (plan + apply) | |
| OS config | Ansible/Puppet | Playbooks/Manifests | Agent or push-based apply |
| Policy | OPA/Kyverno | Rego/YAML policies | Admission webhooks |
| Secrets | Vault | Policies | Dynamic secret generation |
The convergence cycle:
Benefits over procedural: