Lab 12 : Développement de Rôles Ansible avec Molecule
Objectifs
Section intitulée « Objectifs »Dans ce TP, vous allez apprendre à :
- Créer et structurer des rôles Ansible.
- Utiliser Molecule pour tester vos rôles de manière isolée.
- Réutiliser et partager des rôles via Ansible Galaxy.
- Appliquer les bonnes pratiques pour la création et la gestion des rôles.
Prérequis
Section intitulée « Prérequis »Avant de commencer ce TP, assurez-vous d’avoir :
- Complété les TPs précédents sur Ansible.
- Installé Molecule et ses dépendances sur votre machine.
- Des connaissances de base sur la structure des rôles dans Ansible.
Architecture du TP
Section intitulée « Architecture du TP »Dans ce TP, vous allez apprendre à :
- Créer un rôle pour installer et configurer Apache.
- Tester ce rôle avec Molecule.
- Publier le rôle sur Ansible Galaxy.
Introduction aux Rôles Ansible
Section intitulée « Introduction aux Rôles Ansible »Les rôles Ansible permettent de regrouper des tâches, des variables, des fichiers, des templates, etc., dans une structure organisée et réutilisable. Ils sont essentiels pour organiser vos playbooks de manière modulaire et maintenir des configurations complexes.
Création d’un Rôle pour Apache
Section intitulée « Création d’un Rôle pour Apache »- Créez un répertoire pour votre projet et initialisez un nouveau rôle avec Ansible Galaxy :
mkdir roles/apachecd roles/apacheansible-galaxy init apache- Créez le code de fichier
tasks/main.ymlpour y inclure les tâches nécessaires à l’installation et à la configuration d’Apache avec prise en charge des systèmes d’exploitation Ubuntu 24 et Rocky9 :- Installation des packages
- Modification du répertoire ou sont stockés les données
/data/www/html - Démarrage du service
Validation du TP
Section intitulée « Validation du TP »Pour valider ce TP, assurez-vous que :
- Vous avez créé un rôle Ansible structuré pour Apache.
- Vous avez testé ce rôle avec Molecule en utilisant un conteneur Docker.
Challenge
Section intitulée « Challenge »Pour aller plus loin, essayez les défis suivants :
- Ajoutez des tests de vérification supplémentaires dans Molecule pour valider la configuration du rôle (par exemple, vérifier que le port 80 est ouvert).
- Créez un rôle pour un autre service (comme MySQL ou Nginx) et testez-le avec Molecule.
- Appliquez des pratiques avancées dans la création de rôles, telles que l’utilisation de handlers, de templates, ou de fichiers spécifiques aux variables.