AWX Installation auf KVM mit Ubuntu 24.04.2 LTS
Voraussetzungen
-
KVM Host mit Ubuntu 24.04.2 LTS (frisch installiert)
-
nesting=1
gesetzt, falls LXC verwendet wird -
Ausreichend CPU/RAM (mindestens 2 vCPU, 4 GB RAM empfohlen)
1. System aktualisieren
sudo apt update && sudo apt upgrade -y
2. Wichtige Pakete installieren
sudo apt install -y make curl git apt-transport-https ca-certificates gnupg software-properties-common make
3. Docker installieren
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
Hinweis: Danach einmal neu anmelden oder
newgrp docker
4. KIND (Kubernetes in Docker) installieren
curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.22.0/kind-linux-amd64
chmod +x ./kind
sudo mv ./kind /usr/local/bin/kind
5. kubectl
installieren
curl -LO "https://dl.k8s.io/release/v1.29.2/bin/linux/amd64/kubectl"
chmod +x kubectl
sudo mv kubectl /usr/local/bin/
6. Kubernetes Cluster mit Portweiterleitung erstellen
# kind-config.yaml
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
- role: control-plane
extraPortMappings:
- containerPort: 32464
hostPort: 32464
protocol: TCP
kind create cluster --name awx --config kind-config.yaml
7. AWX Operator installieren
git clone https://github.com/ansible/awx-operator.git
cd awx-operator
git checkout tags/24.2.0
make deploy NAMESPACE=awx
8. AWX Deployment erstellen (awx.yaml
)
apiVersion: awx.ansible.com/v1beta1
kind: AWX
metadata:
name: awx
namespace: awx
spec:
service_type: nodeport
ingress_type: none
create_preload_data: true
kubectl apply -f awx.yaml -n awx
9. Warten, bis alle Pods laufen
kubectl get pods -n awx -w
Achte darauf, dass
awx-task
undawx-web
aufRunning
stehen
10. NodePort finden
kubectl get svc -n awx awx-service
Beispielausgabe:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
awx-service NodePort 10.96.242.91 <none> 80:32464/TCP 60m
11. AWX Web-UI aufrufen
Im Browser:
http://<KVM-Host-IP>:32464
Beispiel:
http://192.168.10.122:32464
12. Anmeldedaten
Standardmäßig:
-
Benutzer:
admin
-
Passwort: wird beim ersten Start im
awx-task
Container geloggt:
kubectl logs -n awx deployment/awx-task | grep password
Troubleshooting
-
Bei DNS-Problemen
hostAliases
imAWX
-CR vermeiden — wird derzeit nicht unterstützt. -
Prüfe
kubectl describe pod ...
bei Pod-Fehlern -
IPv6-only Umgebungen können Probleme verursachen → ggf. IPv4 bevorzugt konfigurieren
AWX Update
kubectl apply -f awx.yaml -n awx
Wichtig: Änderungen an nicht unterstützten Feldern (z. B.
hostAliases
) vermeiden.
Fertig! 🎉 AWX ist jetzt bereit für deine Projekte.