O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Ultimate Ansible Bootcamp by School of Devops®

Video Description

The unofficial guide to becoming an EX407 Redhat certified specialist in Ansible automation

About This Video

  • Set up an inventory of a group of servers and configure Ansible to manage those.
  • Write playbooks for base systems configuration.
  • Create roles for automating web server provisioning and configurations.
  • Use galaxy roles to set up a load balancer.
  • Customise roles using group_vars to define your database and application configuration. Secure database passwords with Ansible vault.
  • Deploy applications in a rolling manner with zero downtime

In Detail

Ansible is set to be the standard in the world of IT infrastructure management. It's a rare combination of simplicity meeting sophistication. Its core principle is simple is reflected in all its design choices such as an agentless setup, small footprint, push model, YAML as a language to define infrastructure state and so on. It's easy to setup, easy to write code with, and easy to extend while writing custom modules. At the same time, it offers everything an IT system, networks or a operations/DevOps person needs. Once you set up the environment with the code spaces tool, you start diving into the simple and sophisticated world of Ansible one concept at a time. By the end of this course, you will have mastered Ansible and should be able to use it to automate servers, applications, and understand all the primitives that Ansible offers.

Table of Contents

  1. Chapter 1 : Course Introduction
    1. How to navigate this course 00:04:11
    2. EX407: Red Hat Certified Specialist in Ansible Automation 00:05:56
    3. Have Question, Find Help and Support 00:03:44
  2. Chapter 2 : Introduction to Ansible
    1. What is Ansible Part I: Why Ansible? 00:06:34
    2. What is Ansible Part II: Simplicity, YAML, Push Model, Custom Modules? 00:06:57
    3. What is Ansible Part III: Batteries Included Approach? 00:03:15
    4. What is Ansible Part IV: Scripts vs Ansible 00:03:37
    5. What is Ansible Part V: Infrastructure as a Code? 00:02:12
    6. What is Ansible Part VI: Code vs Data? 00:03:05
    7. What is Ansible Part VII: Idempotence and State Management? 00:05:52
    8. What is Ansible Part VIII: The Ansible Story? 00:04:30
  3. Chapter 3 : Path to Automation with Ansible
    1. Section Introduction 00:00:52
    2. Tasks, Modules, Roles 00:06:45
    3. Inventories and Playbooks 00:05:11
    4. Book Recommendation: Ansible Playbook Essentials 00:01:08
    5. Code Organization Strategies 00:04:27
    6. Introducing Use Case - Devops Demo App 00:04:02
    7. Approach to automate Devops Demo App 00:04:42
  4. Chapter 4 : Setting up the Environment
    1. Section Introduction 00:01:17
    2. Introduction to codespaces 00:06:47
    3. Setting up codespaces locally with docker 00:07:11
    4. Launching codespaces on digital ocean cloud 00:04:49
    5. Managing codespaces 00:04:48
  5. Chapter 5 : Ad Hoc Server Management with Ansible
    1. Section Introduction 00:01:34
    2. Configuring Ansible 00:06:02
    3. Defining a static Inventory 00:05:50
    4. Host Patterns and Ad Hoc Commands 00:08:54
    5. Modules and Desired State Configuration 00:04:59
    6. Invoking Modules, Idempotence 00:06:00
    7. Using common modules 00:07:33
    8. Command Modules and Idempotence 00:07:44
    9. Using ansible-console REPL Shell 00:03:57
  6. Chapter 6 : Playbooks
    1. Section Introduction 00:01:05
    2. YAML Primer 00:05:19
    3. Anatomy of a Playbook 00:06:58
    4. Writing your first Play 00:05:09
    5. Validating and applying Ansible Playbook 00:05:30
    6. Troubleshooting playbook failures 00:04:43
    7. Adding another play for app servers 00:03:37
    8. Nano Project: Create a playbook to deploy a Static Site 00:02:02
  7. Chapter 7 : Roles
    1. Section Introduction 00:01:08
    2. Why do you need roles? 00:03:30
    3. Anatomy of a Role 00:03:36
    4. Code Organization Strategies 00:03:46
    5. Generating Roles Scaffold and Ansible Galaxy 00:02:50
    6. Creating a role for Apache 00:05:22
    7. Writing and applying playbook for app servers 00:03:15
    8. Copying config file, notifications and handlers 00:07:55
    9. Creating a role for PHP 00:05:45
    10. Nested roles and site wide playbook 00:04:54
    11. Nano project: Deploy DevOps Demo App 00:02:15
  8. Chapter 8 : Vars and Templates
    1. Section Introduction 00:01:13
    2. Need to separate data from code 00:03:21
    3. Diving into Jinja2 templates 00:05:14
    4. Understanding Ansible vars, Precedence Levels and Best Practices 00:06:57
    5. Advanced vars concepts 00:06:31
    6. Dynamically defining app version with vars and tasks 00:05:53
    7. Managing app configs with templates and vars 00:09:14
    8. Playing with vars precedence 00:08:14
    9. Registered variables and conditional execution 00:04:52
    10. Discovering facts with setup module 00:04:45
  9. Chapter 9 : Ansible Galaxy
    1. Section Introduction 00:00:39
    2. Tour of Ansible Galaxy 00:08:28
    3. Selecting role for HAProxy 00:05:24
    4. Applying HAProxy role with custom properties 00:04:08
    5. Troubleshooting HAProxy Issues 00:05:29
    6. Nano Project: Setup MySQL database using a galaxy role 00:02:45
    7. Setting up MySQL 00:05:56
    8. Connecting app with the database 00:02:10
    9. Checking in the galaxy roles 00:02:42
    10. Tagging tasks, roles, plays and playbooks 00:04:14
  10. Chapter 10 : Controlling Execution Flow
    1. Overview of Conditionals 00:04:30
    2. Overview of Iterators 00:05:02
    3. Iterating over a list to install packages 00:02:41
    4. Iterating over a dictionary to create users 00:04:16
    5. Using conditionals in tasks and templates 00:03:39
    6. Adding Ubuntu support by conditionally including vars 00:08:17
    7. Making application compatible with Ubuntu 00:06:16
  11. Chapter 11 : Auto Disovery and Manging Multiple Environments
    1. Enabling Facts Caching 00:06:11
    2. Using Magic Variables for Service Discovery 00:06:57
    3. Creating staging environment 00:09:23
    4. Rolling back changes with contra playbooks 00:04:53
  12. Chapter 12 : Vault
    1. Section Introduction 00:01:00
    2. Encrypting a file and using it in a playbook 00:06:09
    3. Using a password file and Rekeying 00:03:57
    4. Vault 1.2 and multiple Vault IDs 00:06:08
    5. Changing Vault IDs and Encrypting Strings in File 00:05:07
    6. Encrypting MySQL passwords with Vault 00:05:26
  13. Chapter 13 : Application Deployments
    1. Section Introduction 00:00:56
    2. Writing tasks for importing database schema 00:05:41
    3. Applying schema updates and Troubleshooting 00:04:47
    4. Creating strategy for rolling updates 00:04:17
    5. Adding pre and post tasks, Tasks delegation, testing with wait_for 00:06:06