Introduction to Ansible Transcripts
Lecture: Working with Data
0:00 In the previous chapter, we started our first Playbook got comfortable with inventory files roles, templates, and tasks within those roles.
0:08 Now we're going to enhance our Playbook by setting variables that can be reused and greatly increase
0:12 the maintainability of the Playbooks that we write. Reading environment variables particularly
0:16 for sensitive information that we don't want to keep stored in files or that may vary from one server to another
0:22 and therefore we don't have the ability to hard code in a variables file. Let's take a look at using templates
0:27 as a different type of input data than variables but incredibly useful in their own way. And of course our variables often store
0:32 very sensitive information that we would want to encrypt so that we can add it to source control but not want to expose it to anyone as plain text.
0:39 As we left our last Playbook when ended the previous chapter our first Playbook had an inventory file a top-level YAML file, a single role named common
0:47 with two tasks files main.yml and new_user.yml We're first going to improve our Playbook by adding variables under the group_vars directory
0:55 and we'll see how we can add variables to the all file or the files that would be specific only to a single role.
1:01 We'll then take a look at how we can use templates to configure services such as the Nginx web server and we'll combine the two using variables
1:08 and templates as a very flexible way to handle configuration management. For example, let's say we have a variable named fqdn
1:14 which stands for fully qualified domain name. That could be stored in the group_vars/all file and then we would have a template file
1:20 for the Nginx configuration, and we could use that variable fqdn within the template file. We'd keep separation between the variables stored
1:28 in a separate set of files in the variables directory and our templates which can be unique to our roles. Let's see how this works in practice.