This course is aimed at total beginners. I don't assume any prior Ansible knowledge.

We start by explaining why automation is needed in the age of virtual machines and cloud instances. Then we move to configuration management tools and where Ansible stands against other similar-purpose tools like Chef and Puppet.

In the second part, we build the infrastructure needed to run our labs. We use Vagrant for this. Again, I don't expect that you've used Vagrant before as I briefly explain it.

Later on, we build our first application stack using Ansible. It's a web application using Apache, PHP, MySQL (the LAMP stack). I chose Laravel for a PHP framework. On top of this we deploy an Nginx reverse proxy load-balancer. The Ansible topics you learn through this project are numerous: playbooks, vars, changed_when conditionals, among others. We also cover a number of useful Ansible modules like apt, file, copy, and composer.

The second project in this course is deploying another web application stack using NodeJS (the MEAN stack), we'll uncover some more Ansible terminologies and best practices.

The last part of the course handles Amazon AWS cloud services. Ansible has a ton of modules for managing virtually all sorts of AWS components. Since this is an introductory course, we'll cover how to create, start, and configure an EC2 instance from scratch using Ansible only. Then we'll see how to stop it and finally terminate it,