Jour 1 – Matin
Fondamentaux de l’automatisation
- En quoi consiste la gestion de la configuration ?
- Quels sont les objectifs de ce type d’outil ?
- Comment situer Ansible par rapport aux autres outils de gestion de configuration, comme Puppet ou Chef ?
- Qu’est-ce qu’Ansible Galaxy, AWX et Ansible Tower (Red Hat Automation Control) ?
- Présentation des collections Ansible : format standard de distribution de rôles, modules et plugins
Principes d’Ansible
- Origine d’Ansible
- Définitions et terminologie
- Les concepts Ansible
- Mode de fonctionnement « agentless » d’Ansible
- Gestion
- Inventaires
- Playbooks
- Rôles
Playbook d’Ansible
- Commandes de bases
- Modules et tâches
- Ecriture de playbook et langage YAML
- Variables, boucles, conditions
- Rôles et inclusion
- Bonnes pratiques pour l’écriture de playbook
- Utilisation de Git pour la gestion des versions de playbooks
- Intégration d’Ansible dans un pipeline CI / CD
Jour 1 – Après-midi
Installation d’Ansible
- Configuration SSH
- Exécuter des commandes de bases
- Gestion des modules (fichiers, utilisateurs, packages, services…)
Exemples de travaux pratiques (à titre indicatif)
- Déploiement du lab
- Installation d’Ansible
- Manipulation des commandes ad-hoc
- Construction de code idempotent
Ansible Playbooks
- Ecriture de playbooks
- Piloter l’environnement avec Ansible
- Gérer le contrôle des tâches
- Comment intégrer Ansible avec des Cloud providers ?
- Utiliser Ansible dans le monde Windows
Exemples de travaux pratiques (à titre indicatif)
- Découverte de YAML
- Rédaction de playbooks
- Gestion des inventaires et déploiement de middleware
Rôles d’Ansible
- Présentation des rôles
- Pourquoi utiliser des rôles ?
- Comment architecturer son code avec des rôles ?
Exemples de travaux pratiques (à titre indicatif)
- Création de rôles
- Intégration de rôles aux playbooks
Jour 2 – Matin
Playbooks avancés
- Présentation de l’utilisation des variables à plusieurs niveaux
- Templating avec Jinja2
- Utilisation des lookup et des filtres
- Utilisation de ansible-lint pour la vérification de conformité des playbooks
Exemples de travaux pratiques (à titre indicatif)
- Développement en autonomie d’un playbook complexe sur la base des notions acquises
- Validation syntaxique et tests
- Développement de son propre module Ansible
Jour 2 – Après-midi
Ansible Vault
- Présentation d’Ansible Vault
- Gestion des secrets
- Chiffrement et déchiffrement d’un fichier
- Bonnes pratiques de sécurisation des fichiers vault.yml et intégration dans un dépôt Git avec .gitignore
Exemples de travaux pratiques (à titre indicatif)
- Création de fichiers de variables cryptées
- Utilisation avec commandes ad-hoc et avec playbook
Ansible Galaxy
- Présentation d’Ansible Galaxy
Exemple de travaux pratiques (à titre indicatif)
- Utilisation de rôles Ansible depuis Galaxy
- Exemple avec installation de Docker, MySQL, Jenkins…

