DevOps / Ansible Interview questions
What is the difference between Ansible and Chef/Puppet?
| Ansible | Chef / Puppet |
| Agentless; connects via SSH/WinRM on demand. | Agent-based; a daemon runs continuously on managed nodes. |
| YAML playbooks, procedural-ish but declarative modules. | Ruby-based DSL (Chef) or a custom declarative DSL (Puppet). |
| Push model - control node pushes changes out. | Typically pull model - agents periodically pull config from a server. |
| Lower barrier to entry; no dedicated master server required. | Usually requires a central server (Chef Server / Puppet Master). |
Ansible's push, agentless model suits teams that want to get started quickly without standing up new server infrastructure, and its YAML syntax is generally considered more approachable for people without a programming background. Chef and Puppet's pull-based, agent-driven model can be a better fit for very large, continuously self-healing fleets where nodes need to enforce their desired state on their own schedule rather than waiting for a push, though at the cost of more infrastructure and a steeper learning curve to operate.
More Related questions...