GL380 - Ansible

Need something different? Guru Labs has other Linux and security courses and can build a custom course that covers exactly what you need!

The audience for this course is system's administrators desiring to automate provisioning, configuration management, service deployment, operational processes. This course covers all the core Ansible features including: installing and configuring, running ad-hoc commands, understanding modules, creating and using playbooks, variables and inclusion, task control, templates, and roles. The course also covers: dealing with sensitive data via Ansible Vault, integration with Docker and Vagrant, networking, and troubleshooting.

Version: A01

Prerequisites:

Experience with Linux shell, text editing, and basic systems administration needed.

Supported Distributions:
Red Hat Enterprise Linux 8
Recommended Class Length:
3 days
Detailed Course Outline:
  1. Ansible Overview
    1. Why Ansible?
    2. Overview of Architecture
    3. QUIZ: Architecture
    4. Inventory
    5. Inventory Patterns
    6. Inventory Plugins
    7. QUIZ: Inventory and Patterns
    8. DEMO [Required]: Introducing Ansible
  2. Deploying Ansible
    1. Installing
    2. DEMO: Installing Ansible
    3. Configuration Files
    4. DEMO: Configuration Files
    5. Module Syntax Help
    6. Running Ad-Hoc Commands
    7. DEMO [Required]: Ad-Hoc Commands
    8. Dynamic Inventory
    9. DEMO [Required]: Dynamic Inventory
    Lab Tasks
    1. Deploying Ansible
    2. Ad-Hoc Commands
    3. Dynamic Inventories
  3. Playbooks Basics
    1. Writing YAML Files
    2. Playbook Structure
    3. Host and Task Execution Order
    4. Command Modules
    5. Significant Module Categories
    6. File Manipulation
    7. Network Modules
    8. Packaging Modules
    9. System Storage
    10. Account Management
    11. Security
    12. Services
    13. DEMO: Playbooks
    Lab Tasks
    1. Playbook Basics
    2. Playbooks: Command Modules
    3. Playbooks: Common Modules
  4. Variables and Inclusions
    1. Variables
    2. Variables – Playbooks
    3. Variables – Inventory
    4. Variables – Registered
    5. Variables – Magic
    6. Facts
    7. DEMO: Facts
    8. Inclusions
    Lab Tasks
    1. Variables and Facts
    2. Inclusions
  5. Jinja2 Templates
    1. Jinja2
    2. The template Module
    3. Expressions
    4. QUIZ: Jinja2 Templates
    5. Filters
    6. Methods
    7. Tests
    8. Lookups
    9. Control Structures
    10. DEMO: Jinja2 Templates
    Lab Tasks
    1. Jinja2 Templates Basics
    2. Jinja2 Templates
    3. Jinja2 Templates
  6. Task Control
    1. Loops
    2. Loops (cont.)
    3. Loops and Variables
    4. DEMO: Constructing Flow Control
    5. Conditionals
    6. DEMO: Conditionals
    7. Handlers
    8. Tags
    9. Handling Errors
    Lab Tasks
    1. Task Control
  7. Roles
    1. Roles
    2. Role Usage Details
    3. Creating Roles
    4. QUIZ: Role Structure
    5. Deploying Roles with Ansible Galaxy
    6. DEMO: Deploying Roles with Ansible Galaxy
    Lab Tasks
    1. Converting Playbooks to Roles
    2. Creating Roles from Scratch
    3. Ansible Galaxy Roles
  8. Optimizing Ansible
    1. Connection Types
    2. Delegation
    3. Parallelism
    4. Callback Plugins
    Lab Tasks
    1. Optimizing Ansible
  9. Ansible Vault
    1. Configuring Ansible Vault
    2. Vault IDs
    3. Executing with Ansible Vault
    4. DEMO: Configuring Ansible Vault
    Lab Tasks
    1. Ansible Vault
  1. Network Automation
    1. Network Automation
    2. Simple Network Module Examples
    3. Network Modules: Gotchas
    4. Simple IOS Modules Examples
    5. General Purpose ios Modules