Sélectionner une page
Formations DevOps Automatisation Formation Puppet 8 : Scalable Infrastructure

Formation Puppet

Logo Formation Puppet
Prix 1890€ HT / personne
3 jours (21 heures)

Paris | Classe Virtuelle

Dernières places Virtuelle uniquement
Cafés et déjeuners offerts en interentreprises
Disponible en intra-entreprise pour former votre équipe
Aide au Financement 4000€ de Bonus Atlas en CPF

Présentation

Puppet est un logiciel libre permettant de gérer, installer, configurer ou mettre à jour efficacement un nombre important de machines tout en s’adaptant aux spécificités de chacune d’entre elles. Une fois les configurations effectuées leur maintenance sera simple et rapide avec la possibilité d’être facilement restaurable. Puppet est livré avec de nombreux outils de gestion de code et de tests simplifiant au maximum l’utilisation de ces nombreuses fonctionnalités, tels que Hiera & r10k. Ces outils permettent également d’améliorer la clarté & la lisibilité de votre infrastructure, de garder une architecture cohérente et de faciliter le déploiement des configurations nouvellement créées sans perdre en organisation.

Puppet possède deux couches, l’une étant un langage de configuration décrivant les hôtes et les services, l’autre permettant à l’administrateur d’implémenter la configuration sur des plateformes variées telles que Windows / Linux / OSX. L’administrateur peut définir la configuration d’un service que Puppet se chargera de monitorer et d’exécuter.

Dans cette formation vous découvrirez comment rendre votre infrastructure scalable. Nous verrons comment déployer vos configurations sur toutes vos machines en maîtrisant toutes les subtilités et les différentes fonctionnalités de Puppet et Puppet Enterprise ainsi que leurs outils respectifs.

Comme toutes nos formations, celle-ci vous présentera la dernière version stable en date (Puppet 8.9 à la date de l’article).

 

Objectifs

  • Être capable de réduire la complexité de la gestion de votre infrastructure
  • Utiliser Hiera et r10k pour séparer le code de la data
  • Maîtriser une architecture  scalable via Puppet
  • Savoir automatiser des tâches d’infrastructure avec Puppet
  • Utilisez les outils & l’écosystème Puppet

 

Public visé

  • Développeurs, Architectes, Administrateurs système / Sysadmin

 

Pré-requis

  • Connaissance de base d’un système Unix / Linux, des notions de base en scripts / shell
  • Avoir une bonne connaissance en administration système Windows
  • Connaître les bases de la programmation orienté objet
  • Avoir déjà manipulé des outils de déploiement
  • Tester Mes Connaissances

Programme sur Notre Formation Puppet Enterprise version 8 : DevOps Scalable Infrastructure

 

Jour 1 – Les bases de Puppet

  • Pré-requis Puppet – connaissances, habilitations, outils, ….
  • Packaging – construire, intégrer, déployer des packages et des référentiels (repositories)
  • Concepts IAC (Infrastructure As Code) – Code (modules puppet), Configurations (hieradata), Gestion des requêtes et workflows
  • Les Produits et services de Puppet – Vue d’ensemble
  • Périmètre de Puppet – KISS (Keep It Stupid and Simple) par rapport aux concepts d’ingénierie
  • Interfaces utilisateur – Console Puppet, APIs, CLI

 

Jour 2 – Tenir ses serveurs à jour

  • Hieradata – organiser la hiérarchie des données de votre infrastructure (centraliser, hériter, sécuriser les configurations autant que vous le pouvez, puis remplacer seulement si nécessaire)
  • Puppet Compilation – Comprendre le cycle de vie d’une exécution d’agent Puppet
  • Puppet Développement – Créez vos propres modules
  • Puppet idempotency concept – Appliquez le catalogue autant de fois que vous le souhaitez

 

Jour 3 – Déployer, mettre à jour, migrer les applications distribuées sur l’infrastructure

  • Développement de Puppet – facts, fonctions et types personnalisés pour améliorer vos modules développés
  • Puppet Forge – Ne réinventez pas la roue !
  • Puppet Development – Définir une pile d’applications avec Puppet
  • Puppet Discovery – Connaissances de l’état de l’infrastructure en temps réel (bientôt obsolète)
  • Comprendre les concepts : déclaratifs et impératifs
  • Infrastructure – Configurez votre environnement de laboratoire (entreprise puppet, gitlab, rpmbuild, dépôt rpm)

 

Jours 4 & 5 – Module Complémentaire sur demande (+2 jours)

Dependending on what is possible to play with (is there a laboratory? a git server? a repository? etc), this part is dedicated to practice and will be adjusted onsite regarding participant skills and needs.

 

Full Stack Deployment

  • OS (Linux / Unix / Windows), Network equipments – Quick wins are better than long fails
  • System administration – DNS, NTP, Users, Roles, SSH keys, Kernel parameters, Filesystems, etc
  • Middleware administration – Databases (servers/clients), Web servers
  • Software administration – Challenge your R&D team to get the best quality only (or let them do the hard work in production)
  • Patch management – Puppet remediate

 

Reporting

  • Vulnerability scan (based on task and remediate)
  • Change notification – mailing, HMI

 

Server provisionning

  • Baremetal install – Razor overview
  • VM install – VMWARE ESX, VRA,VRO

 

///////////////////////////////////////////////////////////////////

Langage Puppet

  • Coding style
  • Créer des modules
  • Créer un Manifest
  • Classes
  • Paramètres de Classes
  • Types
  • Providers
  • Templates

 

Rôles et Profils

  • Profils : les bonnes pratiques / best practices
  • Utiliser le mot-clé include
  • Utilisation de sous-répertoires pour des groupes
  • Masquer la complexité : les paramètres, les valeurs par défaut et l’abstraction
  • Décider comment définir vos paramètres pour les classes de composants
  • Recherche automatique de paramètre de classe & fonction de recherche
  • Rôles : les bonnes pratiques
  • Include & nommage des rôles
  • Décider de la granularité des rôles pour vos nœuds

 

Ressources

  • Types
    •  k5login
    • nagios*
    • schedule
    • interface
    • package
    • router
    • host
    • exec
    • interface …
  • ressources virtuelles et exportées
  • Tags
  • Load balancing
  • Connexion à la base de données

 

Hiera 5

  • Organiser les fichiers
  • Gestion des clés avec Yalm
  • Utilisation de la fonction Lookup
  • Debug
  • Présentation de Jerakia

 

Environnements

  • Présentation de r10k
  • Création d’environnement de développement
  • Déploiement d’environnement avec r10k

 

Code Manager

  • Organiser son code
  • Utilisation de RBAC
  • Gestion du repository

 

Workflow

  • Création d’un Workflow
  • Repositories
  • Tasks
  • Utilisation de PDK

 

Continuous integration

  • Puppet Pipelines
  • Gestion des plugins
  • Découverte de Jenkins
  • Intégration de PDK
  • Création de Test Unitaire avec Puppet RSpec

 

Tasks et Discovery

  • Installation de Bolt
  • Installation de Discovery
  • Gestion des sources
  • Installation des agents
  • Gestion des services

 

Orchestration

  • Création d’une application
  • Gestion de la base de données
  • Déployer une application

 

Puppet Enterprise

  • Ajout de nodes sur PE
  • Classification dynamique de nœuds avec des groupes
  • Orchestrer les stacks d’applications

 

Détection d’erreurs et résolution : Troubleshooting & Profiling

  • Attente de signature de certificat
  • Réutilisation de certificat
  • Paramètres de connexion
  • Erreurs de syntaxe
  • Ressources manquantes
  • Dépendances
  • Authentification

 

Modules avancés : 2 jours supplémentaires

 

Étendre Puppet : Extending Puppet  (module optionnel)

  • Custom facts & Debugging facts
  • Fonctions personnalisées : Custom functions
  • Types & providers
  • Creating and distributing the type
  • Namevar : special attribute
  • Properties, optional, parameters, defaults
  • Input Values : Vérification, Validate block, munge datatype
  • Méthodes Exists, create et destroy
  • GET & SET methods : Gérer les propriétés de type
  • Implémentation de la méthode self.instances

 

Tuning avancé : Scaling (module optionnel)

  • Load balancing
  • Estimation du nombre d’agents a supporter
  • Autorités de certification
  • Tuning de PuppetServer
    • Implémentation de Puppet Entreprise / Open Source
  • Tuning de Puppet DB
    • Gestion des threads CPU
    • Gestion de la taille du tas / heap
  • PuppetDB avec PGTune
  • Paramétrage automatique

FAQ – Questions / Réponses

Dans quelle mesure est-ce utile de se former sur la dernière version 6 si le client est en prod en v5 ?

Comme pour tout logiciel, c’est utile dans la mesure où l’on souhaite que l’infrastructure soit à jour (dernières corrections de bugs, derniers patchs de sécurités, nouvelles fonctionnalités).

Outre la version de Puppet, la formation est accès sur les concept Infrastructure As Code, DevOps, Agilité, TDD, CI/CD, Gestion de code, Gestion de configuration, workflows. L’ensemble de ces concepts étant essentiels au bon fonctionnement d’une infrastructure gérée sous Puppet.

Y’a-t-il beaucoup de différence ou 80% est réutilisable en v5 ?

La réutilisabilité du code est très fortement liée à la manière dont il est développé. Seuls les modules supportés officiellement par Puppet Enterprise sont faciles à migrer.

Pour les autres, aucune garantie ne peut être donnée puisqu’il s’agit de modules développés par une communauté open-source et/ou en interne dans les entreprises.

Aucun éditeur ne s’engage sur la réutilisabilité du code qu’il n’a pas développé ou qu’il ne supporte pas officiellement via des partenariats.

C’est un peu comme demander : Est-ce que l’appli que j’ai développée il y a 10 sur JAVA 5 fonctionne toujours aujourd’hui sur JAVA 12. Va-t-elle être simple à migrer? Sun (à l’époque) et Oracle maintenant ne peuvent pas se prononcer sur la simplicité de migrer un logiciel développé avec le langage JAVA 5. Tout dépend du logiciel, des bonnes pratiques de développement, etc.

Est-ce qu’on aborde les différences entre les versions de Puppet 5 et 6 pendant les 3 jours de formation ?

Non, les différences ne sont pas abordées. Mais sur demande, si l’ensemble des personnes qui assisteront à la formation sont sur Puppet 5 je peux faire un focus dessus.

Par contre, voici les releases notes des deux versions Puppet 5 et Puppet 6 qui listent les différences en termes de features et de corrections de bugs :
Puppet 6.0 (Note de mise à jour)
Puppet 5.5 (Note de mise à jour)

Pour aller plus loin

 

Formation Terraform

Formation Rudder

Formation Jenkins

Formation Kubernetes

Formation Saltstack

Formation OpenShift

Langues et Lieux disponibles

Langues

  • Français
  • Anglais / English

Lieux

  • France entière
    • Paris
    • Lille
    • Reims
    • Lyon
    • Toulouse
    • Bordeaux
    • Montpellier
    • Nice
    • Sophia Antipolis
    • Marseille
    • Aix-en-Provence
    • Nantes
    • Rennes
    • Strasbourg
    • Grenoble
    • Dijon
    • Tours
    • Saint-Étienne
    • Toulon
    • Angers
  • Belgique
    • Bruxelles
    • Liège
  • Suisse
    • Genève
    • Zurich
    • Lausanne
  • Luxembourg

Le(s) Formateur(s)

Hugo

Hugo

Ingénieur en systèmes d’information, expérimenté dans toutes les phases du cycle de vie d’un projet. Spécialisé dans les produits de haute technicité, les objectifs de performance des entreprises qui nécessitent la compréhension des facteurs de croissance des industries.

Témoignages

8 novembre 2023

Je recommande la formation

Brice L. de chez CNRS - Délégation Paris-Centre

Afficher tous les témoignages

8 novembre 2023

Je recommande la formation

Brice L. de chez CNRS - Délégation Paris-Centre
8 novembre 2023

Les + : Excellent formateur : maîtrise son sujet, bonne pédagogie

Les – : Va parfois un peu vite sur les consignes des TP et les exemples à l’écran qui disparaissent un peu vite

Je souhaite suivre : Ansible

En synthèse : Super ! Bravo !

Emmanuel H. de chez CNRS - Délégation Paris-Centre
8 novembre 2023

Les + : Le formateur a su nous accompagner en fonction de notre niveau de connaissance et adapter a nos besoins

Les locaux de formations sont très agréables

Les – : RAS

Vianney N. de chez Observatoire de Paris
26 avril 2023

Les + : Formateur très pédagogue

Vincent M. de chez CNRS - Delégation Ile de France Gif-sur-Yvette
26 avril 2023

Je recommande la formation

Christophe L. de chez CNRS - Délégation Paris-Centre
26 avril 2023

Les + : Très bonne compétence du formateur

A l’écoute du public

Les – : RAS, il faut pratiquer le plus rapidement possible

Je souhaite suivre : Grafana

Rachid K. de chez CNRS - Delégation Ile de France Gif-sur-Yvette
26 avril 2023

Les + : Formation de très haut niveau. Il aurait fallu que je pratique plus de mon coté avant la formation pour mieux comprendre

Guillaume L. de chez CNRS - Délégation Paris-Centre
26 avril 2023

Je recommande la formation

Marc-Antoine D. de chez Ecole Polytechnique (PALAISEAU)
4 décembre 2019

Très bon formateur, pédagogue et excellent niveau technique, formation utile

Pascal chez Ministère des armées

Noter la formation

Prix 1890€ HT / personne
3 jours (21 heures)

Paris | Classe Virtuelle

Dernières places Virtuelle uniquement
Cafés et déjeuners offerts en interentreprises
Disponible en intra-entreprise pour former votre équipe
Aide au Financement 4000€ de Bonus Atlas en CPF

UNE QUESTION ? UN PROJET ? UN AUDIT DE CODE / D'INFRASTRUCTURE ?

Pour vos besoins d’expertise que vous ne trouvez nulle part ailleurs, n’hésitez pas à nous contacter.

ILS SE SONT FORMÉS CHEZ NOUS

partenaire sncf
partenaire hp
partenaire allianz
partenaire sfr
partenaire engie
partenaire boursorama
partenaire invivo
partenaire orange
partenaire psa
partenaire bnp
partenaire sncf
partenaire hp
partenaire allianz
partenaire sfr
partenaire engie
partenaire boursorama
partenaire invivo
partenaire orange
partenaire psa
partenaire bnp