
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Explore advanced Ansible concepts and real-life use cases through hands-on playbooks, coding exercises, and demos, including roles, asynchronous actions, error handling, Jinja2 templating, lookups, vault, and dynamic inventory.
Recap of Ansible basics and advanced topics, highlighting automation of provisioning, configurations, patching, and deployments across public and private clouds, with modules, inventory, variables, conditionals, and loops.
Set up a development environment for Ansible, spin up VMs via VirtualBox or Docker, and install and configure databases and web servers on target systems.
Demonstrates setting up an Ansible environment with a controller and two target servers using Oracle VirtualBox, installing Ansible, configuring inventory, and validating connectivity with ad hoc ping.
Set up an Ansible environment using Docker containers to run playbooks against multiple target systems. Instantiate lightweight Ubuntu containers with SSH, create an inventory, and ping them to verify connectivity.
Demonstrates using the Udemy coding exercises, with inventory and playbook files, updating the playbook for the target server, checking solutions, and accessing documentation, Q&A, and answer keys.
Explore building a basic web application with Python Flask and MySQL on a single server, a use case for deploying with Ansible across monolithic or distributed architectures.
Demonstrates deploying a simple web application from scratch using manual method, including server identification, installing Python dependencies, and setting up MySQL and Flask. Automate this process later with Ansible playbooks.
Create an inventory file and a playbook to deploy a monolithic web application on a single server, outlining tasks and structure for an advanced Ansible playbook.
Automate web app deployment with an Ansible playbook, covering inventory and host grouping, dependency installation, MySQL setup, and copying App.py to start the web service.
Define host variables in a separate host_vars file and use group_vars for better separation, and include modular tasks like deploy_db.yaml and deploy_web.yaml to reuse tasks.
Learn to modularize an Ansible playbook by moving variables to host_vars and group_vars, splitting tasks into deploy_db and deploy_web, and using include for reusable server deployments.
Organize Ansible playbooks with roles, creating a standard folder structure and auto-initialized README. Apply roles to separate MySQL DB and Flask Web servers with the roles directive and Ansible Galaxy.
Modularize your infrastructure by creating and organizing roles in Ansible, moving tasks into role-specific main.yml files for reuse. Share these roles with the Ansible Galaxy community.
Execute long-running tasks asynchronously in Ansible using the async directive and poll directive to manage timeouts, then register results and enable parallel execution with async_status and ansible_job_id.
Learn how Ansible strategy governs playbook execution, comparing linear (default), free, and serial batch modes, and tune parallelism with forks, percentages, and Ansible.cfg.
Learn error handling in Ansible playbooks by managing failures across multiple servers with any_errors_fatal and ignore_errors, and using register and fail_when to detect errors.
Master Jinja2 templating in ansible by using variables in curly braces and testing with the debug module, applying filters such as upper, lower, title, replace, default, min, max, and join.
Explore lookups in advanced Ansible topics by reading credentials from a comma-delimited credentials.csv file and retrieving passwords for target hosts during playbooks.
Secure credentials with Ansible Vault by encrypting the inventory, using options such as ask-vault-pass, vault-password-file, or a python script, and viewing or creating encrypted files.
"This ansible course is very helpful for the folks who has some ansible background. At the end of the labs you can write ansible yamls without googling. Really good for Ex-407 exam" - Student, Udemy
What is in this Course?
This is the second course in the series on Ansible and in this course we will be focusing on advanced concepts in Ansible and some real life use cases. This course is for those with basic understanding of Ansible and are willing gain expertise in developing with Ansible.
The course introduces advanced topics such as roles, jinja2 templating, lookups, error handling, vault etc. The course also discusses strategies, filters and plugins and how to develop custom ones yourself.
Why should I enroll in THIS course?
Lectures backed by animated slides makes it simple and easy to understand. This is the only course that provides Coding Exercises were you can practice Ansible Playbooks right in your browser.
"Very good, structured and the most important - HANDS ON - course." - Student, Udemy
What is Ansible?
Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy. Avoid writing scripts or custom code to deploy and update your applications— automate in a language that approaches plain English, using SSH, with no agents to install on remote systems.
Legal Notice:
Ansible® and Ansible Tower® are registered trademarks of Ansible, Inc. in the United States and other countries. This course is not certified, accredited, affiliated with, nor endorsed by Ansible, Inc.