Ansible 2 for Beginners
3.8 (89 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
538 students enrolled

Ansible 2 for Beginners

Automate manual tasks for your organization with ease using the highly reliable Ansible 2
3.8 (89 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
538 students enrolled
Created by Packt Publishing
Last updated 4/2017
English [Auto]
Current price: $86.99 Original price: $124.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 4.5 hours on-demand video
  • 1 downloadable resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Configure and manage your infrastructure using Ansible Playbooks
  • Get acquainted with Modules, Playbooks, Roles, and Variables
  • Learn how to apply Conditions and Loops for control flow in your Playbooks
  • Apply Conditions and Loops
  • Create task Blocks and choose the right Ansible Strategy for the job
  • Integrate Ansible with various Cloud Providers such as AWS and Openstack
  • Understand the nuances of Ansible 2 and its new features
  • Provision Environments using Ansible
  • Get introduced to Ansible Galaxy and Tower
  • No prior knowledge of Ansible required. Ansible 2, Python 2.7, and OpenSSH required.
  • Machine with 8 GB RAM preferred. Linux machine or Virtual Machine with Linux installed. The course deploys an Ubuntu desktop Virtual machine running on Virtual box on Windows.

Ansible is one of the most popular tools in the open source orchestration and automation space. This simple, agent-less tool can conquer almost any automation task. Whether you want to manage an entire cloud region, configure network devices, or orchestrate configuration changes across Linux or Windows machines, Ansible is up to the challenge.

In this course, you will get started with Ansible 2.0, including its installation, the problems it solves, and more. We will also walk through creating your very first playbooks. You’ll understand the power of variables and quickly be able to manage environments and implement strategies. You will find out how to integrate with different cloud platforms and be introduced to Ansible Galaxy and Tower, which are Ansible's enterprise tooling for supporting large-scale infrastructure.

By the end of this course, you will be well versed in the basics of Ansible and be able to automate your organizational infrastructure easily.

About the Author

David Cohen

I've been a system administrator, platform engineer, devops engineer, and software developer in everything from small businesses to growing companies (100+ employees) and large tech/engineering firms (10,000+ employees).

Most of my work has centered around Linux and Unix system administration, web security, and software development in Python, Ruby, Javascript, and Go. I've also done stranger things like helping to design two Tier-4 datacenters and being an Infantryman (not at the same time).

On my tutorialinux YouTube channel, I've helped tens of thousands of people learn the basics (and not-so-basics) of system administration, devops, and software engineering.

Who this course is for:
  • Aimed at system administrators and IT professionals who are waiting to automate their organization’s infrastructure using Ansible 2. They have no prior knowledge on Ansible. Installation of Ansible and Ubuntu on a VM is covered in the course.
Course content
Expand all 33 lectures 04:21:36
+ Ansible 2 – What's It All About?
7 lectures 39:48

This video provides an overview of the entire course.

Preview 04:25

In this section, you'll learn about the most popular uses of the Ansible automation tool. It's a tool that you can use to manage the full life cycle of your infrastructure.

What Is Ansible?

Ansible is more than just configuration management, like many other tools in this space. It's also much more lightweight than competitors like Puppet and Chef—to configure a server, all you need is an SSH login and Python 2 installed.

Why Ansible?

We'll use a simple example: installing and configuring an nginx server and a simple static HTML website, first using bash and then using Ansible.

Demonstration – From Bash to Ansible

This video gives you an overview of how the course is structured. The focus is on practical, real-world applications, since that prepares you for real-life application of this knowledge.

Course Layout

In this video, we'll cover the basic Ansible vocabulary. You'll have many basic questions answered.

Basic Ansible Vocabulary

In this video, you'll learn about the new features and improvements that Ansible 2.0 offers.

New Features in Ansible 2.0
+ Setting up the Learning Environment
5 lectures 28:00

In this video, we'll set up an environment that you can use to safely practice everything you see in this course.

Preview 03:02

In this video, you'll learn the three most popular ways to install Ansible, and decide which one is right for you.

Installing Ansible

In this video, we'll cover how to build Ansible directly from its repository. This method is useful if you absolutely need a bleeding-edge feature, or if you're interested in contributing to the Ansible source code.

Bleeding-Edge Ansible Installation

In this video you'll learn how to simulate test machines with LXC (Linux Containers). LXC is a lightweight precursor to Docker which will let us configure some test hosts that we can run Ansible against.

Setting up our Test Environment

Ansible only requires two things: Python 2 and a running SSH service. In this video, I'll show you the 10-second process that prepares a brand-new host for Ansible.

Target Machine Requirements
+ Jumping into Ansible 2
8 lectures 01:24:50

In this video, you'll learn where Ansible looks for its primary configuration file, and the different ways in which you can approach configuring Ansible.

Preview 05:16

How does Ansible know which hosts to configure? The Ansible Hosts (Inventory) file!

Ansible Hosts Inventory File

Ad-Hoc Commands are simple one-off commands that perform a single action on a target host. These simple replacements for small bash scripts or 'for' loops are run from the command-line, and work well for cases where a full-featured Playbook is overkill. You'll see Ad-Hoc commands for doing several things across one server, or many servers at once

Ad-Hoc Commands

Playbooks are the Ansible feature you'll be working with on most projects. In this video, you'll learn the three components that make a Playbook what it is: tasks, templates, and handlers.

Introduction top playbooks

In this video, you'll learn how to structure your playbooks for maximum readability, predictability, and flexibility. You'll learn aboutRoles, and how they can help you reuse code. Note: For this course, we're not using every available Playbook feature, because it can make things excessively complex. We're focusing on the practical 90% of features that you'll be using every day.

Playbook Structure

In this video, you'll learn what Ansible modules are and how they help you get things done.

Introduction to Modules

In this video, you'll learn about some of the most popular (and useful!) Ansible modules. At the end of this video, you'll have a list of modules to dig into, which you can use to manage.

Common Modules

In this video, you'll learn about how Ansible deals with Variables and Facts.

Variables and Facts
+ A Real-World Playbook
2 lectures 26:45

In this video, you'll see a real-life web application deployment. We'll be setting up Mattermost, an open-source alternative to the popular Slack team-chat application.

Preview 12:02

This video reviews everything we just saw in the application deployment. After watching this video, you'll start to have an intuitive 'real-world' grasp of how a playbook works.

Real-Life Playbook Walkthrough
+ Loops, Blocks, Strategies, and Galaxies
8 lectures 51:32

While developing Ansible automation, you'll be doing a lot of troubleshooting as part of the process. In this video, I'll show you themost common Ansible features that you'll use for debugging, along with some of the most common Ansible errors you'll encounter.

Preview 13:06

In this video, you'll learn about the control flow that you can use in your Tasks and Plays. At the end of this video, you'll be comfortable with Ansible iteration constructs like.

Conditionals and Control Flow

In addition to control flow in your YAML files, we can also introduce control flow for our file content in your Jinja2 templates.

Templating, Control Flow, and Iteration in Jinja2

We have been using YAML to write your Playbooks, Plays, Tasks, and Handlers. Now it's time to dig in for a moment and learn some of the rules you need to keep in mind when working with this markup language.

YAML Basics

Task Blocks are one of the useful new features in Ansible 2.0. They allow you to group related tasks together, so you can tie control-flow to larger chunks of actions. This is something that comes in handy for larger actions which are made up of several tasks.

Ansible Blocks

Ansible has two built-in execution strategies that affect how it applies tasks to hosts. Knowing whether you want to use the linear (default) strategy or the free strategy can make the difference between completing a deployment in minutes or hours

Performance and Execution Strategies

Ansible Galaxy allows you to leverage open-source roles that other people in the Ansible community have created. It can be useful for studying code that others have written, or for quickly getting some functionality that you need without having to write it from scratch.

Ansible Galaxy

In this video, I'll cover some of the basic security features. This is essentially a quick list of "best practices" and "things to watch out for." Using Ansible for provisioning, deployment, configuration management, and orchestration does not absolve you of managing the security of your'll still have to invest thought and planning into how you do this.

+ Ansible in the Cloud
3 lectures 30:41

Ansible can be used to provision services on all major cloud providers: Amazon Web Services (AWS), OpenStack, Google Cloud, Microsoft Azure, and more. There are also Ansible modules for on-premise virtualization and cloud solutions, which makes it really easy to get started.

Preview 03:01

In this demonstration, you'll see how the Mattermost Deployment playbook was ported to Amazon AWS.

Ansible AWS Demo

This video will give you a quick taste of Ansible's commercial solution: Ansible Tower. This is a web application wrapper around the core open-source Ansible toolset.

Ansible Tower