Book Image

Ansible Playbook Essentials

By : Gourav Shah, GOURAV JAWAHAR SHAH
Book Image

Ansible Playbook Essentials

By: Gourav Shah, GOURAV JAWAHAR SHAH

Overview of this book

Ansible Playbook Essentials will show you how to write a blueprint of your infrastructure, encompassing multitier applications using Ansible's playbooks. Beginning with basic concepts such as plays, tasks, handlers, inventory, and YAML Ain't Markup Language (YAML) syntax that Ansible uses, you'll understand how to organize your code into a modular structure. Building on this, you will study techniques to create data-driven playbooks with variables, templates, logical constructs, and encrypted data, which will further strengthen your application skills in Ansible. Adding to this, the book will also take you through advanced clustering concepts, such as discovering topology information about other nodes in the cluster and managing multiple environments with isolated configurations. As you approach the concluding chapters, you can expect to learn about orchestrating infrastructure and deploying applications in a coordinated manner. By the end of this book, you will be able to design solutions to your automation and orchestration problems using playbooks quickly and efficiently.
Table of Contents (20 chapters)
Ansible Playbook Essentials
Credits
About the Author
Acknowledgments
About the Reviewers
www.PacktPub.com
Preface
Setting Up the Learning Environment
References
Index

Using the Ansible-vault


The following table lists all the subcommands that the Ansible-vault utility comes with:

Subcommand

Description

create

This creates a encrypted file from scratch using the editor. This needs the editor environment variable set before launching the command.

edit

This edits the existing encrypted file with an editor, without decrypting the contents.

encrypt

This encrypts an existing file with structured data.

decrypt

This decrypts the file. Use this with care and do not commit the decrypted file to version control.

rekey

This changes the key or password used to encrypt or decrypt.

Encrypting the data

Let's perform some operations using Ansible-vault. We will start by creating an encrypted file. To create a new file from scratch, Ansible-vault uses the create subcommand. Before using this subcommand, it is important to set an editor in the environment, as follows:

# setting up vi as editor
$ export EDITOR=vi
# Generate a encrypted file
$ ansible-vault...