Ceci est une ancienne révision du document !
Table des matières
Version : 2021.01
Dernière mise-à-jour : 2021/04/11 15:33
DOF406 - Validation de la Formation
Contenu du Module
- DOF406 - Validation de la Formation
- Contenu du Module
- Pour Aller Plus Loin
- Support de Cours
- L'Infrastructure Hors Formation
- Matériel
- Logiciels
- Machines Virtuelles
- Réinstaller l'Environnement de Travail
- Pour les modules DOF401 au DOF404
- Pour le module DOF405
- Rappel du Programme de la Formation
- Évaluation de la Formation
- Remerciements
Pour Aller Plus Loin
Support de Cours
L'accès au supports de cours ainsi que les LABS et les validations des acquis se fait grâce à un abonnement annuel par stagiaire à une plateforme de cours sur Internet.
L'utilisation de cette plateforme permet :
- de mesurer le niveau du stagiaire avant la formation et celui atteint en fin de formation grâce aux tests de validations des acquis,
- de suivre du travail de chaque participant en termes de temps passé dans chaque module grâce à un reporting détaillé.
L'abonnement permet aux stagiaires :
- de télécharger des supports de cours et des LABS au format PDF le dernier jour de la formation,
- de refaire les LABS en mode autonome en cas de missions décalées en relation avec le contenu de la formation initiale,
- de rester en contact avec le formateur en cas de problèmes en production liés au contenu du cours,
- de consulter les mises à jour du contenu des supports de cours pendant la période de l'abonnement,
- d'échanger avec les autres participants de la session ainsi qu'avec les anciens stagiaires.
L'Infrastructure Hors Formation
Matériel
- Un poste 64 bits (MacOS, Linux, Windows™ ou Solaris™),
- Dans le cas de Windows™, seulement la version 7 ou 10 avec Hyper-V désinstallé,
- Le mot de passe du compte administrateur du système,
- Clavier AZERTY FR ou QWERTY US,
- 16 Go de RAM minimum,
- Processeur 8 cœurs minimum,
- 16 Go d'espace disque disponible.
Logiciels
- Oracle VirtualBox v 6.0 ou plus (MacOS, Linux, Windows™ ou Solaris™),
- Si Windows™ - Putty et WinSCP,
- Navigateur Web Chrome ou Firefox.
Machines Virtuelles
A télécharger :
Réinstaller l'Environnement de Travail
Pour les modules DOF401 au DOF404
Commencez par créer votre compte sur GitHub https://github.com/. Naviguez à l'URL https://git-scm.com/download et suivez les instructions pour installer Git sur votre système d'exploitation.
Clonez ensuite les fichiers pour ce cours :
Sous Linux :
$ git clone https://github.com/bitfield/puppet-beginners-guide-3.git Clonage dans 'puppet-beginners-guide-3'... remote: Counting objects: 854, done. remote: Total 854 (delta 0), reused 0 (delta 0), pack-reused 854 Réception d'objets: 100% (854/854), 98.47 KiB | 320.00 KiB/s, fait. Résolution des deltas: 100% (443/443), fait.
Sous Windows :
C:\Users\trainee>git clone https://github.com/bitfield/puppet-beginners-guide-3.git Cloning into 'puppet-beginners-guide-3'... remote: Counting objects: 854, done. remote: Total 854 (delta 0), reused 0 (delta 0), pack-reused 854R Receiving objects: 100% (854/854), 98.47 KiB | 202.00 KiB/s, done. Resolving deltas: 100% (443/443), done.
Naviguez ensuite à l'URL https://www.virtualbox.org/wiki/Downloads et suivez les instructions pour installer VirtualBox sur votre système d'exploitation.
Naviguez ensuite à l'URL https://www.vagrantup.com/downloads.html et suivez les instructions pour installer Vagrant sur votre système d'exploitation.
Installer la Machine Virtuelle Puppet :
Sous Linux :
vous@votrepc:~$ cd puppet-beginners-guide-3 vous@votrepc:~/puppet-beginners-guide-3$ scripts/start_vagrant.sh
Sous Windows :
Ajoutez le chemin C:\Program Files\Git\bin à votre PATH et au PATH système.
Par exemple, sous Windows™ 10 :
Panneau de configuration > Système et sécurité > Système > Modifier les paramètres > Paramètres système avancés > Variables d'environnement > Path > Modifier (Pour votre utilisateur ET le système) > Nouveau > C:\Program Files\Git\bin > OK > OK > OK
Exécutez cmd et saisissez les commandes suivantes :
cd puppet-beginners-guide-3 Microsoft Windows [version 10.0.16299.431] (c) 2017 Microsoft Corporation. Tous droits réservés. C:\Users\trainee>cd puppet-beginners-guide-3 C:\Users\trainee\puppet-beginners-guide-3>cd scripts C:\Users\trainee\puppet-beginners-guide-3\scripts>start_vagrant.sh C:\Users\trainee\puppet-beginners-guide-3\scripts>
Git bash sera lancé pour exécuter le script.
A l'issue du processus d'installation, vous obtiendrez :
... default: The `minitar` executable is no longer bundled with `minitar`. If you are default: expecting this executable, make sure you also install `minitar-cli`. default: Successfully installed minitar-0.6.1 default: Successfully installed puppet_forge-2.2.9 default: Successfully installed r10k-2.6.2 default: 10 gems installed
Connectez-vous à la machine virtuelle en utilisant la commande vagrant ssh :
Sous Linux :
vous@votrepc:~/puppet-beginners-guide-3$ vagrant ssh Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-173-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage 7 packages can be updated. 7 updates are security updates. New release '18.04.3 LTS' available. Run 'do-release-upgrade' to upgrade to it. vagrant@ubuntu-xenial:~$
Vérifiez que Puppet a bien été installé :
vagrant@ubuntu-xenial:~$ puppet --version 6.17.0 vagrant@ubuntu-xenial:~$ exit logout Connection to 127.0.0.1 closed. vous@votrepc:~/puppet-beginners-guide-3$
Sous Windows :
C:\Users\trainee\puppet-beginners-guide-3\scripts>vagrant ssh Welcome to Ubuntu 16.04.4 LTS (GNU/Linux 4.4.0-127-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage Get cloud support with Ubuntu Advantage Cloud Guest: http://www.ubuntu.com/business/services/cloud 0 packages can be updated. 0 updates are security updates. vagrant@ubuntu-xenial:~$
Vérifiez que Puppet a bien été installé :
vagrant@ubuntu-xenial:~$ puppet --version 6.17.0 vagrant@ubuntu-xenial:~$ exit logout Connection to 127.0.0.1 closed. C:\Users\trainee\puppet-beginners-guide-3\scripts>
Si vous souhaitez remettre votre infrastructure à zéro sous VirtualBox, supprimez simplement la machine virtuelle Puppet :
Sous Linux :
vous@votrepc:~$ cd puppet-beginners-guide-3 vous@votrepc:~/puppet-beginners-guide-3$ vagrant destroy
Sous Windows :
C:\Users\trainee>cd puppet-beginners-guide-3 C:\Users\trainee\puppet-beginners-guide-3>vagrant destroy
Pour le module DOF405
Téléchargez et importez dans VirtualBox les trois machines virtuelles PuppetMaster, PuppetSlave01 et PuppetSlave02. Ces machines ont été configurées de la façon suivante :
Machine | Nom d'hôte | Adresse IP | OS | RAM |
---|---|---|---|---|
PuppetMaster | master.i2tch.loc | 10.0.2.4 | Ubuntu 18.04 | 1024 Mo |
PuppetSlave01 | slave01.i2tch.loc | 10.0.2.5 | Ubuntu 18.04 | 1024 Mo |
PuppetSlave02 | slave02.i2tch.loc | 10.0.2.6 | CentOS 7 | 512 Mo |
Les noms d'utilisateurs et les mots de passe sont identiques pour chaque machine :
Utilisateur | Mot de Passe |
---|---|
trainee | trainee |
root | fenestros |
Créez le réseau Nat NatNetwork :
vous@votrepc:~$ VBoxManage natnetwork add --netname NatNetwork --network "10.0.2.0/24" --enable vous@votrepc:~$ VBoxManage natnetwork modify --netname NatNetwork --dhcp on vous@votrepc:~$ VBoxManage natnetwork start --netname NatNetwork
Créez ensuite les redirections de ports dans le réseau NAT NatNetwork :
vous@votrepc:~$ VBoxManage natnetwork modify --netname NatNetwork --port-forward-4 "PuppetMaster:tcp:[]:2422:[10.0.2.4]:22" vous@votrepc:~$ VBoxManage natnetwork modify --netname NatNetwork --port-forward-4 "PuppetSlave01:tcp:[]:2522:[10.0.2.5]:22" vous@votrepc:~$ VBoxManage natnetwork modify --netname NatNetwork --port-forward-4 "PuppetSlave02:tcp:[]:2622:[10.0.2.6]:22"
Modifiez la RAM de la machine virtuelle PuppetMaster :
vous@votrepc:~$ VBoxManage modifyvm "PuppetMaster" --memory 4096
ainsi que la RAM de la machine virtuelle PuppetSlave02 :
vous@votrepc:~$ VBoxManage modifyvm "PuppetSlave02" --memory 1024
Démarrez ensuite les trois machines virtuelles :
vous@votrepc:~$ VBoxManage startvm PuppetMaster --type headless Waiting for VM "PuppetMaster" to power on... VM "PuppetMaster" has been successfully started. vous@votrepc:~$ VBoxManage startvm PuppetSlave01 --type headless Waiting for VM "PuppetSlave01" to power on... VM "PuppetSlave01" has been successfully started. vous@votrepc:~$ VBoxManage startvm PuppetSlave02 --type headless Waiting for VM "PuppetSlave02" to power on... VM "PuppetSlave02" has been successfully started.
Dans un terminal, tapez la commande suivante pour vous connecter à la machine PuppetMaster :
vous@votrepc:~$ ssh -l trainee localhost -p 2422
Dans un terminal, tapez la commande suivante pour vous connecter à la machine PuppetSlave01 :
vous@votrepc:~$ ssh -l trainee localhost -p 2522
Dans un terminal, tapez la commande suivante pour vous connecter à la machine PuppetSlave02 :
vous@votrepc:~$ ssh -l trainee localhost -p 2622
Configurez les trois machines virtuelles pour qu'elles soient sur le même fuseau d'horaire :
trainee@master:~$ su - Password: fenestros root@master:~# dpkg-reconfigure tzdata Current default time zone: 'Europe/Paris' Local time is now: Wed Feb 12 14:11:40 CET 2020. Universal Time is now: Wed Feb 12 13:11:40 UTC 2020.
trainee@slave01:~$ su - Password: fenestros root@slave01:~# dpkg-reconfigure tzdata Current default time zone: 'Europe/Paris' Local time is now: Wed Feb 12 14:12:21 CET 2020. Universal Time is now: Wed Feb 12 13:12:21 UTC 2020.
[trainee@slave02 ~]$ su - Mot de passe : fenestros Dernière connexion : mercredi 13 mars 2019 à 12:55:24 CET sur tty1 [root@slave02 ~]# timedatectl set-timezone 'Europe/Paris' [root@slave02 ~]# date Wed 12 Feb 14:12:51 CET 2020
Désactiver SELinux dans puppetslave02 :
[root@slave02 ~]# vi /etc/sysconfig/selinux [root@slave02 ~]# cat /etc/sysconfig/selinux # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=permissive # SELINUXTYPE= can take one of three two values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted [root@slave02 ~]# setenforce permissive
Si vous souhaitez remettre votre infrastructure à zéro sous VirtualBox, utilisez les commandes suivantes pour arrêter les machines virtuelles PuppetMaster, PuppetSlave01 et PuppetSlave02 :
desktop@serverXX:~$ VBoxManage controlvm PuppetMaster poweroff desktop@serverXX:~$ VBoxManage controlvm PuppetSlave01 poweroff desktop@serverXX:~$ VBoxManage controlvm PuppetSlave02 poweroff
Supprimez les règles de redirection de port :
desktop@serverXX:~$ VBoxManage natnetwork modify --netname NatNetwork --port-forward-4 delete PuppetMaster desktop@serverXX:~$ VBoxManage natnetwork modify --netname NatNetwork --port-forward-4 delete PuppetSlave01 desktop@serverXX:~$ VBoxManage natnetwork modify --netname NatNetwork --port-forward-4 delete PuppetSlave02
Dernièrement, supprimez le NatNetwork :
desktop@serverXX:~$ VBoxManage natnetwork stop --netname NatNetwork desktop@serverXX:~$ VBoxManage natnetwork remove --netname NatNetwork
Rappel du Programme de la Formation
Jour #1
- DOF400 - Configuration et Gestion des Ordinateurs avec Puppet - 1 heure.
- Pré-requis
- Matériel
- Logiciels
- Internet
- Utilisation de l'Infrastructure
- Connexion au Serveur Cloud
- Linux, MacOS et Windows 10 muni du client ssh
- Windows 7 et Windows 10 sans client ssh
- Démarrage de la Machine Virtuelle
- Connexion à la Machine Virtuelle
- Programme de la Formation
- Évaluation des Compétences
- DOF401 - Puppet en Mode Sans Maître - 2 heures.
- Qu'est-ce Puppet ?
- Démarrer avec Puppet
- Utiliser des Manifests
- LAB #1 - Gestion des Fichiers
- 1.1 - Modification d'un Fichier Existant sur le Serveur
- 1.2 - Effectuer un Dry Run avec Puppet
- LAB #2 - Gestion des Paquets
- LAB #3 - Gestion des Services
- Gérer du code Puppet avec Git
- LAB #4 - Créer un Repository Local
- 4.1 - Les Branches avec Git
- LAB #5 - Créer un Repository Distant
- LAB #6 - Cloner un Repository
- LAB #7 - Appliquer des Modifications Automatiquement
- LAB #8 - Mise en Place sur un Nœud
- DOF402 - Les Ressources Puppet - 2 heures.
- LAB #1 - La Ressource File
- L'Attribut Source
- L'Attribut owner
- L'Attribut group
- L'Attribut mode
- L'Attribut ensure
- L'Attribut recurse
- LAB #2 - La Ressource package
- L'Attribut ensure
- Installation de Paquets
- Le Cas Spécifique des Gems de Ruby
- Suppression de Paquets
- LAB #3 - La Ressource service
- L'Attribut hasstatus
- L'Attribut pattern
- Les Attributs hasrestart et restart
- LAB #4 - La Ressource user
- Créer un Utilisateur
- LAB #5 - La Ressource cron
- L'Attribut user
- L'Attribut environment
- L'Attribut weekday
- L'Attribut monthday
- La Fonction fqdn_rand
- LAB #6 - 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
- DOF403 - Variables, Expressions, Facts et Itérations - 2 heures.
- LAB #1 - Variables
- Variables Simples
- Tableaux
- Hashes
- LAB #2 - Expressions
- Expressions Mathématiques
- Expression Booléennes
- Expressions Régulières
- Expressions Conditionnelles
- LAB #3 - Facts
- Facts dans un Hash
- Facts dans une Expression
- Facts Externes
- Facts Exécutables
- LAB #4 - Itérations
- Itération et Tableaux
- Itération et Hashes
Jour #2
- DOF404 - Hiera et Modules - 2 heures.
- Préparation
- Hiera
- Présentation
- LAB #1 - Environnements
- LAB #2 -Les Types de Données Hiera
- LAB #3 - Interpolation
- Les Sources de Données basées sur des Facts
- LAB #4 -Créer des Ressources avec le Données d'Hiera
- LAB #5 - Gérer des Données Secrètes
- Modules
- LAB #6 - Installer des Modules
- LAB #7 - Utilisation des Modules
- puppetlabs/mysql
- puppetlabs/apache
- puppet/archive
- DOF405 - Puppet en mode Agent/Maître - 4 heures.
- Préparation
- Connexion au Serveur Cloud
- Linux, MacOS et Windows 10 muni du client ssh
- Windows 7 et Windows 10 sans client ssh
- Configuration de VirtualBox
- Démarrage des Machines Virtuelles
- Connexion aux Machines Virtuelles
- Configuration du Fuseau d'Horaire
- Désactiver SELinux dans puppetslave02
- LAB #1 - Configurer Puppet Server
- Installer puppetserver
- Configurer puppetserver
- LAB #2 - Installer et Configurer puppet-agent sur les Machines Virtuelles Esclaves
- Installer puppet-agent
- Configurer puppet-agent
- LAB #3 - Création d'un Utilisateur
- LAB #4 - Configuration de ssh
- LAB #5 - Configuration d'IP Tables
- Exécuter l'Agent Puppet sur node01.i2tch.loc
- Exécuter l'Agent Puppet sur node02.i2tch.loc
- LAB #6 - Déployer Apache avec Puppet en mode Agent/Maître
- Création du Rôle
- Création des Manifests
- Création des Fichiers de Configuration
- Création des Templates
- Déployer Apache
- DOF406 - Validation de la Formation
- Contenu du Module
- Pour Aller Plus Loin
- Support de Cours
- L'Infrastructure Hors Formation
- Matériel
- Logiciels
- Machines Virtuelles
- Réinstaller l'Environnement de Travail
- Pour les modules DOF401 au DOF404
- Pour le module DOF405
- Rappel du Programme de la Formation
- Évaluation de la Formation
- Remerciements
Évaluation de la Formation
Afin de valider votre formation, veuillez compléter l’Évaluation de la Formation.
Remerciements
Nous vous remercions de votre confiance et nous vous souhaitons une excellente continuation.
<html> <DIV ALIGN=“CENTER”> Copyright © 2021 Hugh Norris<BR><BR> Document non-contractuel. Le programme peut être modifié sans préavis. </div> </html>