Automatisation de l'Informatique - Puppet ou Ansible ?

Présentation

Type d'Action (Article L. 6313-1) : Action d'acquisition, d'entretien ou de perfectionnement des connaissances.
Objectif : Maîtriser l'Automatisation de l'Informatique avec Puppet et Ansible.
Public : Techniciens et Administrateurs Linux confirmés.
Pré requis : Avoir réussi la certification CompTIA Linux+ Powered by LPI ou la certification LPIC-1 ou la certification SUSE CLA ou posséder les compétences équivalentes.
Méthode d'apprentissage : Alternance entre un scénario pédagogique clair et précis et des travaux pratiques basés sur des cas et exemples concrets.
Validation des acquis : Évaluation à l'aide d'un test auto-correctif.
Durée : 35 heures.

Programme

Automatisation de l'Informatique - Puppet ou Ansible ?

Que couvre ce cours ?

Qu'est-ce Puppet ?

Démarrer avec Puppet

LAB #1 - Installation

Installer Git

Sous Debian/Ubuntu

Sous Windows

Installer VirtualBox

Installer Vagrant

Installer la Machine Virtuelle Puppet

Sous Debian/Ubuntu

Sous Windows

Se connecter à la Machine Virtuelle Puppet

Sous Debian/Ubuntu

Sous Windows

Utiliser des mainifests

LAB #2 - Gestion des Fichiers

Modification d'un Fichier Existant sur le Serveur

Effectuer un Dry Run avec Puppet

LAB #3 - Gestion des Paquets

LAB #4 - Gestion des Services

Gérer du code Puppet avec Git

LAB #5 - Créer un Repository Local

Les Branches avec Git

LAB #6 - Créer un Repository Distant

LAB #7 - Cloner un Repository

LAB #8 - Appliquer des Modifications Automatiquement

LAB #9 - Mise en Place sur un Noeud

Les ressources Puppet

LAB #10 - La Ressource File

L'Attribut Source

L'Attribut owner

L'Attribut group

L'Attribut mode

L'Attribut ensure

L'Attribut recurse

LAB #11 - La Ressource package

L'Attribut ensure

Installation de Paquets

Le Cas Spécifique des Gems de Ruby

Suppression de Paquets

LAB #12 - La Ressource service

L'Attribut hasstatus

L'Attribut pattern

Les Attributs hasrestart et restart

LAB #13 - La Ressource user

Créer un Utlisateur

LAB #14 - La Ressource cron

L'Attribut user

L'Attribut environment

L'Attribut weekday

L'Attribut monthday

La Fonction fqdn_rand

LAB #15 - La Ressource exec

L'Attribut exec

L'Attribut cwd

L'Attribut command

L'Attribut creates

L'Attribut user

L'Attribut onlyif

L'Attribut unless

L'Attribut refreshonly

L'Attribut logoutput

L'Attribut timeout

Variables, Expressions, Expressions Conditionnelles et Facts

LAB #16 - Variables

Variables Simples

Tableaux

Hashes

LAB #17 - Expressions

Expressions Mathématiques

Expression Booléennes

Expressions Régulières

Expressions Conditionnelles

LAB #18 - Facts

Facts dans un Hash

Facts dans une Expression

Facts Externes

Facts Exécutables

LAB #19 - Iteration

Iteration et Tableaux

Iteration et Hashes

Administration Avancée de Puppet

Préparation

Sous Debian/Ubuntu

Sous Windows

Hiera

Présentation

LAB #20 - Environnements

LAB #21 -Les Types de Données Hiera

LAB #22 - Interpolation

Les Sources de Données basées sur des Facts

LAB #23 -Créer des Ressources avec le Données d'Hiera

LAB #24 - Gérer des Données Secrètes

Modules

LAB #25 - Installer des Modules

LAB #26 - Utilisation des Modules

puppetlabs/mysql

puppetlabs/apache

puppet/archive

Qu'est-ce Ansible ?

LAB #26 - Importation de vos Machines Virtuelles

LAB #27 - Connexion à vos Machines Virtuelles

MAC et Linux

Windows

LAB #28 - Installation d'Ansible

LAB #29 - Configuration de ssh et de sudo

ssh

sudo

LAB #30 - Débuter avec Ansible

La Commande ansible

LAB #31 - La Commande ansible-playbook

Playbook Files

Tasks

Handlers

Modules

Modules pour des Paquets

Modules pour des Fichiers

Modules pour le Système

Inventory Files

Privilèges

Création de Groupes

LAB #32 - La Commande ansible-galaxy

Utiliser des Rôles avec un Play Book

Ansible Galaxy

LAB #33 - Dépendances de Rôles

LAB #34 - Utilisation des Gabarits

Variables

Gabarits Conditionnels

Boucles

Macros

Filtres

Default

Join

Map

Gabarits Parent - Enfants

Le Gabarit Parent

Le Gabarit Enfant

LAB #35 - Gestion de la Hiérarchie des Variables

LAB #36 - Utilisation des Facts d'Ansible

LAB #37 - La Commande ansible-vault

Crypter le Fichier

Editer le Fichier

Décrypter le Fichier

Utilisation de Mots de Passe Aléatoires

LAB #38 - Ansible et Docker

Présentation de Docker

Installer Docker

La Connexion à Docker