TTDV7580: Working with Ansible | Ansible Foundations

Become an EPIC Affiliate

To view the class schedule you need to become an Affiliate

  • Largest “Guaranteed To Run” public technical training schedules available
  • Easy to become an Affiliate – no charge or fee
Become an EPIC Affiliate

already an Affiliate?  Login

About this Course

Hands-on Ansible / Introduction to Automation with Ansible is a three-day, lab-intensive course geared for toward those responsible for automation of configuration management; consistent and repeatable application deployment; provisioning and deployment of development, testing, and production servers; and (optionally) integration with DevOps CI/CD workflows. Throughout the course participants will explore core Ansible features such as automatic provisioning, configuration management, service deployment and operational processes. This course also covers enterprise topics such as managing sensitive data (Ansible Vault), Ansible Tower, and integrating with Docker (optional). Attendees might include Linux system administrators, DevOps engineers, infrastructure automation engineers, and systems design engineers.

Audience Profile

This is an Introductory level course for experienced Linux system administrators, DevOps engineers, infrastructure automation engineers, and systems design engineers. Ideally students should have familiarity with basic Python scripting. Attendees without programming skills can follow along with the scripting portion of the labs.

At Course Completion

This course is approximately 50% hands-on, combining expert lecture, real-world demonstrations and group discussions with machine-based practical labs and exercises. Working in a hands-on learning environment led by our expert practitioner attendees will explore how to:
• Describe Ansible concepts and install Red Hat Ansible Engine (optional – we can pre-install is as well if desired, depending on the audience)
• Deploy Ansible and Configure Ansible to manage hosts and run ad hoc Ansible commands.
• Implement playbooks
• Write a simple Ansible playbook and run it to automate tasks on multiple managed hosts.
• Manage variables and facts
• Write playbooks that use variables to simplify management of the playbook and facts to reference information about managed hosts.
• Implement task control; Manage task control, handlers, and task errors in Ansible playbooks.
• Deploy files to managed hosts
• Deploy, manage, and adjust files on hosts managed by Ansible.
• Manage large projects
• Write playbooks that are optimized for larger, more complex projects.
• Simplify playbooks with roles
• Use Ansible roles to develop playbooks more quickly and to reuse Ansible code.
• Troubleshoot Ansible
• Troubleshoot playbooks and managed hosts.
• Automate Linux administration tasks
• Automate common Linux system administration tasks with Ansible.

Outline

Ansible Overview
• Overview of Architecture
• Overview of Deployments
• Inventory

Deploying Ansible
• Installing
• Configuration Files
• Running Ad Hoc Commands
• Dynamic Inventory

Playbooks
• Writing YAML Files
• Modules

Variables and Inclusions
• Variables
• Facts
• Inclusions

Task Control
• Constructing Flow Control
• Handlers
• Tags
• Handling Errors

Jinja2 Templates
• Jinja2 Templates
• Jinja2 Templates

Roles
• Role Structure
• Creating Roles
• Deploying Roles with Ansible Galaxy

Optimizing Ansible
• Configuring Connection Types
• Configuring Delegation
• Configuring Parallelism

Ansible Vault
• Configuring Ansible Vault
• Executing with Ansible Vault

Troubleshooting Ansible
• Troubleshooting Playbooks
• Troubleshooting Managed Hosts

Ansible Tower
• Ansible Tower overview
• Installing
• Account management
• Hosts
• Jobs

Optional: Ansible in a DevOps Environment
• Provisioning Vagrant Machines
• Deploying Vagrant in a DevOps Environment
• Deploying Docker in a DevOps Environment

Prerequisites

Attendees should have incoming experience similar to the topics listed in the course(s) below or should have attended these as a pre-requisite:
• TTPS4800 Introduction to Python Programming Basics – 3 days
• TTLX2103 Introduction to Linux – 3 days