Ansible AWX · 6 min read · Jan 25, 2026
Guide Ansible AWX : Utilisation et Configuration de Base

AWX est une application web open source qui fournit une interface utilisateur, une API REST et un moteur de tâches pour Ansible. C’est la version open source de l’Ansible Tower. L’AWX vous permet de gérer les playbooks Ansible, les inventaires et de programmer des tâches à exécuter via l’interface web.
Dans ce tutoriel, nous allons vous montrer l’utilisation de base de l’Ansible AWX. Vous aurez donc besoin d’un serveur sur lequel Ansible AWX a déjà été installé. Nous couvrons certaines configurations de base d’Ansible AWX que vous devez connaître, telles que la configuration des identifiants, des inventaires, la configuration et l’exécution des modèles de tâches, etc. Si vous n’avez pas encore installé Ansible, veuillez consulter ce tutoriel : https://www.howtoforge.com/how-to-install-ansible-awx-with-nginx-reverse-proxy-on-ubuntu-1804/.
Prérequis
- 2 ou 3 serveurs - 10.5.5.20 ansible-awx
- 10.5.5.21 lemp
- Compréhension de base d’Ansible
- Privilèges root
Ce que nous allons faire :
- Configuration et Mise en Place de l’Environnement
- Configuration des Identifiants
- Configuration des Inventaires
- Configuration des Projets
- Configuration des Modèles de Tâches
- Exécution des Tâches
Étape 1 - Configuration et Mise en Place de l’Environnement
Dans ce tutoriel, nous allons déployer et exécuter le playbook Ansible pour l’installation de base de LEMP via le tableau de bord Ansible AWX.
Nous avons deux serveurs pour l’AWX lui-même et la machine cible.
10.5.5.20 ansible-awx
10.5.5.21 lempNous allons maintenant déployer le playbook en tant qu’utilisateur appelé ‘hakase’ et en utilisant l’authentification SSH basée sur des clés. Assurez-vous donc que vous avez déjà configuré l’utilisateur et l’authentification basée sur des clés sur la machine cible ‘lemp’.
Testez en utilisant la commande suivante depuis le serveur ‘ansible-awx‘.
su - hakase
ssh [email protected]Assurez-vous que vous êtes connecté sans mot de passe.
Maintenant, l’utilisateur ‘hakase’ doit avoir le mot de passe root sans mot de passe pour exécuter des tâches.
Sur la machine cible ‘lemp‘, exécutez la commande sudo comme ci-dessous.
su - hakase
sudo suAssurez-vous que vous avez entré les privilèges root sans mot de passe.
Vous devez maintenant installer les paquets python sur toutes les machines cibles gérées par Ansible.
sudo apt install python -y
Étape 2 - Configuration des Identifiants
Tout d’abord, nous devons configurer les Identifiants Ansible AWX. Ils sont utilisés pour l’authentification lors du lancement et de l’exécution des tâches sur les serveurs gérés, de la synchronisation avec les sources d’inventaire et de l’importation de projets.
Par défaut, l’Ansible AWX prend en charge de nombreux identifiants, y compris la machine VM via l’authentification SSH, Amazon Web Services, Google Compute Engine, OpenStack, le mot de passe Vault, le contrôle de version, etc.
Pour configurer les identifiants, cliquez sur le menu ‘Identifiants‘ à gauche et cliquez sur le bouton ‘+’ à droite.

Maintenant, tapez les identifiants ‘NOM‘ et ‘DESCRIPTION‘, puis spécifiez le ‘TYPE D’IDENTIFIANT‘ sur ‘Machine‘.
Simplement, l’identifiant ‘Machine’ vous permettra d’utiliser l’authentification SSH pour gérer les serveurs. Il prend en charge à la fois les authentifications par mot de passe et par clé.
Pour ce guide, nous allons utiliser l’authentification basée sur des clés. Tapez donc le nom d’utilisateur et collez les clés privées pour cet utilisateur.

Puis cliquez sur le bouton ‘ENREGISTRER‘.
En conséquence, le nouveau type d’identifiants Ansible AWX ‘Machine’ a été créé.

Étape 3 - Configuration des Inventaires
Les inventaires sont des groupes de serveurs hôtes gérés par Ansible AWX. Les inventaires vous permettent de créer un groupe avec plusieurs serveurs hôtes. Et cela facilite la gestion de différents serveurs avec différents environnements.
Pour gérer et provisionner des serveurs, nous devons créer un nouveau groupe d’inventaire, puis ajouter des hôtes serveurs dans ce groupe d’inventaire.
Pour ajouter un nouvel inventaire, cliquez sur le menu ‘Inventaires‘ à gauche, puis cliquez sur le bouton ‘+’ et choisissez ‘Inventaire’.

Tapez le ‘NOM‘ et la ‘DESCRIPTION‘ de l’inventaire, puis cliquez sur le bouton ‘ENREGISTRER‘.

Maintenant, cliquez sur l’onglet ‘HÔTES‘, et cliquez sur le bouton ‘+’ pour ajouter de nouveaux hôtes.

Tapez le ‘NOM D’HÔTE‘, la ‘DESCRIPTION‘, et les ‘VARIABLES‘ avec la configuration supplémentaire pour l’adresse IP de la machine cible ‘ansible_host: 10.5.5.21’.

Maintenant, cliquez sur le bouton ‘ENREGISTRER‘.
Ensuite, nous devons vérifier la configuration des hôtes en vérifiant les hôtes à l’aide de la commande ping.
Retournez à l’onglet ‘HÔTES‘, cochez le nom de votre serveur hôte et cliquez sur le bouton ‘EXÉCUTER DES COMMANDES‘.
Maintenant, choisissez le ‘MODULE‘ appelé ‘ping‘, cliquez sur le bouton de recherche à l’intérieur de ‘MACHINE D’IDENTIFIANT‘ et ‘SÉLECTIONNEZ‘ le vôtre, puis cliquez sur le bouton ‘LANCER‘.

Et vous serez redirigé vers la nouvelle page et ci-dessous est le résultat.

Un nouvel inventaire a été créé, et le serveur de la machine cible a été ajouté à celui-ci.
Étape 4 - Configuration des Projets
Les projets sont représentés comme des Playbooks Ansible sur l’AWX. Ce sont des collections de Playbooks Ansible que nous pouvons gérer via un répertoire de projet local ou en utilisant le système SCM tel que Git, Subversion, Mercurial et RedHat Insights.
Pour créer de nouveaux projets, cliquez sur le menu ‘Projets‘ à gauche et cliquez sur le bouton ‘+’.

Tapez le ‘NOM‘ de votre projet et la ‘DESCRIPTION‘, puis choisissez le ‘TYPE SCM‘ sur ‘Git‘ et collez votre dépôt de playbook.

Maintenant, cliquez sur le bouton ‘ENREGISTRER‘ et en conséquence, un nouveau projet pour le playbook a été créé.

De plus :
Si vous souhaitez créer un nouveau projet avec le type SCM ‘Manuel‘, vous pouvez créer un nouveau répertoire de playbooks situé sous le répertoire ‘/var/lib/awx/projects‘.
Le répertoire ‘/var/lib/awx/projects’ est le répertoire de projet par défaut pour vos playbooks Ansible si vous utilisez la version docker de l’AWX avec ‘project_data_dir‘ activé.
Étape 5 - Créer de Nouveaux Modèles de Tâches
Le modèle de tâche est la définition de l’exécution des playbooks Ansible eux-mêmes. Donc, pour créer un nouveau modèle de tâche ou exécuter le modèle de tâche, nous devons ajouter le playbook Ansible de notre ‘Projet’, les ‘Identifiants’ pour l’authentification, et les machines cibles stockées dans les ‘Inventaires’.
Pour ce guide, nous avons déjà créé un nouveau Projet, un Identifiant et un Inventaire. Donc, cliquez simplement sur le menu ‘Modèles‘ à gauche, puis cliquez sur le bouton ‘+’ et choisissez l’option ‘Modèle de tâche‘.

Maintenant, vous devez taper le ‘NOM‘ et la ‘DESCRIPTION‘ de la tâche. Ensuite, choisissez l’ ‘INVENTAIRE‘, l’ ‘IDENTIFIANT‘, et le ‘PROJET‘. Et après cela, spécifiez le ‘PLAYBOOK‘ que vous souhaitez exécuter et déployer.

Et en conséquence, le nouveau modèle de tâche Ansible AWX a été créé.
Étape 6 - Exécuter le Modèle de Tâche
Après avoir créé le nouveau modèle de tâche, nous allons exécuter le modèle de tâche et déployer les Playbooks ‘Projets’ sur les hôtes cibles de l’ ‘Inventaire’.
Cliquez sur le menu ‘Modèles‘ à gauche et vous obtiendrez des listes de modèles de tâches disponibles.
Une fois la tâche terminée, vous obtiendrez le signe vert à l’intérieur du nom du modèle de tâche.

Cliquez sur le signe vert à l’intérieur du nom du modèle de tâche et vous verrez le résultat réel de cette tâche.

La tâche a été complétée avec succès, et la machine cible a installé le Stack LEMP via l’Ansible AWX.
Étape 7 - Tester la Machine Cible
Tester le nom de domaine de la machine cible. La configuration du nom de domaine est stockée dans la configuration ‘roles/web/vars/main.yml‘.

Vérifiez les services Nginx et PHP-FPM à l’aide des commandes systemctl.
systemctl status nginx
systemctl status php7.2-fpm
Tester la base de données MySQL sur la machine cible. Les configurations détaillées de la base de données MySQL sont stockées dans le fichier de configuration ‘roles/db/vars/main.yml’.

En conséquence, le Stack LEMP a été installé sur la machine cible via l’Ansible AWX.
Référence
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.