Ansible
AWS Deployment
Released in 2012, Ansible is the one of the youngest and fastest growing open source deployment, configuration management and orchestration tool. Unlike Chef and Puppet, Ansible relies on an agentless architecture, that is: it does not require any client package installation on client nodes apart from regular Python packages. The management of client nodes happens over SSH protocol. Ansible’s agentless architecture makes the upgrade process simple and easy to implement.
Ansible is available in two versions: Ansible tower (the paid version) and Ansible open source (the free one).Ansible is written in Python and is licensed under the General Public License (GPL). One of the advantages of using Ansible is that is uses YAML syntax for its configuration files, also known as playbooks. A very nice choice, given that YAML is quite easy and avoids the unneeded complexity of major languages.
There are two types of nodes: Control Machine and Managed Nodes. The Control Machine is the one where Ansible is actually installed. It supports most of the Linux distributions and requires Python 2.6+ installed. Managed nodes requires Python 2.4+ and supports Linux, Windows and Mac OS X.
Ref:
Here