Ansible Automation


Ansible Deep Dive


Who Should Attend

  • DevOps engineers
  • Linux system administrators
  • Release engineers
  • Infrastructure automation engineers
  • Systems design engineers

Course Prerequisites

  • Good understanding of Ansible core components (playbooks, tasks, modules, variables, inventories)


  • Familiarity with the Linux CLI and text editors
  • Familiarity with YAML language
An individual course planning is possible for this kind of course. If you would like to know more about this course please either call us on +971 4 42 89 440 or send an email to

Course Content

This course is intended admins who are interested in developing and improving their skills with Ansible. First lecture consists of a short review of Ansible basic functionalities, like Modules, Playbooks, and Inventories, just to make sure that our students will be up to date with the basic features. The next courses will present topics like "Error Handling and Execution Strategies", "Lookups", "Dynamic Inventories", "Roles", while the second day of training approaches some more advanced features like "Templating", "Ansible Pull", "Ansible Galaxy" and an expert topic called "Debugging and Optimizing Playbook Execution".

Course Objectives

In the process of learning we will show you some advanced ansible techniques that will give you at the end of the course a firm understanding of ansible best practices and key features like:

  • Control the flow execution of playbooks and troubleshoot it
  • Import external content into playbooks
  • Master Ansible roles, in order to achieve their goals faster
  • Reverse the Ansible push based architecture using Ansible Pull when necessary
  • Optimize playbook execution

Course Outline

Chapter 01: Quick Review of Modules and Playbooks

  • Modules, task, playbooks
  • Host and users
  • Task list
  • Tracking Host state
  • Handlers
  • Executing a playbook

Chapter 02: Error Handling During Playbook Execution and Execution Strategies

  • Error Handling in Playbooks
  • Ignoring failed commands
  • Handlers and Failure
  • Controlling what defines Failure
  • Aborting the play
  • Using blocks
  • The linear execution strategy
  • The free execution strategy
  • Defining strategy

Chapter 03: Lookups

  • Lookup plugins
  • Enabling, using and listing Lookup Plugins
  • Lookup plugins in loops

Chapter 04: Dynamic Inventory and Inventory Plugins

  • Ansible inventory
  • Static vs. Dynamic
  • Variables and Inventories
  • Inventory Scripts
  • Using multiple inventories
  • Enabling, using and listing Inventory Plugins

Chapter 05: Ansible Roles Deep Dive

  • Role’s directory structure
  • Using Roles
  • Role Duplication and Execution
  • Role Dependencies
  • Role search path
  • Creating a Role

Chapter 06: Templating Using Jinja2

  • What are templates?
  • Template module
  • Template file
  • Filters
  • Checking a template

Chapter 07: Ansible Pull

  • Detail ansible command
  • Ansible pull common options

Chapter 08: Delegation

  • Delegation characteristics
  • Delegated facts

Chapter 09: Ansible Galaxy

  • Ansible Galaxy – Website and command line tool
  • Authenticate with Galaxy
  • Import and delete a role with Ansible Galaxy

Hands-on laboratory at each chapter. 

Further information

If you would like to know more about this course please contact us