Learn about some key concepts and functions in Red Hat Ansible Automation Platform 2. By exploring each of these feature areas, you can learn more about its capabilities. Existing customers, free trial users and those considering this platform can use this content to try and understand the exciting new features of Ansible Automation Platform 2.
Before we look at specific features, let’s talk about how and why Ansible Automation Platform 2 is architected for the hybrid cloud. As hybrid and multicloud computing models continue to expand, IT organizations need automation platforms that can bridge from traditional systems to modern services to the remote network edge.
Ansible Automation Platform now includes portable automation that supports massive scale and is highly flexible. This includes the use of Automation execution environments that help to create “self-contained” automation that packages all of the dependencies needed to build, run and manage automation across the diverse hybrid cloud and edge. With this new mode based on execution environments, Ansible Automation Platform is ready to stitch together diverse needs across processes, whether you are modernizing and moving workloads to the cloud, implementing DevOps, or finding new ways to manage a growing network, including edge devices and everything in between.
This new release has features for key roles on the automation team, including creators building new automation projects, operators and administrators deploying and managing automated IT operations at scale, and architects tasked with expanding the level of enterprise automation maturity and transforming to an automation-first approach.
Additional resources are provided throughout this article, however you can also review the assets that go along with this workshop to further your learning as well. If you would like to participate in a workshop, see which ones are available here.
We assume you have installed the Ansible Automation Platform 2 subscription (existing customers) or free trial already. For instructions on accessing your Ansible Automation Platform subscription watch this short video. For additional installation help, check out the quick start guide.
This image explains the components of Ansible Automation Platform. It includes capabilities that make it faster and easier to build new automation projects, manage running automation projects, and scale more easily as you expand automation. You can also refer to this glossary for terminology.
Playbooks are a long-standing construct of Ansible technology. They are written in the YAML syntax as declarative, human-readable code that instructs Ansible core technology on what changes to make to complete the desired end state. So, to do your first automation project, you will build a playbook.
As you create your first playbook, we recommend you start with a simple task and then grow to greater complexity. A good example of a simple task is installing Apache or Nginx on a web server. Once you do this, you can begin adding additional tasks to your playbooks (e.g. templating out a website, installing CSS, or configuring a load balancer) and working with Certified Content Collections.
To handle complex IT operations, we introduce the idea of inventores to break your ecosystem technologies into manageable groups and to administer privileges on that inventory grouping. For example one inventory group may be the Linux servers for a specific business unit in your company and another may be your Cisco networking LAN devices, etc. You can organize in ways that suit your business needs and operation. So, once you have built an inventory group you can write specific playbook(s) that help you make the desired changes on that inventory group with the push of a button. Here is some documentation on how you would create an inventory group.
Within the Ansible framework, roles are reusable components that make automation tasks faster and easier to complete with less code redundancy. Many different components can be included in sections of a role definition, including variables, libraries, tasks, defaults and more. An example role is the Red Hat Enterprise Linux system role, which is actually a collection of roles used to configure and manage this operating system in a consistent way. Red Hat Ansible Automation Platform includes additional roles, and you can learn more in the resources below.
Organized into specific directories where they can be found and executed, modules are standalone scripts that are designed to take a specific action or find and return a specific piece of information. Many modules are provided as part of Ansible Automation Platform and also as part of certified or other Content Collections. You can also create your own in the language of your choice, however Python is commonly used. Examples of modules include a “command” module that executes commands on remote nodes, or a “fetch” module that fetches files on remote nodes.
Ansible Automation Platform includes three hosted services, plus one on-premises solution to help you build, manage and control automation at scale:
Subscribers and trial users can log into console.redhat.com to see the hosted services, however note that Red Hat Insights for Ansible and automation services catalog will not be populated if you have not set up inventory automation jobs.
Ansible Content Collections include playbooks, roles, modules, and plugins for specific uses that often help to expedite automation projects that operate upon aspects of your ecosystem. Ansible Content Collections include those certified or validated by Red Hat or our partners, community developed content, and those you create yourself.
Certified Content Collections have been tested and approved by Red Hat, are supported by Red Hat and partners, and are conveniently located in the automation hub at console.redhat.com. There are currently over 130 Certified Content Collections to help you automate a variety of technologies and solutions across your ecosystem.
Ansible validated content offers expert-led guidance for how to perform operations or tasks in Red Hat and partner platforms (typically in the form of roles or playbooks). Some validated content may build upon a Red Hat Ansible Certified Content Collection to streamline the use of the collection.
Once you have created and executed a simple playbook, you can begin leveraging one or more Ansible Content Collections to create new, more complex playbooks faster and more predictably.
Automation execution environments package libraries, modules, roles, playbooks, dependencies and other components you need to run your automation into portable packages that can be deployed and scaled across your automation infrastructure and across different groups, such as networks, security, cloud and others. This can enable teams to work in their own environments to build new automation faster, for example, to address differing needs and related assets in network, infrastructure or security automation.
You will build execution environments in Ansible-builder, and a set of prebuilt, supported automation execution environments available on the Red Hat Container Registry can be used to get started quickly.
The first step in any automation project is creating automation content. Three capabilities are available to assist as you create this automation content. The first is a new feature in Ansible Automation Platform 2, called Ansible-builder, that was developed to automate the process of building execution environments. With Ansible-builder, start by creating an execution environment definition. This file allows you to specify which content you would like to include in your execution environment, such as collections, Python requirements, and system-level packages.
The second is Ansible-navigator, a text-based user interface for automation creators using Ansible Automation Platform. It allows you to create, run and validate automation content with easy to use subcommands that will interact directly with execution environments to provide direct feedback, so you can understand how your execution environment will operate.
The third capability is private automation hub that is used on-premises. With private automation hub, you can confidently share a combination of internally generated content, Red Hat Ansible Certified Content, and Ansible validated content—while applying appropriate governance.
When it comes to managing the automation you have created, Automation controller, formerly known as Ansible Tower, is the solution you will use. It enables execution of automation jobs including complex deployments. There is push-button deployment, central logging, workflows, and RBAC to control who can execute which automation jobs.
Automation analytics and Red Hat Insights plays a role in providing analytics to manage your automation environment, for example by seeing which automation jobs are running successfully, which teams have adopted automation and how, and much more.
The Automation-controller you use for management also plays a role in scalability. For example, if you have a security automation job that needs to run across a broad range of your environment, you would use automation-controller to specify that it runs globally on different Ansible automation nodes.
New with Ansible Automation Platform 2 is the component called Automation mesh that is designed for portability, scalability, and improved flexibility. This deprecates previous versions of Ansible Automation Platform’s isolated nodes concept and provides increased performance and usability. Automation mesh is an overlay network (with peer-to-peer connectivity) designed to ease distribution of your automation workloads in execution environments across a large and hybrid set of worker nodes from on-premises to private cloud to cloud. This feature and execution environments in particular lend robust capabilities for automation across the hybrid cloud.
Now you can use all of this information to build your first playbook so you can see the benefits of Ansible Automation Platform first hand. We recommend you start with a small, simple project and grow from there in a demo or test environment. Choose a specific use case, from server / infrastructure, network or security management to cloud or DevOps automation tasks. Once you have mastered one automation project, you may wish to try another use case altogether.
Finally, we hope you find this content helpful as a general technical overview. You can also take a look at our what’s new webinar (on demand) or the webinar page which has both upcoming and on demand webinars that you will find helpful. You can also join us on community slack!
Ansible is the most popular open source automation tool on GitHub today. With over 2,900+ contributors submitting new modules all the time, rest assured that what you are automating is covered in Ansible already, or will be very soon.
Ansible Automation Platform builds on the underlying Automation Execution Environments by adding control, security, and delegation capabilities. With Automation Controller your team can automate – and your business can innovate.