Ansible Advanced Course
Introduction
Course Introduction
Hello and welcome to the Ansible Advanced Course. I’m Mumshad Mannambeth, your instructor for this course. As the second installment in our Ansible series, this course builds on the foundational concepts introduced in the Labs: Ansible for the Absolute Beginners course.
Throughout this course, you will deepen your Ansible expertise through engaging lectures, detailed explanations, and practical demonstrations. You will have the opportunity to install and configure Ansible, automate deployments, and master best practices by working on real-world projects—such as deploying the KodeKloud e-commerce application.
Each lab is designed to provide you with:
- Instant access to a terminal connected to an Ansible control node and managed nodes.
- A quiz portal that validates your work in real-time by checking playbook syntax, configuring test environments, applying your playbooks, and verifying task completion—all within minutes.
Quick Tip
Remember, every lecture in this course is paired with interactive labs to reinforce your learning and boost your confidence with live Ansible commands.
Below is an example of how to access a remote host via SSH:
[osboxes@ansiblecontroller ~]$
[osboxes@ansiblecontroller ~]$ ssh 192.168.1.114
The authenticity of host '192.168.1.114 (192.168.1.114)' can't be established.
ECDSA key fingerprint is SHA256:7s4hBLO4E0QfQfGA/2J/p2QHomJTYB/qHQInXJ802LE.
ECDSA key fingerprint is MD5:84:2e:6d:a7:0d:87:97:34:cf:17:f8:8f:1b:6b:7e:ba.
Are you sure you want to continue connecting (yes/no)?
In the labs, you will also learn directory management and how to develop Ansible playbooks. For instance, during a quiz you might need to navigate to a playbook directory and create necessary subdirectories as illustrated below:
[thor@ansible-controller ~]$ cd playbooks/web-playbooks/
[thor@ansible-controller web-playbooks]$ mkdir host_vars
[thor@ansible-controller web-playbooks]$
In another scenario, you might be asked to update configuration values in your playbooks, like so:
ansible_host: 172.2
Subsequently, you will run Ansible playbooks which are validated by our quiz system. The following terminal output example demonstrates the verification of network configurations:
ip a | grep eth1
inet 172.25.0.0/24 brd 172.25.0.255
Every lecture in this course features challenging interactive lab exercises. You might check your Ansible installation version or update configuration files using commands similar to the examples below:
$ ansible --version
ansible 2.7.13
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/thorn/.ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/site-packages/ansible
executable location = /bin/ansible
python version = 2.7.5 (default, Jun 20 2019, 08:28:36)
[thorn@ansible-controller ~]$ vi /tmp/ansible_version.txt
[thorn@ansible-controller ~]$
Course Objectives
In this lesson, you will cover essential Ansible concepts including:
- Inventory management
- Playbooks development
- Modules, variables, and facts usage
- Installation and configuration of the Ansible control node and managed nodes
You will also learn how to run ad hoc commands, craft simple shell scripts using Ansible commands, and develop multiple playbooks employing a variety of modules.
Additional topics include:
- Dynamic inventories, variables, and facts management
- Role creation and reusability
- Secure storage of sensitive data with Ansible Vault
- Navigating the Ansible documentation effectively
- Creating robust configuration templates using Jinja2
Supplementary lectures in this course address prerequisites like shell scripting, package installation, and configuring services and firewall rules. For any questions, our dedicated Slack community is available for additional support.
That’s all for now. I look forward to guiding you through the advanced concepts of Ansible and seeing you succeed in the course!
Watch Video
Watch video content