Février 2025 Archives
mar. 18 févr. 2025 16:37:18 CET
Édition 2025 des manipulations sur l'Infrastructure as Code : GitLab CI et Ansible pour l'automatisation des VM
Suite au précédent billet sur l'utilisation d'Ansible pour créer des machines virtuelles Debian GNU/Linux, voici l'édition 2025 du document de travaux pratiques IaC Lab 2 – Using GitLab CI to run Ansible playbooks and build new Debian GNU/Linux Virtual Machines.

Premiers pas vers l'intégration continue
Alors que le premier document (Lab 01) se concentre sur le développement avec Ansible, ce second volet introduit les étudiants à l'utilisation de GitLab CI/CD pour automatiser la création et la configuration des machines virtuelles. C'est une évolution logique dans l'approche de l'Infrastructure as Code (IaC).
Points clés de ces manipulations
-
Installation et configuration de GitLab Runner sur une machine virtuelle de développement (DevNet). C'est l'étape essentielle pour permettre l'exécution des pipelines CI/CD.
-
Création d'un pipeline CI multi-étapes .gitlab-ci.yml et intégration progressive de plusieurs étapes :
- Ping des hyperviseurs
- Préparation de l'environnement sur l'hyperviseur
- Construction et personnalisation des machines virtuelles
- Configuration finale des machines virtuelles
-
Gestion des artefacts dans GitLab CI avec le partage des fichiers entre les différentes étapes du pipeline
-
Résolution de problèmes dans le but de résoudre les échecs de pipeline
Illustration du principe DevOps selon lequel « l'échec est normal »
Améliorations par rapport à l'édition précédente
Comme mentionné dans le billet précédent, cette nouvelle édition bénéficie des retours d'expérience des étudiants. Elle met l'accent sur :
- La gestion des délais de démarrage des machines virtuelles
- L'optimisation de la collecte des faits
- L'utilisation de pré-tâches
De plus, l'édition 2025 introduit l'utilisation de scripts Python pour gérer la configuration des ports de commutateurs et la personnalisation des machines virtuelles avec Cloud-init, simplifiant ainsi les playbooks Ansible tout en renforçant l'idempotence.
Pour conclure...
Ces supports de TP offrent aux étudiants une expérience pratique complète de l'IaC et du CI/CD. Ils essaient de se rapprocher des scénarios du monde réel où ces technologies sont de plus en plus essentielles. Ils montrent la puissance de l'automatisation dans la création et la configuration des environnements virtuels, tout en enseignant des compétences en résolution de problèmes et en gestion de pipeline.
Vous êtes invités à explorer ce nouveau document de TP et à partager vos retours. Votre expérience contribuera à l'amélioration continue de ces ressources pédagogiques.
Posté par Philippe Latu | permalien | dans : m2, formations, travaux_pratiques, système, virtualisation | Read it in english with Google
lun. 17 févr. 2025 17:17:57 CET
Utiliser Ansible pour construire de nouvelles machines virtuelles Debian GNU/Linux
Voici le lien vers l'édition 2025 du document sur l'utilisation d'Ansible pour créer des machines virtuelles Debian GNU/Linux.
Si la promesse d'idempotence d'Ansible est parfois difficile à tenir, les jeux de tests produits par les étudiants ont permis d'améliorer considérablement les playbooks. Cette nouvelle version met l'accent sur la gestion des délais de démarrage des VM, l'optimisation de la collecte des faits et l'utilisation de pré-tâches.
Grâce aux retours d'expérience des étudiants, le document offre désormais une approche plus robuste et pratique de l'Infrastructure as Code.

L'autre évolution majeure de l'année universitaire 2024-2025 concerne le passage de la configuration réseau de tous les supports de la formation en mode déclaratif.
L'édition 2025 du document utilise des scripts Python pour gérer tous les paramètres de configuration des ports de commutateurs et de la personnalisation des machines virtuelles avec Cloud-init. La répartition des rôles entre personnalisation et automatisation est ainsi complètement revue par rapport à l'édition précédente. Les playbooks Ansible se sont donc simplifiés pour la partie traitements et complexifiés pour la partie idempotence.
Voici les liens vers les dépôts Git :
- Le dépôt startup-scripts contient les codes des scripts Python, comme switch-conf.py qui permet de configurer les ports Open vSwitch sur l'hyperviseur et le script lab-startup.py qui permet de déclarer les propriétés des machines virtuelles à instancier.
- Le dépôt Lab-01-02 contient tous les codes nécessaires à la rédaction de cette nouvelle édition. Les playbooks Ansible font appel aux scripts Python.
Posté par Philippe Latu | permalien | dans : formations, travaux_pratiques, système, virtualisation | Read it in english with Google