Red Hat Ansible is an open source automation platform, which is related on Red Hat Enterprise Linux Commands. It is easy to setup and powerful. Ansible helps with configuration management, application deployment, task automation processes. It can also do IT orchestration, where you have to run tasks in sequence and create a chain of events, which must happen on several different servers or devices.
An example, if you have a group of web servers behind a load balancer, Ansible can upgrade web servers one at a time and while upgrading it can remove the current web server from the load balancer and disable it in your Nagios monitoring system. So in short you can handle complex tasks with a tool which is easy to use.
Unlike Puppet or Chef it doesn’t use an agent on the remote host. Instead Ansible uses SSH which is assumed to be installed on all the systems you want to manage. Also it’s written in Python which needs to be installed on the remote host.
This means that you don’t have to setup a client server environment before using Ansible, you can just run it from any of your machines and from the clients point of view there is no knowledge of any Ansible server (you can run Puppet in standalone mode, but Puppet still needs to be installed).
There are some other requirements though, for example if you want to do something related to git on a remote machine a git package must first be installed on the remote machine.
Ansible is available for free and runs on Linux, Mac or BSD. Aside from the free offering, Ansible also has an enterprise product called Ansible Tower.