Ansible Intro

28 Mar

Ansible is the tool we use to automate database tasks.

What is Ansible? 

  1. an open source automation platform. 
  2. simple automation language that describes IT infrastructure into ansible playbooks.
  3. automation engine to run ansible playbooks

Why Ansible? 

  1. it can be used to automate database administration tasks and application deployments related to databases.
  2. is simple, through ansible playbooks that are human readable
  3. is powerful, because it can be used for application deployments, database tasks automation and configuration management
  4. is agentless, through SSH (WinRM for Windows hosts) connections and push of Ansible modules on hosts

Ansible architecture

  1. control nodes where Ansible is installed and run from
  2. managed hosts

Managed hosts are stored in an inventory

Plays are created to ensure a host or a group of hosts are in a particular state.

A play performs a list of tasks on the hosts in the order specified by play

Each task runs a module, that can be Python script, shell script, etc, with some arguments

Playbooks are files containing sets of plays.

Tasks, plays and playbooks are implemented to be idempotent.

During next posts we will detail the usage of Ansible to automate database tasks.

* The email will not be published on the website.