How to Install Ansible AWX Operator for Kubernetes (K8s) and OpenShift (OCP)?
Ansible AWX Operator is the preferred way to deploy an AWX instance in your network.
The alternative way is to build and run Docker containers only for experienced users and developers.
I'm Luca Berton and welcome to today's episode of Ansible Pilot.
Install Ansible AWX
- Ansible AWX Operator for Kubernetes built with Operator SDK and Ansible
- Ansible AWX for Docker (experienced users)
Ansible AWX is the upstream project of Ansible Automation Controller (formerly Ansible Tower), providing a modern web-UI and API interface to manage Ansible Playbooks, inventories, Credentials, and Vaults between your team in your organization.
Running AWX using the AWX Operator is the preferred way for you to test the AWX web-UI and API to manage Ansible Playbook execution easily.
Ansible AWX operator for Kubernetes built with Operator SDK and Ansible.
AWX can also be installed and run in Docker, but this install path is only recommended for development/test-oriented deployments and has no official release.
Links
- [AWX Operator](https://github.com/ansible/awx-operator)
- [kustomize installation](https://kubectl.docs.kubernetes.io/installation/kustomize/)
Playbook
- Install Ansible AWX Operator for Kubernetes (K8s) or OpenShift (OCP)
How to Install Ansible AWX Operator for Kubernetes (K8s).
I will show you how to install the latest Ansible AWX Operator in your local Red Hat OpenShift Local (formerly Red Hat CodeReady Containers).
If available, you can also use a Kubernetes (K8s) cluster or Red Hat OpenShift (OCP)cluster.
code
- kustomization.yaml
``yaml
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
# Find the latest tag here: https://github.com/ansible/awx-operator/releases
- github.com/ansible/awx-operator/config/default?ref=<tag>
Set the image tags to match the git version from above
images:
- name: quay.io/ansible/awx-operator
newTag: <tag>
Specify a custom namespace in which to install AWX
namespace: awx
`
Substitute <tag> with the latest AWX operator release, for example, 0.29.0.
Kubernetes (K8s) execution
1. Install the kustomize tool in your system
`bash
$ curl -s "https://raw.githubusercontent.com/kubernetes-sigs/kustomize/master/hack/install_kustomize.sh" | bash
`
2. Install the customization manifests in Kubernetes (K8s) by running this:
``bash
$ ./kustomize build . | kubectl apply -f -
namespace/awx created
customresourcedefinition.apiextensions.k8s.io/awxbackups.awx.ansible.com created
customresourcedefinition.apiextensions.k8s.io/awxrestores.awx.ansible.com created
customresourcedefinition.apiextensions.k8s.io/awxs.awx.ansible.com created
serviceaccount/awx-operator-controller-manager created
role.rbac.authorization.k8s.io/awx-operator-awx-manager-role created
role.rbac.authorization.k8s.io/awx-operator-leader-election-role created
clusterrole.rbac.authorization.k8s.io/awx-operato