Professional Documents
Culture Documents
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.
o Ansible Security
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.
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.
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.
In this video, we'll cover the basic Ansible vocabulary. You'll have many basic questions answered.
In this video, you'll learn about the new features and improvements that Ansible 2.0 offers.
o Task blocks (which can make your code easier to read and reason about)
In this video, we'll set up an environment that you can use to safely practice everything you see in this
course.
In this video, you'll learn the three most popular ways to install Ansible, and decide which one is right for
you.
o How to install Ansible through your package manager (if you just want a low-fuss install
to learn with )
o How to install Ansible through their third-party repository (PPA) in Ubuntu (if you want
something more up-to-date)
o How to install Ansible through pip (if you've already got a Python development
environment set up)
o Use the Ansible-provided script to set up your shell environment so that you can use
your bleeding-edge Ansible code
2.3 Bleeding-Edge Ansible Installation
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.
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.
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.
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.
How does Ansible know which hosts to configure? The 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
o Install a package
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.
In this video, you'll learn how to structure your playbooks for maximum readability, predictability, and
flexibility. You'll learn about Roles, 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.
In this video, you'll learn what Ansible modules are and how they help you get things done.
o Managing state versus managing process, and how it can make your life easier
In this video, you'll learn about how Ansible deals with Variables and Facts:
o How Ansible gathers facts about a target host, and when you might want to disable this
behavior
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.
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.
While developing Ansible automation, you'll be doing a lot of troubleshooting as part of the process. In
this video, I'll show you the most common Ansible features that you'll use for debugging, along with
some of the most common Ansible errors you'll encounter.
o Doing troubleshooting
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:
o with_items
o with_dict
o when
o register
o changed_when
o failed_when
In addition to control flow in your YAML files, we can also introduce control flow for our file content in
your Jinja2 templates.
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.
o Learn some of the rules of YAML
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 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
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.
5.8 Security
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 systems...you'll
still have to invest thought and planning into how you do this.
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.
In this demonstration, you'll see how the Mattermost Deployment playbook was ported to Amazon
AWS.
o Creating EC2 security groups to manage access and protect our infrastructure
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
o An API that you can integrate into the rest of your automation tooling.