Ultimate Ansible Bootcamp by School of Devops®

Unofficial Guide to EX407 Redhat Certified Specialist in Ansible Automation

4.71 (629 reviews)
Udemy
platform
English
language
IT Certification
category
instructor
5,289
students
8 hours
content
Jul 2020
last update
$89.99
regular price

What you will learn

What is ansible, why its needed and how it works

How to configure ansible and setup static/dynamic inventories

Ad hoc server management, running jobs in parallel

Managing systems entities using ansible Modules

Writing Playbooks to define the state of infrastructure as a code

Creating modular, reusable code with Roles

Creating dynmic code with vars and templates

Using Ansible Galaxy

Encrypting sensitive data with Vault

Service Discovery and managing Multiple Environments

Application Deployment Strategies, Rolling Updates

Description

Ansible is set to be the standard in the world of IT Infrastrcuture Management. It's a rare combination of simplicity meeting sophistication. Its core principle being simple is reflected in all its design choices such as agentless setup, small footprint, push model, YAML as a language to define infrastructure state etc. Its easy to setup, easy to write code with, easy to extend while writing custom modules. At the same time it offers everything a IT Systems, Networks or a Oprations/Devops person needs. It allows you to do all of following by replacing array of dedicated tools. 

  • Whether you want to manage systems at scale
  • run ad-hoc tasks on a group of servers
  •  automate systems and application configurations,
  • do change management, 
  • deploy applications in a orchestrated way
  • provision cloud servers or manage network or storage devices


This course is been created to help you master Ansible one step at a time. It starts with the fundamental concepts related to Infrastructure as Code, what ansible is, what is Idempotence, what makes Ansible stand apart. Then it helps you relate ansible to your project by taking up a use case. Once you setup the environment with the codespaces tool, you start diving in to the simple and sophisticated world of ansible one concept at a time. As part of this course you would, 

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

By the end of this course you would have mastered ansible and should be able to use it to automate  servers, applications and understand all the primitives that ansible offers. 



Content

Course Introduction

How to Navigate this course
EX407: Red Hat Certified Specialist in Ansible Automation
Have Question, Find Help and Support
Important Resources for this Course

Introduction to Ansible

What is Ansible Part I: Why Ansible ?
What is Ansible Part II: Simplicity, YAML, Push Model, Custom Modules
What is Ansible Part III: Batteries Included Approach
What is Ansible Part IV: Infrastructure as a Code
What is Ansible Part V: Code vs Data
What is Ansible Part VI: Idempotence and State Management
What is Ansible Part VIII: The Ansible Story
Test your knowledge

Setting up the Environment

Section Introduction
Introduction to codespaces
Setting up codespaces locally with docker
LAB 1: Setting up a codespaces environment with Docker
Launching codespaces on digital ocean cloud
Managing codespaces

Path to Automation with Ansible

Section Introduction
Tasks, Modules, Roles
Inventories and Playbooks
Book Recommendation: Ansible Playbook Essentials
Code Organization Strategies
Introducing Use Case - Devops Demo App
Approach to automate Devops Demo App

Ad Hoc Server Management with Ansible

Section Introduction
Configuring Ansible
LAB 1: Adding Ansible Configs
Defining a static Inventory
LAB 2: Creating Host Inventory
Host Patterns and Ad Hoc Commands
LAB 3: Ad Hoc commands
Modules and Desired State Configuration
LAB 4: Using modules to manage the state of infrastructure
Invoking Modules, Idempotence
Using common modules
Command Modules and Idempotence
Using ansible-console REPL Shell

Playbooks

Section Introduction
YAML Primer
Anatomy of a Playbook
Writing your first Play
LAB 1: Writing Playbook for Base System Configurations
Validating and applying Ansible Playbook
LAB 2: Validating Syntax
Troubleshooting playbook failures
LAB 3 :Error Handling and Debugging
Adding another play for app servers
LAB 4: Adding Additional Play
Nano Project: Create a playbook to deploy a Static Site
Cleaning up lb node after deploying static site

Roles

Section Introduction
Why do you need roles?
Anatomy of a Role
Code Organization Strategies
Generating Roles Scaffold and Ansible Galaxy
Creating a role for Apache
LAB 1: Configuring app server environment with Roles
Writing and applying playbook for app servers
LAB 2: Writing Tasks to Install and Start Apache Web Service
Copying config file, notifications and handlers
LAB 3: Managing Configurations
Creating a role for PHP
LAB 4: Create a role to install php
Nested roles and site wide playbook
LAB 5: Systems role, dependencies and nested roles
Nano project: Deploy Devops Demo App

Vars and Templates

Section Introduction
Need to separate data from code
Diving into Jinja2 templates
Understanding ansible vars, Precedence Levels and Best Practices
Advanced vars concepts
Dynamically defining app version with vars and tasks
Managing app configs with templates and vars
LAB 1: Templates and Variables
Playing with vars precedence
LAB 2: Beyond defaults - Playing with vars precedence
Registereed varibles and conditional execution
LAB : 3 Registered Variables
Discovering facts with setup module

Ansible Galaxy

Section Introduction
Tour of Ansible Galaxy
Selecing role for HAProxy
Applying HAProxy role with custom properties
Troubleshooting HAProxy Issues
Nano Project: Setup MySQL database using a galaxy role
Setting up MySQL
Connecting app with the database
Checking in the galaxy roles
Tagging tasks, roles, plays and playbooks

Controlling Execution Flow

Overview of Conditionals
Overview of Iterators
Iterating over a list to install packages
LAB 1: Control Structures
Iterating over a dictionary to create users
LAB 2: Iterating over a hash table/dictionary to create users
Using conditionals in tasks and templates
LAB 3: Refactoring apache playbook to add support for Ubuntu
Adding Ubuntu support by conditionally including vars
LAB 4: Selective execution by using tags
Making application compatible with ubuntu

Auto Disovery and Manging Multiple Environments

Enabling Facts Caching
Using Magic Variables for Service Discovery
LAB 1: Magic Variables for Service Discovery, Multiple Environments
Creating staging environment
LAB 2: Create staging environment
Rolling back changes with contra playbooks

Vault

Section Introduction
Encrypting a file and using it in a playbook
LAB 1: Encrypting and decrypting with single key
Using a password file and Rekeying
Vault 1.2 and multiple Vault IDs
Changing Vault IDs and Encrypting Strings in File
LAB 2: Multiple vault ids and encrypting strings
Encrypting mysql passwords with Vault

Application Deployments

Section Introduction
Writing tasks for importing database schema
Applying schema updates and Troubleshooting
Creating strategy for Rolling updates
Adding pre and post tasks, Tasks gelegation, Testing with wait_for

Screenshots

Ultimate Ansible Bootcamp by School of Devops® - Screenshot_01Ultimate Ansible Bootcamp by School of Devops® - Screenshot_02Ultimate Ansible Bootcamp by School of Devops® - Screenshot_03Ultimate Ansible Bootcamp by School of Devops® - Screenshot_04

Reviews

Sivakumaar
January 23, 2023
It would be much better in detail on what each part is used and why its used. Looks like the content was a recap for a user who has already know much of setting up artifacts for using ansible.
Tony
May 11, 2022
Unfortunately for some tasks I get the following error messages when committing the: "Failed to download metadata for repo 'appstream': Cannot prepare internal mirroslist: No URLs in mirrorlist", "rc": 1, "results": []} Dudes, the setup with roles after section 51 where you asked to cleanup, you forgot to mention you need to reclone the repo as it disappears. Did that. Lost all previous work obviously. Following the roles set up all the way to section 61, and unfortunately same errors appear with installing httpd. Pretty useless environment if it breaks. happens with ntpd, git, tree. Obviously since I doing this now the only difference is that I'm using more up-to-date version of docker-compose, git, etc
Florian
August 1, 2021
There were several mistakes with the syntax in yml beside yaml, json and ini file syntax mixed up. For example in the inventory files which do not use yaml and had to be converted by me. I would prefer to use a single language for configuration files unless I do not mention or explain another. Secondly I would prefer to use a repository with the same version of tool used in the course. The course was made using ansible 1.4, meanwhile 1.9 is out and there are massive changes. Also the docker-Images for the machines are not using systemd or sysv-init but plain ssh, so neither service- nor systemd modules succeeded and i had to rewrite all handlers and service-tasks to use kill and binary-calls to restart those.
Mark
July 15, 2021
This course provides an integrated learning environment using a suite of Docker containers. Unfortunately, at this time, there are some issues as a result of the version of CentOS being used. The last section also ends rather abruptly. These niggles aside, this is a well put together course and I got a lot out of it.
Josh
February 1, 2021
This is the second Udemy Ansible course I have taken and it has been very helpful and in depth. I especially appreciated the docker images and workspace. Although there were several things I could not do on them as they are CentOS 6 and unable to install software now.
Rajesh
October 6, 2020
Course topics and hand lab materials are good. There is no support from trainer for the errors received while setting up the lab environment and from labs. If the trainer find way to support student queries then that will be good for students..
Nattapon
July 6, 2018
Music too lound. hard to hear speaker. zoom in-out with magnify glass make eye dizzy. Content is very good
Mirza
July 2, 2018
Instructor is too fast and should slow down. To many screen changing going on. Not a very discipline instructor.
Nitin
May 9, 2018
commands not working, Question and Answers asked 4 days back not answered till now.course is too fast.
udemy.com@trancecode.co.uk
May 6, 2018
The explanations in the videos are good, however any student who wants to follow along and make notes has to spend way too much time co-ordinating between the various sources such as links to slides and links to documentation. This course would be massively more user friendly and time -efficient if the correct links for each video had been placed into the text section for each video. That is how the udemy platform is intended to work, and the perception that these sections have been quickly cut & pasted to here from the free course Gourav provides on his superb schoolofdevops.com website is inescapable. Please, Please fix this glaring error to save on much unnecessary duplicated effort to your future students who will be taking this otherwise excellent course.
Tarun
May 4, 2018
Overall the instructor has very good knowledge about the topic and the first theory and practical approach is also really good. However, just a few points from what I have seen till completing half of the course. 1. The background music is quite loud so if it can be reduced or can be played only during the logo display. 2. In some videos, the movement between the slides is too quick. 3. If possible please remove the magnifier it makes the text hard to read on slides. 4. Please provide a single file for all the slides as there are many files on the link provided. This course is the best course I have seen on Ansible till now it can be made the best one on Udemy I believe if the above points can be fixed. Looking forward to more such great courses. Thanks
Sanjib
May 3, 2018
Well , I always wanted to learn devops and get into the learning mode. I personally like Gourav's teaching style and the way he explains the topic from the basics
Jurij
May 1, 2018
Missing links at Course&Contents. You get the very good basements and best practice of ansible. Author get you his know how. Very good course.
Sagar
February 23, 2018
Thank you, It was very helpful course that will have a big impact on my job role. I really enjoyed the course and feel it will benefit my role, and its easily applicable to my work. Thoroughly enjoyable, informative and stimulating. Excellent course, really well delivered.
Vijayboopathy
February 21, 2018
I loved this course. I had no prior knowledge in Ansible. After finishing this course, I am sure that I'll be able to manage my organization's infra using Ansible. Highly recommended!

Charts

Price

Ultimate Ansible Bootcamp by School of Devops® - Price chart

Rating

Ultimate Ansible Bootcamp by School of Devops® - Ratings chart

Enrollment distribution

Ultimate Ansible Bootcamp by School of Devops® - Distribution chart
1271900
udemy ID
6/28/2017
course created date
11/20/2019
course indexed date
Bot
course submited by