Positionnement de Ansible
- Ansible et DevOps.
- Devops & IaC (Infrastructure as Code), le code source de l'infrastructure.
- Outils Puppet, Chef, Saltstack... Ansible.
- Fonctionnement d'Ansible.
- Architecture : inventaire, modules, playbooks, tasks, rôles.
Installation et configuration
- Installation et prise en main de l'outil.
- Les commandes de base d'Ansible.
- Configuration des noeuds : clés ssh, escalade de privilèges sudo.
- Le fichier de configuration.
- L'inventaire : création et utilisation.
Travaux pratiques
Installation d'Ansible et configuration de plusieurs nœuds clients, création de l'inventaire et utilisation des premières commandes.
Les commandes Ad Hoc
- Parallélisme et commandes Shell.
- Transferts de fichiers.
- Les packages avec yum, apt.
- Les utilisateurs et les groupes.
- Les services.
Travaux pratiques
Utilisation des différentes commandes Ad hoc en parallèle sur plusieurs nœuds.
Les playbooks
- Introduction aux playbooks.
- Définition des tasks, plays.
- Syntaxe Yaml.
- Variables, modules et tâches.
- Exécution d'un playbook.
- Test d'un playbook en dry-run.
- Exécution step by step, saut de tâches.
- Gestion des erreurs.
Travaux pratiques
Ecriture d'un playbook simple et composé de plusieurs tâches.
Ecrire du code modulaire
- Notifications et Handlers.
- Les rôles et les includes. Les tags.
- Les modules de la communauté.
- Ansible-galaxy : partager son code.
Travaux pratiques
Exploration de la galaxie Ansible, téléchargement et utilisation de modules, ajout de tags dans un playbook.
Ecrire un playbook
- Les variables. Les templates et les filtres.
- Structures de contrôle : conditions, boucles et blocks.
- Les prompts. Les facts.
- La rédaction de playbooks.
Travaux pratiques
Ecrire un playbook complet pour le déploiement d'un service Apache sur plusieurs nœuds.
Commandes avancées
- Vault : chiffrement de données.
- Les lookups.
- Développer ses propres modules, déboguer un module, les plug-ins.
- Créer ses propres filtres.
- Ansible et Ansible Tower.