ansible/docs/comparisons.md
2012-03-05 21:16:55 -05:00

3.5 KiB

Comparisons

Confused about how Ansible fits in? Here's a comparison with some common tools. Accuracy is important, so corrections are VERY welcome if we've got something wrong. For space reasons, we can't list everybody's favorite management tool.

Ansible Puppet Chef Func Capistrano
Purpose Config, Deployment, Ad-Hoc Config, Deployment Config, Deployment Ad-Hoc Deployment
Config Language Simple YAML format Custom DSL Ruby code None None
Config Language Style Very simple, not expressive Very rich & expressive Very rich & expressive None None
Config Ordering Simply ordered, with notifiers Strict dependency DAG Simply ordered None Simply ordered
Communication SSH push SSL pull or push trigger SSL pull or push trigger(?) SSL push SSH
Daemons Required? no yes yes yes no
Database Required no yes yes no no
Inventory Features planned yes yes? some no
Message Bus Required no yes yes no no
Implemented In Python Ruby Ruby, Erlang Python Ruby
Extensible In Anything Ruby Ruby Python Ruby
Codebase Size Small Large Large Medium Medium
Module Support Emerging Wide/Established Wide/Established Medium/Established Poor
Users Targeted Sysadmins, developers, QA, web admins Sysadmins Sysadmins, web admins Sysadmins, developers Web admins
Can Easily Build Applications On It Yes No No Yes No
Parallelism & Scaling Tech Fork/Merge Add Servers / Staged Commands / No Server Adding More Erlang Fork/Merge No
Delegated Hierachies No No No Yes No