Ansible
About This Course
Overview
Ansible automates and simplifies repetitive, complex, and tedious operations. Everybody likes it because it brings huge time savings when we install packages or configure large numbers of servers.
Its architecture is simple and effective. It works by connecting to your nodes and pushing small programs to them. These programs make the system comply with a desired state, and, when they have finished their tasks, they are deleted.
Ansible works over SSH and doesn’t require any daemons, special servers, or libraries to work. A text editor and a command line tool are usually enough to get your work done.
You simply describe your infrastructure in a text file (INI) and then all the information about the desired state of these machines are organized in playbooks. It is able to gather node information (such as IP addresses or Operating System details) into so-called “facts”, which help with the selective and automated provisioning of different configurations on the platform. All of this with a language that is very human readable without the need to write code or declaring explicit
relationships.
Why and How We Use Ansible
In the last couple of years we have done a great deal of work to simplify and automate OpenIO deployment and configuration management. To do this, we have leveraged Ansible, which has been a real boon to our work.
Benefits of Ansible?
In our experience there are at least three advantages that make Ansible our favorite automation tool.
- It is You do not need to install additional software on your server nodes. This helps keep the installation clean while ensuring that there are no conflicts with our software.
- Playbooks are easy to read and They are mostly written in YAML, and this is a great advantage when compared to other solutions, such as Puppet.
- Itis written in Python, a very popular programming language that is familiar to our engineers, making it easy to extend.