Formation ANSIBLE Overview
Version du programme : 1
Type de formation
MixteDurée de formation
21 heures (3 jours)Accessibilité
OuiFormation ANSIBLE Overview
Cette formation de trois jours offre une introduction complète et pratique à Ansible. Elle couvre les fondamentaux, les playbooks avancés, la sécurisation et le hardening des serveurs Linux, ainsi que le déploiement d'applications. Chaque module théorique est associé à un quiz de validation des acquis et à un laboratoire pratique guidé sur l'environnement personnel de chaque participant (5 VMs Ubuntu 22.04.5 LTS).
Version PDFObjectifs de la formation
- Comprendre les concepts fondamentaux d'Ansible
- Installer et configurer Ansible dans leur environnement
- Écrire des playbooks Ansible efficaces et maintenables
- Gérer la configuration de multiples serveurs
- Utiliser les commandes Ad-Hoc pour l'administration quotidienne
- Gérer les variables, facts et templates Jinja2
- Organiser des projets Ansible avec des rôles et des collections
- Gérer les secrets et la sécurité avec Ansible Vault
- Appliquer des techniques de hardening de serveurs Ubuntu avec Ansible
- Automatiser la conformité CIS et le durcissement SSH/firewall/kernel
- Automatiser le déploiement d'applications et les rollbacks
- Déboguer et maintenir des playbooks Ansible en production
Profil des bénéficiaires
- Administrateurs systèmes
- Développeurs DevOps
- Ingénieurs infrastructure
- Linux/Unix base
- Ligne de commande
- Notions SSH et YAML
Contenu de la formation
01- Introduction à Ansible: Concepts fondamentaux
- Qu'est-ce que l'automatisation de configuration?
- Avantages d'Ansible vs Chef, Puppet, Salt
- Architecture sans agent (agentless) — SSH
- Cas d'usage : configuration, déploiement, orchestration, hardening
- QUIZ — Quiz — Architecture et concepts (6 questions)
- ⚡LAB — Installation et première prise en main - Installer Ansible via pip dans un environnement virtuel Python - Créer l'utilisateur ansible, configurer les clés SSH sur les 4 hôtes - Valider la connectivité : ansible all -m ping - Collecter les premiers facts : ansible all -m setup
02- Installation et configuration : Environnement opérationnel
- Installation d'Ansible (pip / apt) — ansible --version
- Fichier ansible.cfg — hiérarchie et priorités de configuration
- Paramètres essentiels : forks, timeout, pipelining, become
- Inventaire statique INI et YAML — groupes, variables, imbrication
- Inventaire dynamique — scripts Python, plugins
- QUIZ — Quiz — Configuration & inventaire (7 questions)
- ⚡LAB — Configuration de l'environnement de formation - Créer un ansible.cfg optimisé (SSH pipelining, ControlMaster, forks=10) - Construire un inventaire YAML structuré avec groupes imbriqués - Configurer host_vars et group_vars - Valider avec ansible-config dump --only-changed
03- Premiers pas — Commandes Ad-Hoc
- Syntaxe ansible : -m module, -a arguments, -i inventaire, --become
- Modules courants : ping, command, shell, copy, file, package, service
- Collecte de facts ad-hoc : ansible all -m setup -a 'filter=...'
- Débogage de connexion : -vvv, --check, --diff
- Parallélisme : -f forks, --limit, --tags
- QUIZ — Quiz — Commandes Ad-Hoc (8 questions)
- ⚡LAB — Commandes ad-hoc & modules essentiels - Exécuter des commandes ad-hoc sur les 4 hôtes avec différents modules - Installer/désinstaller un package, démarrer/arrêter un service - Collecter des facts ciblés (distribution, réseau, mémoire) - Analyser les sorties -v / -vvv pour diagnostiquer un problème
04- Inventaires complexes
- Inventaires YAML — structure hiérarchique, groupes enfants
- host_vars/ et group_vars/ — organisation des variables
- Inventaires dynamiques — scripts Python, plugin aws_ec2, toml
- Gestion multi-environnements (dev / staging / prod)
- Diagnostic : ansible-inventory --graph, --list, --host
- QUIZ — Quiz — Inventaires avancés (6 questions)
- ⚡LAB — Inventaires complexes - Créer un inventaire YAML complet avec groupes webservers/databases/monitoring - Organiser les variables dans host_vars/ et group_vars/ - Développer un script d'inventaire dynamique Python basique - Valider avec ansible-inventory --graph et --host
05- Les playbooks Ansible
- Structure YAML : plays, tasks, handlers, become
- Variables et facts — précédence, set_fact, register
- Templates Jinja2 — filtres, conditions, boucles dans les templates
- Conditions (when) et boucles (loop) avancées
- Blocs block / rescue / always — gestion structurée des erreurs
- Exécution : ansible-playbook --check --diff --start-at-task --tags
- QUIZ — Quiz — Playbooks et YAML (8 questions)
- ⚡LAB — Playbooks avancés avec ansible-playbook - Développer un playbook multi-plays déployant une stack Apache + MariaDB - Implémenter handlers, templates Jinja2 et variables de groupe - Utiliser block/rescue/always pour un rollback en cas d'échec - Déboguer avec --check -vvv et --start-at-task
06- Variables, facts et gestion des secrets
- Précédence des 22 niveaux de variables Ansible
- Facts personnalisés (/etc/ansible/facts.d/)
- Ansible Vault — création, édition, chiffrement de fichiers et variables inline
- Multiple vault IDs — infrastructure / applications / databases
- Bonnes pratiques : ne jamais stocker de secrets en clair dans Git
- Intégration vault-password-file et ANSIBLE_VAULT_PASSWORD_FILE
- QUIZ — Quiz — Variables et Vault (7 questions)
- ⚡LAB — Variables, facts et Ansible Vault - Démontrer la précédence des variables par surcharge ciblée - Créer et déployer des facts personnalisés sur les hôtes - Chiffrer des mots de passe avec Vault et les utiliser dans un playbook - Configurer multi vault IDs et tester le déchiffrement sélectif
07- Contrôle de flux et logique avancée
- Boucles avancées : loop, with_items, with_dict, with_fileglob
- Filtres Jinja2 avancés sur les listes et les dictionnaires
- Handlers avancés : listen, flush_handlers, déclenchement conditionnel
- Stratégies d'exécution : linear, free, serial (rolling update)
- Délégation de tâches : delegate_to, run_once
- QUIZ — Quiz — Logique et contrôle de flux (7 questions)
- ⚡LAB — Contrôle de flux et logique avancée - Implémenter des boucles avec transformations de données (map, select, reject) - Créer des handlers avec listen et flush_handlers forcé - Réaliser un rolling update avec serial: 1 sur les 4 hôtes - Mettre en place une délégation de tâche vers le noeud de contrôle
Équipe pédagogique
Suivi de l'exécution et évaluation des résultats
- Quiz de validation des acquis en fin de chaque module
- QCM de 5 à 8 questions par module. Format : questions à choix unique, vrai/faux et mise en situation pratique. Correction collective en fin de module
- Feuilles de présence.
- Formulaires d'évaluation de la formation.
Ressources techniques et pédagogiques
- 9 Labs pratiques guidés
- Environnement labs : 5 VMs Ubuntu 22.04.5 LTS / participant — pré-installées (1 Control Node + 4 Managed Hosts)
- Outils : Ansible (ansible / ansible-playbook / ansible-vault / ansible-inventory)
- Document : support de formation en français
Qualité et satisfaction
Capacité d'accueil
Délai d'accès
Accessibilité
BIGSO by LABSOFT s’engage à accueillir toute personne en situation de handicap dans des conditions adaptées et respectueuses, notamment dans le cadre de nos formations professionnelles. Notre démarche vise à : - Favoriser l’accès de tous à nos formations, sans discrimination. - Garantir un accueil adapté en cas de besoin. - Mettre en œuvre des aménagements spécifiques lorsque cela est nécessaire. - S’inscrire dans une logique de coopération avec les acteurs spécialisés.