Module 1: Introduction to Ansible
Module 2: Using Advanced Ansible solution
Module 3: Managing Systems with Ansible
Module 4: Sample Labs
Module 1:
Lesson 1 - Installing Ansible
- Understanding Ansible
- Host Requirements
- Installing Ansible on the Control Node
- Preparing Managed Nodes
- Verifying Ansible Installation
Lab: Installing Ansible
Lab Solution
Lesson 2 - Setting up a Managed Environment
- Setting up Static Inventory
- Understanding Dynamic Inventory
- Understanding Ansible Configuration Files
- Managing Ansible Configuration Files
Lab: Setting up an Ansible Managed Environment
Lab Solution
Lesson 3 - Using Ad Hoc Commands
- Using Ad Hoc Commands
- Understanding Ansible Modules
- Using ansible-doc to get Module Documentation
- Introduction Essential Ansible Modules
Lab: Using Ad Hoc Command
Lab Solution
Lesson 4 - Getting Started with Playbooks
- Using YAML to Write Playbooks
- Verifying Playbook Syntax
- Writing Multiple-Play Playbooks
Lab: Getting Started with Playbooks
Lab Solution
Lesson 5 - Working with Variables and Facts
- Understanding Variables
- Using Variables
- Understanding Variable Precedence
- Managing Host Variables
- Using Multi-valued Variables
- Using Ansible Vault
- Working with Facts
- Creating Custom Facts
Lab: Working with Variables and Facts
Lab Solution
Module 2:
Lesson 6 - Using Task Control
- Using Loops and Items
- Using Register Variables with Loops
- Using when to Run Tasks Conditionally
- Testing Multiple Conditions
- Using Handlers
- Using Blocks
- Dealing with Failures
Lab: Using Task Control
Lab Solution
Lesson 7 - Deploying Files
- Using Modules to Manipulate Files
- Managing SELinux File Content
- Using Jinja2 Templates
- Using Control Structures in Jinja2
Lab: Deploying Files with Templates
Lab Solution
Lesson 8 - Using Ansible Roles
- Understanding Directory Structure Best Practices
- Understanding Ansible Roles
- Using Ansible Galaxy for Standard Roles
- Using the Ansible Galaxy Command Line Tools
- Creating Custom Roles
- Managing Order of Execution
- Understanding RHEL System Roles
Lab: Using Ansible Roles
Lab Solution
Lesson 9 - Using Rhel System Roles
- Understanding RHEL system Roles
- Installing RHEL System Roles
- Using the RHEL SELinux System Role
- Using the RHEL TimeSync System Role
Lab: Using RHEL System Roles
Lab Solution
Lesson 10 - Using Ansible in Large Environment
- Managing Inventory
- Addressing Host Patterns
- Configuring Parallelism
- Organizing Directory Structure
Lab: Using Ansible in Large Environments
Lab Solution
Lesson 11 - Troubleshooting Ansible
- Managing Ansible Logs
- Using the Debug Module
- Using Check Mode
- Using Modules for Troubleshooting and Testing
- Troubleshooting Connection Issues
- Analyzing Playbooks Errors
- Avoiding Errors in Playbooks Best Practices
Lab: Troubleshooting Ansible
Lab Solution
Module 3:
Lesson 12 - Managing Software with Ansible
- Understanding Modules Related to Software Managment
- Implementing a Playbook to Manage Software
Lesson 13 - Managing Users
- Understanding Modules Related to User Managment
- Implementing a Playbook to Manage Users
Lab: Managing Users
Lab Solution
Lesson 14 - Managing Processes and Tasks
- Understanding Modules for Managing Processes and Tasks
- Implementing a Playbook to Manage Processes and Tasks
Lab: Managing Processes and Tasks
Lab Solution
Lesson 15 - Managing Storage
- Understanding Modules for Managing Storage
- Implementing a Playbook to Manage Storage
Lab: Manage storage
Lab Solution
Lesson 16 - Managing Networking
- Using Network Roles for Network Managment
- Understanding Modules for Network Managment
- Using Ansible to Manage IPv6
Lab: Managing Network
Lab Solution
Module 4:
Sample labs in the end of lessons