أهداف الدورة التكوينية
Objectif opérationnel :
Savoir utiliser Ansible pour industrialiser la configuration et le déploiement de ses applications.
Objectifs pédagogiques :
À l’issue de cette formation Ansible Industrialiser les déploiements, vous aurez acquis les connaissances et compétences nécessaires pour :
- Connaître l’intérêt d’Ansible et ses caractéristiques principales.
- Savoir installer et configurer Ansible
- Être capable de mettre en œuvre les playbooks, modules, rôles, tâches…
- Connaître les fonctionnalités avancées d’Ansible
- Savoir optimiser le pilotage d’un parc de serveurs et le déploiement d’applications
- Maîtriser les bonnes pratiques sous Ansible
لمن تتوجه هذه الدورة؟
Ce cours Ansible s’adresse aux administrateurs et aux exploitants souhaitant mettre en œuvre Ansible pour le déploiement des services et applications. Il intéressera également les équipes DevOps en charge de l’intégration continue.
المتطلبات المسبقة
Les participants à cette formation doivent nécessairement savoir administrer un système Linux. La connaissance d’un langage de développement de scripts leur permettra de comprendre plus rapidement certains des aspects avancés d’Ansible.
البرنامج
Présentation de Ansible
- La place de Ansible dans le mouvement DevOps Les autres outils (Puppet, Chef, Saltstack, …) Principes d’une Infrastructure as Code (IaC) Fonctionnement général de Ansible
Installation et première utilisation
- Installation d’Ansible Principes des clefs ssh (public, private) Les fichiers utilisés par Ansible (/etc/ansible, inventaire, …) Test de la connectivité
Les commandes Ad-Hoc et les modules Ansible
- Les modules Ansible Les modules command et shell Le transfert de fichiers La gestion des packages La gestion des utilisateurs La gestion des services Le module setup
Démarrer avec les Playbooks
- Rôle d’un fichier playbook Les différentes sections (hôte, variable, tâches) Les variables et les tableaux La priorité et la portée des variables La programmation (boucle, condition, filtre, opérations, etc.) Exemples de templates utiles Inclusion et import de fichiers Debug et erreurs classiques
Jour 2
Les différents rôles sous Ansible
- Comment s’assurer de la présence/absence de fonctionnalité ? Structure d’un rôle Exécution d’un rôle Quelques exemples de rôle Utiliser des éléments existants (Ansible Galaxy)
Fonctionnalités avancées
- Bonnes pratiques avec les tags Utiliser les caractéristiques de la machine (Gather_facts, module setup) Tester notre playbook avant exécution (dry-run, step-by-step et diff) La visualisation d’un playbook Accéder à des sources de données (plugin lookup) Le fichier d’inventaire dynamique et temporaire Grouper des actions logique (blocks) Gérer les erreurs (any_errors_fatal) Les prés et post tasks La délégation par deleGust_to Parallélisme et serialisation des tâches L’escalade des privilèges Test de cohérence : assert et fail
Compléments et bonnes pratiques
- Développer ses propres modules, déboguer un module, les plug-ins. Utiliser les collections Ansible Vault et l’encryptage Créer ses propres filtres. Ansible et Ansible Tower. Utiliser un SCM avec Ansible Où stocker les fichiers Ansible ? La gestion des inventaires
Description de la formation Ansible Industrialiser les déploiements
Ansible est une solution open source qui permet d’automatiser la configuration et le déploiement d’application sur un ensemble de serveurs. Sa grande force est sa simplicité de mise en œuvre à travers de simples connexions ssh. Un langage de description très facile à appréhender permet d’exprimer ses souhaits d’installation sur les serveurs physiques ou virtuels cibles. Ansible se charge alors d’atteindre l’état désiré quel que soit l’état initial des serveurs. Les responsables de déploiement peuvent alors organiser leur projet en mettant en place des bibliothèques, des gabarits, des variables.
Cette formation pratique vous apprend à découvrir tout le potentiel d’Ansible et surtout à le mettre en œuvre (playbooks, modules, rôles, tâches, déploiement, etc.) tout en étant capable de le positionner dans un processus d’intégration continue avec les autres outils DevOps.
المواضيع: Ansible

