Anisble is an open source automation platform which was purchased by Red Hat in October 2015. It is used heavily by the server admin community to administer and deploy updates and patches to linux servers. In the last few years it has gained a great following from the network community who are now using it to administer and automate network operations across a wide variety of platforms.

Is Ansible Free?

YES!, Ansible is free to use and can be downloaded and installed from a number of sources, it will currently only run on a Linux or Mac that has Python installed. It will not run on Windows.

There are also some paid products i.e Ansible Engine a version of Ansible with full support from Red Hat and also Ansible Tower a GUI front end to drive Ansible core Ansible Tower is licensed on a per node basis.

But if you just want to download Ansible and use it for your home or production use – it is free to use.

Ansible Architecture Diagram

ansible architecture diagram

The architecture of Anisble is very simple, it consists of an Automation Engine, which is typically an install on a Linux host i.e Ubuntu, then then input into that Engine via a user in the form of a Playbook. You can also optionally have input from an external source i.e Github. Then the output is an SSH connection to the hosts you want to configure.

What is Ansible Playbook?

An Ansible Playbook is a YAML based text file that is used to tell Ansible what to automate. It is a human readable file that contains a list of simple actions to perform when automation server or network tasks. An example of an Ansible Playbook to conifgure a Nexus Switch is shown below

There are many other open source tools available that do similar jobs and to which Ansible is often compared to but they are all different and are suitable for different jobs. The list below shows some of the common comparisons

Ansible vs Jenkins

Ansible is not really a replacement for Jenkins it is actually a product you would use alongside Jenkins.

Jenkins is more of a continous pipeline engine

Ansible vs Docker

Ansible and Docker are two completely different things, I am not sure why the are often compared, but Docker is a container platform used to run multiple hosts (containers) on a single platform.

Ansible vs Puppet vs Chef

The closest comparison to Ansible are other two main automation tools, Puppet & Chef. Whilst they do a lot of things the same the main advantage that Ansible has over both these tools is that it is Agentless, so only requires an SSH connection to the target device.

Puppet & Chef require an agent to be installed on the target device. Whilst this is fine for server administration it does not work for most network hardware, which is why Ansible is fast becoming the network automation tool of choice for network engineers.

Ansible for Network Engineers

If you are a Network Engineer and want to learn more about how to use Ansible for Network Automation, please check out my course.

All the details can be found here.

<<< This article was originally published on blog here. >>>