Learn
In this section, you will find documentation and materials to get started with Ansible.
From basic overview to the more advanced technical nuances of Ansible automation, this section will provide you with all the necessary information to guide you on your way to be an Ansible expert and distribute certified Ansible content.
Ansible Automation Platform Overview
So, at a high level what does the Ansible Automation Platform do?
Ansible Automation Platform is an agentless IT automation tool that allows for a prescriptive approach to routinely perform tasks. Simply define the desired parameters and Ansible sets those parameters on managed nodes.
Without an agent dependency, basic authentication to managed nodes is all you need. Primarily using SSH, and SSH keys, Ansible automates system configurations, software deployments and advanced IT tasks. It also works for cloud provisioning.
Ansible uses human readable files and formats so there is no coding or programming skills required in order to get up and running.. However bear in mind that just because it’s easy to use doesn’t mean it can’t handle complex tasks in highly scaled environments. Ansible covers small to broad scope automation, from task automation to process automation to orchestration across functions.
Components of the Ansible Automation Platform
Ansible Controller is the control plane for automation, it includes a UI, RestFul API, RBAC, workflows, and CI/CD integrations, helping teams scale. Established users of Ansible will know of the control plan functionality previously branded as Ansible Tower. In the Ansible Automation Platform 2.0 release there was a name change from Tower to Controller to better express and understand the underlying functionalities and features of the components.
Ansible Automation Execution Environments is the execution plane for automation, it: includes Ansible Core 2.11, Python 3.8, UBI 8, and selected Collections, all packaged and used as a container. Prior to Ansible Automation Platform 2.0 the execution environment was known as Ansible Engine.
Ansible Platform Operator allows for the packaging, deployment and management of Red Hat Ansible Automation Platform on OpenShift, putting two of Red Hat’s most powerful and widely used platforms together in a complementary way.
Developer Tools, the execution environment builder is a command line tool leveraging podman that builds Ansible environments inside a container. And the automation content navigator is command line tool for execution environments. It provides an enhanced and familiar experience for Ansible creators.
Distributing and Consuming Content
Part of what makes Ansible Automation Platform so powerful is the underlying technology found in the control and execution plane. And the remaining value comes from the distribution and consumption of high quality content. The topic of content is one that partners will want take advantage of, in the form of contributions and certifications.
What are Content Collections? Collections provide a distribution format or schema for supported and certified Ansible content. It works to uniformly package and distribute content such as playbooks, modules, roles and plug-ins along with supporting documentation that go together to serve a particular use case. Aa partner’s Content Collections are what get certified and distributed for consumption as Ansible Certified Content Collections. We currently have 90+ certified, content collections comprised of over 40k modules curated for consistent, compliant delivery.
What is Ansible Galaxy? Galaxy is hub for finding and sharing community content. Traditionally acting as the hub for constructing and managing roles, now Galaxy also provides the framework for creating collections with the ansible-galaxy-collection command sets. Working with Galaxy allows for initializing a collection skeleton and creating a collection artifact.
What is the Automation Hub? The Automation Hub provides a place to download and consume supported and certified Content Collections. Partner who wish to contribute to certified Ansible content will do so via the Automation Hub. Here you can sync certified Ansible content repositories to on-premises private automation hub, or download directly from automation hub. Available as both a hosted service and privately on-prem. See certification policy guide for more details.
In order to achieve a certified Ansible Content Collection the content must be published to both Galaxy and the Automation Hub, with Galaxy being the first step. Content must be published to both locations using the same partner Namespace.. See the certification policy guide for more details on working with us to get a Namespace created.
Ansible Core Concepts
Although we see some component naming convention changes, along with some added features and functionality, when we get down to working with Ansible, the core concepts remain the same.
Nodes: There are two types of nodes. Control node and managed nodes. A control node is a non windows machine with Python installed, where you run Ansible and Ansible-playbook commands. Managed nodes are network devices and/or servers to be managed by Ansible. Sometimes referred to as “hosts”.
Inventory: At a high level it’s a file with a list of managed nodes by reachable attributes such as IP or DNS. Groups allow for nesting to enable ease in scaling. The group databases could include a number of database hosts. Collection: Ansible content (playbooks, roles, modules and plugins) that are consumable through Galaxy, certified and distributed through Automation Hub
Module: Small programs with a particular use such as “managing VLANs” on a networking device, patching or updating an application
Task: Single unit of action. Print a message, change a single line of a configuration, enable a policy, restart a daemon or service
Role: At a high level a role is a set of tasks and additional files to configure a host for a specific purpose. Configure a VM to act as a vFW or vNAT
Playbook: Is another way to create an ordered list of tasks. They are YAML based which allows for variables, increasing the automation logic capability.
Plug-in: Ansible plugins are much like any software plug-in in that they extend the existing core functionality. If Ansible isn’t doing what you need it to do, use or write a plugin to extend the under the hood functionality.
Advanced Ansible Knowledge
Having covered some of the basic fundamentals of Ansible Automation Platform we also have some additional links here to build towards more advanced knowledge.
Last updated