AWX est la version Open-Source d’Ansible Automation Platform plus
connue sous le nom d’Ansible Tower. AWX fournit une interface web
ainsi qu’une API REST et un scheduler pour Ansible. L’interface Web
permet gérer tous les objets Ansible comme les projets, les
inventaires,
les hôtes, les utilisateurs et groupes, les environnements
d’exécution, les taches
de planification, l’envoi de notifications…,
Nous allons voir ici comment installer AWX sur un cluster Kubernetes. Ça
simplifie énormément l’installation puisque tout est géré par un Opérateur
Kubernetes.
Installation d’Ansible AWX sur un cluster Kubernetes
Bien sûr, vous devez avoir à disposition un Cluster Kubernetes. Vous pouvez
utiliser kind ou minikube ou
k3s. Ansible AWX par défaut a besoin
au minimum de 4 CPU et 6Go de mémoire, mais nous allons voir comment
restreindre ces besoins.
Récupérer le projet AWX Operator
Un simple git clone dans un répertoire va suffire :
Installer l’Opérateur kubernetes AWX
Vous allez voir c’est très simple. On va dans un premier temps retrouver la
dernière version disponible et créer le namespace AWX :
Passons au déploiement de l’opérateur Kubernetes :
On vérifie que l’installation s’est correctement terminée. Vous devriez
retrouver un pod :
C’est ce pod qui est chargé d’installer AWX à partir d’une configuration que
nous allons lui indiquer.
Configurer l’installation d’Ansible AWX
Dans un premier pour rendre persistante l’installation, nous allons définir un
Persistent Volume Claim :
Idem, nous créons deux Persistent Volume (changer les répertoires au besoin):
Maintenant créons la déclaration de notre serveur AWX. L’operator se charge
de créer l’ingress, donc modifier avec votre nom de domaine (hostname).
Maintenant, vous allez devoir patienter que l’installation se termine, cela peut
être long (plusieurs minutes). Vous pouvez vérifier que tout se passe bien.
Les pods sont ils en running :
Les services sont ils déclarés :
Si vous avez des problèmes vous pouvez vérifier les logs des containers ou les
événements :
Accès à l’interface d’AWX depuis votre navigateur
Vous pouvez vous connecter à l’interface web via l’url **http://<votre-domaine>**
Le user est admin et le mot de passe est stocké dans les secrets :
Voilà, vous avez Ansible AWX installé. La suite pour faire nos premiers pas sur
AWX
Pour ceux qui veulent utiliser une BDD externe, j’ai publié une autre version
de ce tuto : c’est par là