Automatisation avec Ansible
Dans le cadre de ce projet, j'ai utilisé Ansible pour automatiser le déploiement de la configuration NTP (Network Time Protocol) sur l'ensemble des machines d'un parc serveur. L'objectif était de garantir une synchronisation temporelle homogène et fiable sur toute l'infrastructure.
Création du rôle Ansible
J'ai conçu un rôle Ansible structuré, respectant les bonnes pratiques de l'écosystème Ansible, comprenant :
- Un dossier
tasks/contenant les tâches d'installation et de configuration du service NTP - Un dossier
templates/avec le fichier de configuration NTP généré dynamiquement via Jinja2 - Un dossier
handlers/pour redémarrer le service NTP après chaque modification - Un dossier
defaults/définissant les variables par défaut (serveurs NTP, fuseau horaire...)
Création du playbook
Un playbook principal a été rédigé pour orchestrer le déploiement du rôle sur l'ensemble des machines de l'inventaire. Il inclut :
- La sélection des hôtes cibles via l'inventaire Ansible
- L'appel du rôle NTP avec les variables adaptées à l'environnement
- La gestion des droits d'exécution en mode privilégié (
become: true)
Résultat
Grâce à ce playbook, la configuration NTP a pu être déployée de manière cohérente et reproductible sur l'ensemble du parc en quelques secondes. Ce projet m'a permis de maîtriser la création de rôles Ansible, la gestion des inventaires et l'automatisation des tâches d'administration système.