ANSIBLE ARCHITECTURE
ANSIBLE ARCHITECTURE
Ansible Architecture
Ansible is an IT automation engine that automates cloud provisioning, configuration management, application deployment, intra-service orchestration, and a variety of other IT tasks.
Ansible was built from the ground up for multi-tier deployments, and instead of controlling one system at a time, it models your IT architecture by defining how all of your systems interact.
It’s straightforward to deploy since it doesn’t require any agents or additional security infrastructure, and it employs a simple language (YAML, in the form of Ansible Playbooks) to define your automation jobs in a style that’s close to plain English.
Modules
Ansible connects to your nodes and sends little programmes known as “Ansible Modules” to them. These programmes are designed to be resource models for the system’s desired state. Ansible then runs these modules (by default over SSH) and removes them after they’re done.
Your module library can be stored on any machine, and no servers, daemons, or databases are required. To keep track of changes to your material, you’ll most likely need your preferred terminal application, a text editor, and most likely a version control system.
Plugins
Plugins are small pieces of code that extend the functionality of Ansible. Ansible comes with several useful plugins, and you can easily create your own.
Inventory
Ansible’s default representation of the machines it manages is a very simple INI file that groups all of your managed computers into groups of your choosing.
There is no need for an additional SSL signing server when adding new machines, thus it’s never a problem to figure out why a machine didn’t connect due to obscure NTP or DNS difficulties.
If you have another source of truth in your infrastructure, Ansible can connect to it and pull inventory, group, and variable data from places like EC2, Rackspace, OpenStack, and others.
Playbooks
Playbooks can finely manage different slices of your infrastructure topology, giving you complete control over how many computers to tackle at any given time. This is when Ansible becomes very fascinating.
Ansible’s approach to orchestration is one of fine-tuned simplicity, as we think that your automation code should make perfect sense to you years down the road, with very little unique syntax or features to remember.
Extending Ansible with Plug-ins and the API
Ansible modules can be created in any language that can return JSON if you wish to create your own (Ruby, Python, bash, etc). Inventory can also connect to any datasource by building a programme that communicates with it and returns JSON. There are also Python APIs for extending Ansible’s connection types (SSH isn’t the only option), callbacks (how Ansible logs, and so on), and even introducing new server-side actions.
There are a number of Ansible training centers that can help you gain sufficient information on this subject. The best teachings and talents come from the best Red Hat training institute in Kochi. As a result, prepare for the future with RHCE training in Kochi.