Ansible Links
Curated list of Ansible resources online organized by topic.
Learning
Labs
- Ansible Automation Platform Self-Paced Labs (Instruqt): Hands-on learning scenarios provide you with a preconfigured Red Hat® Ansible® Automation Platform environment to experiment, practice, and see how automation can relieve you of manual tasks.
- Ansible Instruqt: This repo contains images and tracks for the instruqt platform. Red Hat is using Instruqt for in-browser demonstrations of the Ansible Automation Platform.
- Ansible Self-Paced Labs (Community): Interactive learning scenarios provide you with a pre-configured Ansible environment to experiment, learn, and see how Ansible can help you solve real-world problems. The environment runs entirely in your browser at your convenience, enabling you to learn more about our technology at your pace and time.
- Ansible Automation Platform 2 Workshops: The Red Hat Ansible Automation Workshops project is intended for effectively demonstrating Ansible’s capabilities through instructor-led workshops or self-paced exercises.
- Official Ansible Product Demos
Red Hat Ansible content finder
- Decks: For Red Hat employees and partners.
- e-Books: Hybrid Cloud Automation, Network Automation, Event-Driven Ansible (EDA), Security, Edge and more.
- Collaterals: This webpage includes links to all non-slide collateral including datasheets, whitepapers, briefs, checklists, infographics and overviews.
Videos:
Ansible features
Automation Hub
- How to get started with Ansible Private Automation Hub: Learn how to use Red Hat Ansible Automation Private Automation Hub.
- Control your content with private Automation Hub: Private Automation Hub is a self-hosted Ansible content management system. Organizations can host private hubs on their own infrastructure and manage it themselves. Similar to how Red Hat Satellite enables Red Hat Enterprise Linux customers to manage operating system content, private Automation Hub enables automation teams to manage Ansible automation content. Private Automation Hub allows curation and distribution of Ansible content as close as possible to Ansible Automation Platform clusters.
Callback Modules
Collections
Event Driven Automation
- Event-Driven Ansible: Event-Driven Ansible top-level page.
- Self-paced lab: Take this interactive, self-paced lab to learn how Event-Driven Ansible works.
- Event-Driven Ansible Controller: Up and running: EDA Controller integrated with Automation Controller for job template launch. Integrated with Prometheus with Alertmanager source plugin.
- Event-Driven Ansible Technical Workshop: Walk through the basics of EDA (Event-Driven Ansible) covering fundamentals such as sources, rules, and actions and the corresponding technology and implementation through Ansible Rulebook CLI, rulebooks, source plugins, and EDA content collections.
- Event-driven-ansible repository on GitHub
- Kubernetes Meets Event-Driven Ansible: Ansible automation activities can be triggered based on events and actions occurring within a Kubernetes cluster.
- Creating custom Event-Driven Ansible source plugins: Developing event source plugins is pretty straightforward. For more information, check out the documentation on developing source plugins.
- EDA Ansible Automation Platform Demo: Provides everything to configure the needed resources to run the demo on AAP (credentials, templates, custom credentials for ServiceNow, activations, etc) along with the Decision Environment that is needed to run them or using podman, so it’s ready-to-consume.
- Palo Alto EDA
Good Practices to write Ansible content
Inventory plugins
Inventory plugins examples
- Will Tome’s examples: by Will Tome.
- JSON: My JSON inventory plugin demo.
- Active Directory: Active Directory dynamic inventory plugin for Ansible
- LDAP: Query active directory and get a list of machines to use as an inventory. Groups are auto generated off of OU structure and optionally group membership.
Lightspeed
- ansible-trace: Visualise where time is spent in your Ansible playbooks: what tasks, and what hosts, so you can find where to optimise and decrease playbook latency.
- 8 ways to speed up your Ansible playbooks: Integrate appropriate optimization techniques into your Ansible playbooks.
- 5 ways to make your Ansible modules work faster: When it comes to complex and lengthy workflows, you need to consider how to optimize the way you use modules so you can speed up your playbooks.
- Metrics endpoint: Available in the API:
/api/v2/metrics/
. It surfaces instantaneous metrics about the controller, which can be consumed by system monitoring software like the open source project Prometheus.
- Ansible SDK for Python: The Ansible SDK provides a lightweight Python library for dispatching and live-monitoring Ansible tasks, roles, and playbooks from the product or project.
Testing
Installation
Subscription
- Certified Content: Beginning with Ansible 2.9, the Ansible Content Collection subsystem was included as fully supported by Red Hat, and the certified content should be using this packaging format and distributed via Ansible Automation Hub.
- What is included in Red Hat Ansible Automation Platform subscription?: Self-Hosted and/or on-premises components; Automation controller, Private automation hub, Automation content navigator, Automation execution environments, Execution environment builder, Automation mesh, Ansible content tools, and Ansible Content Collections. Hosted Services on console.redhat.com; Red Hat Insights for Ansible Automation Platform, Automation hub, Automation services catalog.
Business value
Validated content
- Ansible Validated Content Submission: Ansible Validated Content is a program dedicated to providing curated but non-supported content through AAP to help customers perform common operational tasks based on Red Hat or partner-led expertise.
AWX
Upstream projects
- Ansible Core: a.k.a. Engine.
- AWX: Provides a web-based user interface, REST API, and task engine built on top of Ansible. It is the upstream project for Tower.
- Ansible Navigator: A TUI for the Red Hat Ansible Automation Platform.
- Ansible Runner: Tower-> Runner-> Core.
- Ansible Builder: Automates the process of building execution environments.
- Receptor: Overlay network intended to ease the distribution of work across a large and dispersed collection of workers.
- Galaxy NG: Host your very own Ansible Galaxy server.
- Automation Analytics Front End: Automation Analytics provides data analytics for AAP that provides visualization and insight into how automation is used in your organization.
- Pinakes: The upstream community project for RedHat’s Automation Services Catalog product. :skull:
- Ansible Collections: Great Ansible content.
- Event Driven Ansible Controller: aka EDA-Controller.
- Backstage Plugin: Backstage as a Service Catalog replacement?
Architecture
Backend Database
Container Groups
Execution Environments
- The anatomy of automation execution environments: Automation execution environments are container images that act as Ansible runtimes for automation controller jobs. Ansible Automation Platform also includes a command-line tool called ansible-builder(execution environment builder)that lets you create automation execution environments by specifying Ansible Content Collections and Python dependencies.
- Introduction to Ansible Builder: Ansible Builder is a tool that aids in the creation of Ansible Execution Environments.
- When localhost isn’t what it seems in Red Hat AAP 2: Now with Ansible Automation Platform 2, localhost means you’re running inside a container, which is ephemeral in nature. This means we must do things differently to achieve the same goal. For persisten storage you can run some form of shared storage solution, like Amazon S3, maybe Gist, or even just have a role to rsync data to your data endpoint. As a last resort, you can use automation controller’s isolated jobs paths to mount directories and files into an execution environment at runtime.
High Availability
Considerations
AAP in the cloud (AWS, Azure, GCP)
RBAC and Authentication
LDAP
SAML
Internals
Python
Go
Network Automation
Working with Network Configurations
Network Inventory
Network Resource Modules
Arista
Aruba
Cisco
- Simplifying network automation with Red Hat Ansible and Cisco: Simplify, optimize, and automate network operations. Automation gives you the agility, flexibility, and consistency you need to keep infrastructure running at peal performance.
- Cisco with Ansible: DevNet tutorials to start your automation journey with Ansible.
- Manage your Cisco devices with Red Hat Ansible Automation Platform: Drive the desired state of configuration for VLANs, prefix-lists, interfaces, BGP and more!
- Cisco OSPF Configuration with Ansible: The primary focus is on configuring OSPF, but the Ansible playbook also takes care of configuring the interfaces and IP addresses with resource modules.
ACI
- Cisco ACI Guide: Ansible ACI module documentation to provide a user-friendly interface to managing your ACI environment using Ansible playbooks.
- Introduction to ACI and Ansible labs: Explore how you can now manage your ACI using Ansible for “ACI as Code” and integrate into your DevOps practices.
- Intel embraces SDN to modernize its chip factories: Intel has deployed SDN in roughly 15% of its factories to date and will continue to migrate existing Ethernet-based factories to SDN. For new implementations, Intel has chosen to use open source Ansible playbooks and scripts from GitHub to accelerate its move to SDN.
- What’s new and exciting on Cisco ACI with Red Hat Ansible Collections: There are over 100 ACI and Multisite modules in Ansible core. Modules for specific objects like, Tenant and Application Profiles as well as a module for interacting directly with the ACI REST API. This means that a broad set of ACI functionality is available in Ansible, to cover a broad set of Data center use cases.
- Secure Service Provisioning with Ansible Automation Platform, vCenter, HashiCorp Vault, and Cisco ASA/ACI: Demo integrating Ansible Tower, VMware, HashiCorp Vault, and Cisco ACI/ASA. A single Ansible playbook that does the work of the VM admin, O/S admin, network admin, and the security/firewall team.
- Automating ACI with Ansible): Cisco Live slides for session BRKACI-1619.
- Ansible recipes for ACI: A series of Ansible playbooks you can use with Cisco ACI. They are kept as simple as possible to make them easy to understand and reuse in your environment.
- Controlling Cisco ACI with Ansible
- Automate Cisco ACI Tenant Profile Creation: Parse a CSV file that includes the needed attributes to automate and orchestrate creation of new tenants.
ASA
- Parsing a Cisco ASA config file: Three options to parse data from an unstructured config file.
- Creating ACL entries in a Cisco ASA device: The Cisco ASA collection provides modules and plugins to automate Cisco ASA operations. In this section, you will learn how to use Cisco ASA modules to create ACL entries in a Cisco ASA device.
- Automating the deployment os the Cisco ASA REST API: deploying the Cisco ASA REST API using automation via Ansible.
- Ansible Playbook for Cisco ASAv Firewall Topology: Configure specific firewall settings.
Cisco Unified Communications Manager (CallManager)
F5
Juniper
NetBox
Palo Alto
Edge
- Red Hat Device Edge Workshop: Focuses on deploying various workloads to a Device Edge endpoint, focusing on ease of updating the image to support the workload type and leveraging automation to deploy the workload.
- Ansible Edge GitOps: Explores some of the possibilities of using an OpenShift-based Ansible Automated Platform deployment and managing Edge devices, based on work done with a partner in the Chemical space. This pattern uses OpenShift Virtualization (the productization of Kubevirt) to simulate the Edge environment for VMs.
- How to automate devices using the Ansible CIP collection: Control embedded devices via the Common Industrial Protocol (CIP).
Kubernetes
Security
Windows
Integrations
Service Now
Splunk
Puppet
Projects
CMDB
- Ansible Configuration Management Database: Ansible-cmdb takes the output of Ansible’s fact gathering and converts it into a static HTML overview page (and other things) containing system configuration information.
- AnsibleDB: Gives you the ability to quickly collect facts about your Infrastucture estate [linux, windows & network devices] and via our API, pull out the information important to you.
GUI
My Ansible Content
Roles
- grafana_agent: Installs Grafana Cloud Agent on RedHat/CentOS or Debian/Ubuntu servers to collect observability data and sends it to Grafana Cloud.
Collections
- capirca_acl: This collection includes a module (translate) to use Capirca from your Ansible playbooks.
Playbooks
- ansible-kubernetes: Deploy managed Kubernetes clusters in the cloud: AKS, EKS and GKE.
- ansible-web-server: Create a highly available web application on any cloud provider with Ansible.
- ansible-webserver-azure: Automatically provision a number webserver instances behind a load balancer on Azure.
- ansible-networking: Simple networking examples.
- ansible-net-modules: Network Resource Modules Demo.
- aws-testbed: Create reproducible Linux environments in the cloud.
- ansible-cloud: Deploy virtual machines in AWS (Fedora, JunOS, Cisco IOS, CentOS, etc.).
- ansible-snow: Ansible Tower workflow with Cisco and Service Now Collections.
- ansible-backup: Creates a backup of your Tower setup and uploads it to AWS S3.
- ansible-home: Collection of playbooks I run in my personal home-lab.
- ansible-rhpds: Request a Red Hat Product Demo System (RHPDS) Sandbox.
- ansible-workflow: An attempt to document Ansible Tower workflows as code.
- check-calendar: Simple app to verify whether a time slot is taken/busy in Google Calendar from Ansible.
GitHub Actions
- ansible-lint-action: My personal fork to be able to install Ansible collections and any other improvements that might be required.
Execution Environments
Inventories
Blog Posts