I look for a lighter way to run AWX on my home lab and awx on minikube has a smaller footprint than the Kubernetes cluster with three hosts. I run into a deployment loop on making this video, fortunately, the community launched today's new version which had those problems solved.
AWX on Minikube
Required components are Minikube and docker/hyper-v,kvm, virtualbox , etc.
Install required tools:
sudo apt install -y curl wget apt-transport-https git docker-ce-rootless-extras
Install docker:
sudo curl https://releases.rancher.com/install-... | sh
sudo usermod -aG docker username
fix support cgroup swap limit capabilities:
nano /etc/default/grub
GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1"
update grub:
sudo update-grub2
required reboot
MiniKube:
curl -LO https://storage.googleapis.com/miniku...
sudo install minikube-linux-amd64 /usr/local/bin/minikube
minikube start --addons=ingress --cpus=4 --install-addons=true --memory=6g
Kubecontrol tool:
sudo snap install kubectl --classic
check kubectl works
kubectl get pods -A
AWX part:
git clone https://github.com/ansible/awx-operat...
cd awx-operator
git checkout 0.19.0
export NAMESPACE=awx
make deploy
edit awx.yml
---
apiVersion: awx.ansible.com/v1beta1
kind: AWX
metadata:
name: awx
namespace: awx
spec:
service_type: nodeport
ingress_type: none
kubectl apply -f awx.yml
Check logs:
kubectl logs -f --namespace awx deployments/awx-operator-controller-manager -c awx-manager
if have ingress:
minikube service awx-service --url -n awx
ADMIN password:
kubectl get secret awx-admin-password -o jsonpath="{ .data.password}" --namespace=awx| base64 --decode
Access from outside of localhost:
nohup minikube tunnel &
kubectl get svc awx-service
kubectl -n awx port-forward svc/awx-service --address 0.0.0.0 30080:80 &angle brackets /dev/null &
ISSUES:
change opetor version nano config/manager/kustomization.yaml
logs: kubectl describe pods --namespace awx