Google News
DevOps Interview Questions
Ansible is an open-source automation tool, which is categorized into two types of servers :
* Controlling machines
* Nodes

Ansible will be installed on the controlling machine, and using that machine nodes are managed with the help of SSH. Nodes’ locations are specified by inventories in that controlling machine.
Since Ansible is an agentless tool, it doesn’t require any mandatory installations on remote nodes. So, there is no need of background programs to be executed while it is managing any nodes.
Ansible can handle a lot of nodes from a single system over an SSH connection with the help of Ansible Playbooks. Playbooks are capable of performing multiple tasks, and they are in the YAML file format.
Ansible can help in :
* Configuration Management
* Application Deployment
* Task Automation
Handlers in Ansible are just like regular tasks inside an Ansible Playbook, but they are only run if the task contains a ‘notify’ directive. Handlers are triggered when it is called by another task.
Sudo is a program for Unix/Linux-based systems that provides the ability to allow specific users to use specific system commands in the system’s root level. It is an abbreviation of ‘superuser do’, where ‘super user’ means the ‘root user’.
Nagios Remote Plugin executor”  popularly known as NERP enables us to execute the Nagios plugins remotely. With the help of this mechanism, we can check the performance parameters of the remote Machine.
Nagios runs on a server either as a background process or as a service. Nagios will run the plugins regularly with the help of the hosts or servers present in your Network. We can check the status information by using the web interface. It will execute the scripts based on a schedule.
The major benefits of automation testing are listed below :
* Supports wider test coverage of application features
* Ensures consistency
* Allows parallel execution
* Improves efficiency
* Reusable test scripts
* Saves money and time
* Reliable results
Infrastructure as code (IaC) is a method to manage and provision IT infrastructure (networks, databases, connection topology, etc.) through source code, rather than manual process or interactive configuration tools.

It helps you to automate the infrastructure deployment process easily, consistently, and reliably.
Configuration management and provisioning infrastructure, both are important for the DevOps toolchain. While configuration management is best when it comes to employing desired configurations for target machines or groups of machines, provisioning helps you to create, modify, delete, and track infrastructure using APIs or code.
* Ansible playbook is a structured unit of scripts that describes work for server configuration. It is used for repeated actions.

* An ad-hoc command is used to do something quicker, mostly one-time use.