Ansible : introduction et mini-tuto
J’ai récement fait un peu de veille sur Ansible, un outils d’automatisation de tâche, dans la mouvance devops.
Pour l’occasion, j’ai pour la première fois testé (et approuvé!) slides.com un site de création de présentation permettant de facilement créer ses slides et de réaliser la présentation (avec un mode présentateur, un pilotage depuis un smartphone, une présentation suivit par plusieurs personnes chaqu’un sur son navigateur, …).
Pour que tout ceci ne se perde pas, je vous les partages ici.
Introduction
Ansible en une ligne : “Simple IT Automation” => c’est simple (sans agent, YAML), et c’est pour faire de l’automatisation de tâche IT …
Pour une introduction à Ansible, ces quelques vidéos très courtes en français sont une bonne entrée dans l’univers d’Ansible :
https://hackademy.io/tutoriel-videos/ansible-automatiser-gestion-serveur-partie-1
https://hackademy.io/tutoriel-videos/ansible-decouverte-playbook
https://hackademy.io/tutoriel-videos/roles-ansible
Elles définissent les notions suivante :
- inventory : l’inventaire des serveurs (des hôtes)
- fact : les informations récupérée automatiquement par Ansible sur les hôtes (variable d’environement, version d’OS, …)
- var : les variables qu’on peut utiliser dans les scripts
- template : un template de fichier (au format Jinja2)
- module : ce qu’on execute sur un serveur
- task : un ensemble de module paramétrisé (un script)
- role : un ensemble de tâche, variable, template regroupés fonctionnellement
- playbook : ce qu’on veut faire faire à Ansible : on associe un host ou un groupe de host à un ou plusieurs rôle via un playbook
Tutoriel
Pour présenter la technologie à des collègues, j’ai créé ce petit tutoriel (moins de 2H pour le suivre) dont l’avantage est d’être totalement réalisable depuis une simple VM avec docker et ansible installé dessus. Le principe est de provisionner des serveurs via ansible en utilisant des conteneurs docker à la place des serveurs réel (pour éviter d’avoir 4VM à faire tourner sur son poste).
Ce tutoriel est facilement réalisable (juste faire attention, j’utilise un proxy dans mes scripts Ansible dont vous n’avez certainement pas besoin).
Et le voici : Tutoriel d’introduction à Ansible
J’espère que ça pourra vous servir 😉