Ansible
is an open source automation platform. It is very, very simple to setup
and yet powerful. Ansible can help you with configuration management,
application deployment, task automation. 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 is if you have a group of web servers behind a load
balancer. Ansible can upgrade the 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.
Ansible
is a radically simple IT automation engine that automatescloud
provisioning, configuration management, application
deployment,intra-service orchestration, and many other IT needs.
Designed
for multi-tier deployments since day one, Ansible models your IT
infrastructure by describing how all of your systems inter-relate,
rather than just managing one system at a time.
It
uses no agents and no additional custom security infrastructure, so
it's easy to deploy - and most importantly, it uses a very simple
language (YAML, in the form of Ansible Playbooks) that allow you to
describe your automation jobs in a way that approaches plain English.
Ansible
works by connecting to your nodes and pushing out small programs,
called "Ansible modules" to them. These programs are written to be
resource models of the desired state of the system. Ansible then
executes these modules (over SSH by default), and removes them when
finished.
Your
library of modules can reside on any machine, and there are no servers,
daemons, or databases required. Typically you'll work with your
favorite terminal program, a text editor, and probably a version control
system to keep track of changes to your content.
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.
Michael
DeHaan, the author of the provisioning server application Cobbler and
co-author of the Func framework for remote administration, developed the
platform. It is included as part of the Fedora distribution of Linux,
owned by Red Hat Inc., and is also available for Red Hat Enterprise
Linux,CentOS, and Scientific Linux via Extra Packages for Enterprise
Linux (EPEL) as well as for other operating systems.
Ansible,
Inc. (originally AnsibleWorks, Inc.) was the company set up to
commercially support and sponsor Ansible. Red Hat acquired Ansible in
October 2015
https://www.ansible.com/how-ansible-works