Understanding Ansible
Ansible is an IT automation tool that provides provision, orchestration, and configuration management features. Unlike with Puppet and Chef, Ansible doesn't require any software to be preinstalled on the server, other than an SSH service, as the heavy lifting is done by our own computer that connects to our Ansible-managed servers and instructs the server on how it needs to change.
Like Puppet and Chef, Ansible is also idempotent. This means each time we run Ansible, it will only perform actions where a change is required—so if we install the Nginx web server, the first run of Ansible will install it and subsequent runs won't because it knows Nginx is already installed.
Ansible configuration is written in Yaml Ain't Markup Language (YAML), which makes the configuration easy to read and write.
Conceptually, Ansible configuration is made up of playbooks that are made up of plays, which are made up of tasks. A playbook is the configuration for an entire...