Book Image

Ansible for Real-Life Automation

By : Gineesh Madapparambath
Book Image

Ansible for Real-Life Automation

By: Gineesh Madapparambath

Overview of this book

Get ready to leverage the power of Ansible’s wide applicability to automate and manage IT infrastructure with Ansible for Real-Life Automation. This book will guide you in setting up and managing the free and open source automation tool and remote-managed nodes in the production and dev/staging environments. Starting with its installation and deployment, you’ll learn automation using simple use cases in your workplace. You’ll go beyond just Linux machines to use Ansible to automate Microsoft Windows machines, network devices, and private and public cloud platforms such as VMWare, AWS, and GCP. As you progress through the chapters, you’ll integrate Ansible into your DevOps workflow and deal with application container management and container platforms such as Kubernetes. This Ansible book also contains a detailed introduction to Red Hat Ansible Automation Platform to help you get up to speed with Red Hat AAP and integration with CI/CD and ITSM. What’s more, you’ll implement efficient automation solutions while learning best practices and methods to secure sensitive data using Ansible Vault and alternatives to automate non-supported platforms and operations using raw commands, command modules, and REST API calls. By the end of this book, you’ll be proficient in identifying and developing real-life automation use cases using Ansible.
Table of Contents (22 chapters)
1
Part 1: Using Ansible as Your Automation Tool
6
Part 2: Finding Use Cases and Integrations
16
Part 3: Managing Your Automation Development Flow with Best Practices

Automation feasibility and usability

We all need to understand that not all use cases or repeated jobs are suitable for automation. We need to study and confirm the feasibility of implementing the use case using Ansible automation.

Once you find the use cases, you can ask yourself several questions to understand the feasibility of implementation and usability of your automation use cases.

How complex is the use case?

You need to Consider the complexity of the use case or workflow you are trying to automate. If the use case is too complex, then you can split it into smaller use cases. You need to start with smaller use cases to avoid any possible delay or obstruction.

For example, if you want to automate the Linux operating system (OS) patching task, then split the job into multiple use cases as follows:

  1. Take a virtual machine snapshot.
  2. Back up the configuration.
  3. OS patching tasks.
  4. Verification of the OS after patching and reboot.
  5. Restore snapshot...