Skip to Scheduled Dates
Course Overview
In this course students will focus on controlling the latest version of Ansible Tower AWX. This begins with a deployment into a Kubernetes cluster, and moves quickly into exploring the configuration options of AWX. Students will learn to navigate the AWX GUI, trigger jobs with webhooks, build and deploy custom execution environments, and design workflow job templates. All enrolled students have the opportunity to earn an AWX certification at the conclusion of the course. Note: The focus of this course focuses on using AWX, not writing Ansible playooks.
Who Should Attend
- Ansible Engineers
- DevOps Engineers
- Software Developers
- System Administrators
- Managers
Course Objectives
- AWX Web GUI
- AWX RESTful API
- Control / Execution Plane
- Integration with “your” SCM (GitLab, GitHub, etc.)
- “Big picture” workflows
- An understanding of containers and Execution Environments
- AI LLM prompt engineering for generating Dockerfile and other relevant configurations
Course Outline
Ansible AWX workflows
- AWX “Big Picture”
- Ansible Workflow with AWX
- Python pip dependencies
- Collections
- Introduction to containers
- Building execution environments
- Ansible builder
- Ansible runner integration
- Is AWX different from Tower?
Deploying AWX
- Kubernetes overview
- Why AWX deploys into Kubernetes not “just” docker
- Kubernetes installers
- minikube
- kubectl
- Kubernetes Pod vs Containers
- Containers and VMs- how we use both to run AWX in a Kubernetes cluster
- AWX Operator
- AWX Control Plane / Execution Plane
- AWX Execution Environments
AWX API
- RESTful APIs
- Triggering workflows with AWX APIs
- Websockets
- HTTP Token Access
Using AWX
- Relaunch on Hosts with Status
- Scheduled Jobs
- Task manager system
- Background Tasks in AWX
- Job templates
- Workflow templates
- Webhooks (gitlab and github)
- Job Branch Override
- Ansible Callback and Job Events
- Job slicing
AWX Inventory
- AWX Inventory vs Ansible Host File
- Transition to Ansible Inventory Plugins
- Inventory refresh
- SCM Inventory
Triggering Automation
- Launch-time Configurations / Prompting
- Webhooks
- Gitlab Runner
- Gitlab Pipeline (gitlab-ci)
- Using dynamic inventory with awx
- Building out organization team and user hierarchy
Results and Metrics
- Running a Prometheus Container
- AWX as an Ansible Fact Cache
- Insights Integration
- Logging integration
- Notification system
AWX Architecture
- Capacity
- Clustering
- Container Groups
- CORS support
- Role-Based Access Control (RBAC)
- AWX scaling
Auth & Credentials
- LDAP
- Oauth
- SAML
- Sessions
- Credentials
- Index
- Credential Plugins
- Custom credential types
- Extracting Credential Values
- Multi-Credential Assignment
Troubleshooting
- Debugging
- AWX Job Event Performance Debugging
- Slow API Endpoint
- Development tips