Automated Deployment of AWX on k3s

Completed
August 2023 - Sep 2023
Customer project (in employee ratio)

In several customer projects, our team regularly installed and configured AWX instances. However, due to the lack of a stable test environment, testing and experimentation were time-consuming and error-prone. The goal was to fully automate the deployment of AWX — both in single-node and multi-node setups.

The challenge

Manually setting up AWX was complex and required multiple steps, especially in Kubernetes environments. Additionally, the solution needed to be reproducible and easily integrated into existing CI/CD workflows.

  • No centralized test setup for AWX
  • High manual effort for each installation
  • Missing automation and standardization

Project goals

The main objectives of the project were:

  • Fully automate the installation and setup of AWX
  • Support k3s single-node and optional multi-node deployments
  • Integrate the process into a GitLab CI/CD pipeline
  • Provide a fast and reproducible test environment for the team

Solution approach

I developed an Ansible playbook combined with CI/CD pipeline steps in GitLab, which automatically provisions a k3s cluster and installs AWX on top of it. This enabled the team to deploy a fully functional AWX environment within minutes, including all required dependencies and configurations.

The implementation

  • Cluster Setup: Automated provisioning of a k3s cluster via GitLab CI
  • AWX Deployment: Installation and configuration of AWX using Ansible
  • Pipeline Automation: CI/CD pipeline for automated build and provisioning
  • Flexibility: Support for both single-node and multi-node environments
  • Team Enablement: Documentation and training to ensure easy adoption by the team

The result

  • Fully functional AWX test environments deployed within minutes
  • Consistent and reproducible deployments
  • Significant reduction in manual effort
  • Faster testing and development cycles

Insights

This project deepened my knowledge of AWX deployments, k3s architectures, and CI/CD automation.

  • Experience in automated AWX installations on k3s
  • Integration of CI/CD processes for infrastructure provisioning
  • Building efficient and reproducible test environments for system engineers