What is Ansible and advantages of using Ansible

This is the first post which is related to Ansible series tutorial. Let’s learn What is Ansible and advantages of using Ansible.

Ansible is an automation engine, similar to Chef or Puppet. That can be used to ensure deployment and configuration consistency across many servers and keep servers and applications up-to-date. Please start to learn What is Ansible and advantages of using Ansible

What is Ansible?

Ansible is an open source IT Configuration Management, Deployment & Orchestration tool which can remove drudgery from your work life, and will also dramatically improve the scalability, consistency, and reliability of your IT environment. It aims to provide large productivity gains to a wide variety of automation challenges. This tool is very simple to use yet powerful enough to automate complex multi-tier IT application environments.

Ansible can automate IT environments whether they are hosted on traditional bare metal servers, virtualization platforms, or in the cloud. It can also automate the configuration of a wide range of systems and devices such as databases, storage devices, networks, firewalls, and many others.

Advantages Of Using Ansible


Modular: Only one program per script, this way I can spread the programs across different servers.

Simple:Shell scripts are extremely simple and don’t need any other software installed.

One-click:I only have to run the shell script once and everything is setup. 

Agnostic: Most programmers can figure out shell and don’t need to know how to use a specific program.

Versioning: Since my code is on GitHub a simple Git pull and restart all of supervisor will run my latest code.

Agentless: Finally, Ansible is completely agentless. There are no agents/software or additional firewall ports that you need to install on the  client systems or hosts which you want to automate.

Powerful & Flexible: Ansible has powerful features that can enable you to model even the most complex IT workflows. It can manage the infrastructure, networks, operating systems and services that you are already using, as Ansible provides you with hundreds of modules to manage them.

Efficient: No extra software on your servers means more resources for your applications. Also, since Ansible modules work via JSON, Ansible is extensible with modules written in a programming language you already know. Ansible introduces modules as basic building blocks for your software. So, you can even customize it as per your needs.

Automatic step-by-step reporting : Ansible encourages you to name each ‘task’ in your provisioning script, and then reports whether or not that task succeeded with-or-without changes, or failed, and any error messages. All colour coded.

A library of ready-made idempotent ‘modules’  with a standarized option format for dealing with common operations. A lot of the idempotency you get with Ansible can be achieved through careful shell scripting – always using mkdir -p, carefully cleaning and force-checkouting git repos, etc

Ansible Terms:

  • Controller Machine: The machine where Ansible is installed, responsible for running the provisioning on the servers you are managing.
  • Inventory: An initialization file that contains information about the servers you are managing.
  • Facts: Global variables containing information about the system, like network interfaces or operating system.
  • Handlers: Used to trigger service status changes, like restarting or stopping a service.
  • Play: A provisioning executed from start to finish is called a play. In simple words, execution of a playbook is called a play.
  • Playbook: The entry point for Ansible provisioning, where the automation is defined through tasks using YAML format.
  • Task: A block that defines a single procedure to be executed, e.g. Install a package.
  • Module: A module typically abstracts a system task, like dealing with packages or creating and changing files. Ansible has a multitude of built-in modules, but you can also create custom ones.
  • Role: A pre-defined way for organizing playbooks and other files in order to facilitate sharing and reusing portions of a provisioning.

Thanks for reading the post ?. Please share and leave your comment if any.

Tagged , , . Bookmark the permalink.

6 Responses to What is Ansible and advantages of using Ansible

  1. Pingback: viagra for sale

  2. Pingback: generic cialis

  3. Pingback: cost of ciprofloxacin oral

  4. Pingback: naltrexone otc

  5. Pingback: buy tylenol online usa

  6. Pingback: buy cialis 20mg