Ansible
You've got 40 servers and every one of them needs the same package installed, the same config file dropped in, the same service restarted. Ansible is a way to describe that once, in plain YAML, and have it happen everywhere — over plain SSH, with nothing to install on the target machines. No agents, no daemons, no "wait, is the agent even running" 3am mystery.
Why Ansible? Agentless config management
What problem it solves, and why nothing needs to be installed on the machines it manages.
→ 02Installing Ansible & the inventory
Getting set up, and telling Ansible which machines exist and how they're grouped.
→ 03Ad-hoc commands
Running a single command or module across a fleet, no playbook required.
→ 04Playbooks & YAML basics
Structuring plays and tasks, and the handful of YAML rules Ansible actually cares about.
→ 05Variables & facts
Where values come from — inventory, files, the command line, and the target host itself.
→ 06Jinja2 templates
Generating real config files from one template, filled in differently per host.
→ 07Handlers, idempotency & tags
Only restarting a service when something actually changed, and running just part of a playbook.
→ 08Roles & project structure
Breaking a big playbook into small, reusable, shareable pieces.
→ 09Loops & conditionals
Repeating a task over a list, and running tasks only when a condition holds.
→ 10Ansible Vault — secrets management
Keeping passwords and keys encrypted at rest, right alongside the rest of your playbooks.
→ 11Ansible Galaxy — sharing & reusing roles
Installing community roles instead of reinventing "install nginx" for the hundredth time.
→ 12Error handling & debugging
What to do when a play fails on host 14 of 40, and how to see what a task is really doing.
→ 13Best practices & real-world patterns
Directory layout, idempotency discipline, and the habits that scale past one playbook.
→ ✓Ansible quiz
14 questions, straight from the 13 lessons above.
→