Here we have compiled the most probable DevOps interview questions asked in the industry. You will learn about software version control, Git repository, reverting a commit in Git, Vagrant, continuous testing elements, and the importance of continuous integration, testing, and deployment. These questions are curated after discussing with many interviewers and DevOps Training experts.
Inventories are the host files where information of target servers are written. Inventory also known as host-file. By default this file is located in "/etc/ansible/hosts". It contains the group of the servers, IP’s, and connection type etc.
Ansible Galaxy is a GUI service that lets Ansible users share their roles and modules. The Ansible Galaxy command line tool comes with normal Ansible. It is used to install roles from Galaxy or from a SCM system like GIT. Use this command to get roles from the Galaxy:
$ ansible-galaxy install username.role_name
|Ansible Installation is very easy||Time consuming & complicated because of Chef Workstation||Time consuming due to certificate signing between master and agent|
|Simplest Technology||Complex than Ansible||Complex than Ansible|
|Written in YAML Script||Written in Ruby DSL language||Written in Ruby language|
|Agentless setup||Has an Agent||Has an Agent|
|Configures any machine which has SSH and Python installed.||Configures only those machines which has Chef Agent installed||Configures only those machines which has Puppet Client installed|
From the day one Ansible focused on multi-tier deployments. So it is used to manage and deploy applications to remote nodes. It manages how the entire IT-Infrastructure inter relates. You were using commands or scripts to manage infrastructure or some automation scripts which would take a lot of time and effort. Now Using Ansible there are reusable roles and inventories, you just need to write a YAML script and you are done. By this you can automate repetitive tasks.
Ansible Tower is a commercial product(Ansible with support and extra features) from RedHat . It is used in simplifying the job of ansible automation. Ansible is very easy to use in towers as it acts like a hub for all automation tasks. The Ansible tower is free for usage of upto 10 nodes.
The Ansible vaults are used to keep your sensitive data like passwords or keys in encrypted files, rather than as plaintext in playbooks or roles so that the data can be protected. Not only about protecting data but also makes it access into the playbooks. The files can be encrypted and unencrypted as the Vault is implemented with file-level granularity. These are very user friendly.
Ansible has a very simple architecture. It has control over the configurations of your IT-Infrastructure. Automates the cloud provisioning, configuration management, infrastructure as a code, application deployment, intra-service orchestration, and many other IT needs. It has no agent, just needs ssh and python installed in target servers. The SSH protocol and python interpreter enables Ansible to copy modules and executes them in target servers. At last it removes copied modules from target serves.
The main components of Ansible architecture are:
There are so many configuration management tools like Puppet, Chef, CEFengine, Salt, etc. And the most popular tool is Ansible, in this tool infrastructure is categorized into two type:
1. Ansible Server
2. Target Servers
As Ansible is an agentless tool so it doesn’t require any installations on target servers (remote nodes). So setup and managing nodes is very simple. Ansible can handle huge no.of nodes over SSH connection and entire operations can be executed by one single command “ansible”. Playbooks written in YAML contain one or more play, each play has one or more tasks.
$ ansible-playbook playbook_name.yml
Yes, Ansible Inc makes a great efficient GUI tool. It is very easy to use.
start-at-task option, will start executing the play from the task you specify and subsequent tasks are executed. The prior tasks are skipped.