Ansible
Describe each of the following components in Ansible, including the relationship between them:
- Task
- Module
- Play
- Playbook
- Role
How Ansible is different from other Automation tools?
True or False? Ansible follows the mutable infrastructure paradigm
True or False? Ansible uses declarative style to describe the expected end state
What kind of automation you wouldn’t do with Ansible and why?
What is an inventory file and how do you define one?
What is a dynamic inventory file? When you would use one?
How do you list all modules and how can you see details on a specific module?
Write a task to create the directory ‘/tmp/new_directory’
You want to run Ansible playbook only on specific minor version of your OS, how would you achieve that?
What the “become” directive used for in Ansible?
What are facts? How to see all the facts of a certain host?
What would be the result of the following play?
What would be the result of running the following task? How to fix it?
- hosts: localhost tasks:
- name: Install zlib
package:
name: zlib
state: present
- name: Install zlib
Which Ansible best practices are you familiar with?. Name at least three
Explain the directory layout of an Ansible role
What ‘blocks’ are used for in Ansible?
How do you handle errors in Ansible?
You would like to run a certain command if a task fails. How would you achieve that?
Write a playbook to install ‘zlib’ and ‘vim’ on all hosts if the file ‘/tmp/mario’ exists on the system.
Write a single task that verifies all the files in files_list variable exist on the host
Write a playbook to deploy the file ‘/tmp/system_info’ on all hosts except for controllers group, with the following content
The variable ‘whoami’ defined in the following places:
- role defaults -> whoami: mario
- extra vars (variables you pass to Ansible CLI with -e) -> whoami: toad
- host facts -> whoami: luigi
- inventory variables (doesn’t matter which type) -> whoami: browser
According to variable precedence, which one will be used?
For each of the following statements determine if it’s true or false:
- A module is a collection of tasks
- It’s better to use shell or command instead of a specific module
- Host facts override play variables
- A role might include the following: vars, meta, and handlers
- Dynamic inventory is generated by extracting information from external sources
- It’s a best practice to use indention of 2 spaces instead of 4
- ‘notify’ used to trigger handlers
- This “hosts: all:!controllers” means ‘run only on controllers group hosts
Explain the Diffrence between Forks and Serial & Throttle.
What is ansible-pull? How is it different from how ansible-playbook works?
What is Ansible Vault?
Demonstrate each of the following with Ansible:
- Conditionals
- Loops
What are filters? Do you have experience with writing filters?
Write a filter to capitalize a string
You would like to run a task only if previous task changed anything. How would you achieve that?
What are callback plugins? What can you achieve by using callback plugins?
What is Ansible Collections?
Ansible Testing
How do you test your Ansible based projects?
What is Molecule? How does it works?
You run Ansibe tests and you get “idempotence test failed”. What does it mean? Why idempotence is important?
Ansible Fundamental tutorial by Manish in 2020
Ansible Advance Tutorial for Beginners with Demo 2020 — By DevOpsSchool
Ansible with network module (Part 01) — By DevOpsSchool
Ansible with network module (Part 02) — By DevOpsSchool
Ansible with network module (Part 03) — By DevOpsSchool
Ansible with network module (Part 04) — By DevOpsSchool
Ansible with network module (Part 05) — By DevOpsSchool
Ansible with network module (Part 06) — By DevOpsSchool
Ansible with network module (Part 07) — By DevOpsSchool
Ansible with network module (Part 08) — By DevOpsSchool
Ansible with network module (Part 09) — By DevOpsSchool
Ansible with network module (Part 10) — By DevOpsSchool
Ansible with network module (Part 11) — By DevOpsSchool
Ansible with network module (Part 12) — By DevOpsSchool
Ansible with network module (Part 13) — By DevOpsSchool
Latest posts by Rajesh Kumar (see all)
- Best AI tools for Software Engineers - November 4, 2024
- Installing Jupyter: Get up and running on your computer - November 2, 2024
- An Introduction of SymOps by SymOps.com - October 30, 2024