Module 1 – Ansible Installation, Configuration & Basic Modules

  • What is Ansible and why is it a Configuration Management Tool.
  • Different features of Ansible.
  • Work model of Ansible.
  • Ansible Installation Steps.
  • Basic Ad-hoc commands & modules of Ansible.
  • Practical session & documentation on the above points.

 

Module 2 – Writing Plays and Playbooks

  • Detailed description of Ansible plays and playbooks.
  • Details on YAML ( Yet Another Markup Language) format.
  • Discussion of Playbook commands, syntax checks, dry runs and indentation.
  • Hands-on on different playbook writing.
  • Practical session & documentation on above points.

 

Module 3 – Ansible Variables

  • Understanding on Ansible Variable and it’s usage.
  • Defining variables in playbooks.
  • Using variables in playbooks.
  • Host Variables and Group Variables.
  • Use of directories to populate Host and Group variables.
  • Override of variables from the Command Line.
  • Use of Arrays as Variables.
  • Capture Command Output with Registered Variables.
  • Practical session & documentation on above points.

 

Module 4 – Ansible Facts

  • Overview of Ansible Facts.
  • Details & Example of different Ansible Facts.
  • Ansible Facts Injection as Variables.
  • Turning off Fact Gathering.
  • Creation of Custom Facts.
  • Use of Magic Variables.
  • Practical session & documentation on above points.

Module 5 – Ansible Vault

  • What is Ansible Vault and how to use it
  • Creation of Encrypted File and way to view, edit that.
  • Encryption of an Existing File.
  • Decryptionif an Existing encrypted File.
  • Changing Password of an Encrypted File.
  • Playbooks and Ansible Vault.
  • Practical session & documentation on above points.

 

Module 6 – Ansible Import & Include and Ansible Parallelism.

  • Details on Ansible Import and Include Operation.
  • Difference of work model in between Import and Include.
  • Details of parameter for Ansible Parallelism.
  • Details of parameter for Rolling Updates with Ansible.
  • Practical session & documentation on above points.

 

Module 7 – Implementing Task Control

  • Writing Loops and Conditional Tasks.
  • Loops over a list of Hashes or Directories.
  • Earlier styles Loop Keywords.
  • Use of Register variable with loops.
  • Running of Tasks conditionally.
  • Testing of multiple conditions.
  • Combining Loops and Conditional Tasks.
  • Practical session & documentation on above points.

 

Module 8 – Ansible Roles

  • Details of Ansible Roles and usage on simplifying Ansible playbooks.
  • Structuring Ansible Playbooks with roles.
  • Examining the Ansible role structure & Ansible role subdirectories.
  • Defining Variables and Defaults.
  • Use of Ansible roles in a playbook.
  • Practical session & documentation on above points.

 

 

 

 

 

Module 9 – Implementing Handlers & handling task failures.

  • Details of Ansible Handlers.
  • Describe the benefits of Ansible Handlers.
  • Managing Task errors in plays.
  • Forcing execution of Handlers after Task failures.
  • Specifying Task failure conditions.
  • Ansible Blocks and Error Handling.
  • Practical session & documentation on above points.

 

Module 10 – Integrating Ansible with GitHub and AWS.

  • Launch of Instances in AWS and configure password-less SSH for those instances.
  • Configure a Control Node locally.
  • Login to GitHub and creation of Repository.
  • Installation of Git client of Control Node and push custom html file to remote GitHub repository.
  • Write Ansible Playbook to Install package, enable services and download the html file in Managed hosts.
  • Practical session & documentation on above points.

 

Module 11 – Automation of Linux Admin Tasks

  • Managing software and subscriptions with Ansible.
  • Optimizing multiple package installation.
  • Gathering Facts about installed packages.
  • Reviewing alternative modules to managed packages.
  • Registering and Subscribing new systems with Ansible.
  • Configuration of YUM repository and Import of RPM GPG key.
  • Managing Users and Authentication with Ansible.
  • Managing the Boot process and scheduled processes with Ansible.
  • Managing services with system and service modules.
  • Managing Storage with Ansible.
  • File system management with Ansible.
  • Managing Network Configuration with Ansible.
  • Practical session & documentation on above points.

 

 

 

 

 

 

Module 12 – Deployment of Jinja2 templates

  • Templating file and Introduction to Jinja2.
  • Building a Jinja2 template.
  • Deploying Jinja2 templates.
  • Managing Templated files and Control Structures.
  • Variable Filters.
  • Practical session & documentation on above points.

 

Module 13 – Managing large projects.

  • Selecting Hosts with Host Pattern.
  • Specifying Hosts as a group.
  • Managing Dynamic Inventories.
  • Contributed Scripts in GitHub.
  • Writing Dynamic Inventory Programs.
  • Practical session & documentation on above points.