PowerShell DSC Simplifiez et accélérez vos configurations système
Présentation
Ce livre sur Microsoft PowerShell DSC (Desired State Configuration), en version 5.1 au moment de l'écriture, s'adresse aux ingénieurs système désireux d'accélérer, de simplifier et d'homogénéiser la configuration de leurs environnements de production. Des connaissances basiques sur les environnements Windows Server, PowerShell et Hyper-V sont utiles pour bien appréhender PowerShell DSC.
Tout au long du livre, l'auteur accompagne le lecteur dans un mode pas à pas et chaque exemple concret est mis en œuvre dans une série d'exercices pratiques pour apprendre à réaliser les opérations des plus simples aux plus complexes.
Dans les premiers chapitres le lecteur crée l'environnement de test et met en place la fonctionnalité DSC sur les machines de cet environnement.
Avec les chapitres qui suivent, le lecteur crée ses premières configurations et apprend à les déployer sur les serveurs distants. Ensuite, chaque ressource DSC est étudiée et mise en œuvre et le module de commandes DSC est passé en revue.
L'auteur traite ensuite la mise en place de serveurs collecteurs permettant aux machines de venir chercher une configuration dédiée, le renforcement de la sécurité des configurations à l'aide des certificats, l'utilisation de DSC sur des machines Linux, les audits et rapports DSC ainsi que le dépannage des configurations.
A la fin de cette lecture, le lecteur disposera de connaissances et de compétences suffisantes pour mettre en œuvre PowerShell DSC.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
Les chapitres du livre :
Avant-propos – Plateforme de tests Windows – Présentation DSC – Méthode Push – Comprendre les ressources – Utiliser les fonctions et commandes du module DSC – Déployer et utiliser DSC – Utiliser DSC, méthode avancée – DSC pour Linux – Audits et rapports DSC – Troubleshooting DSC – Pour aller plus loin
Tout au long du livre, l'auteur accompagne le lecteur dans un mode pas à pas et chaque exemple concret est mis en œuvre dans une série d'exercices pratiques pour apprendre à réaliser les opérations des plus simples aux plus complexes.
Dans les premiers chapitres le lecteur crée l'environnement de test et met en place la fonctionnalité DSC sur les machines de cet environnement.
Avec les chapitres qui suivent, le lecteur crée ses premières configurations et apprend à les déployer sur les serveurs distants. Ensuite, chaque ressource DSC est étudiée et mise en œuvre et le module de commandes DSC est passé en revue.
L'auteur traite ensuite la mise en place de serveurs collecteurs permettant aux machines de venir chercher une configuration dédiée, le renforcement de la sécurité des configurations à l'aide des certificats, l'utilisation de DSC sur des machines Linux, les audits et rapports DSC ainsi que le dépannage des configurations.
A la fin de cette lecture, le lecteur disposera de connaissances et de compétences suffisantes pour mettre en œuvre PowerShell DSC.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
Les chapitres du livre :
Avant-propos – Plateforme de tests Windows – Présentation DSC – Méthode Push – Comprendre les ressources – Utiliser les fonctions et commandes du module DSC – Déployer et utiliser DSC – Utiliser DSC, méthode avancée – DSC pour Linux – Audits et rapports DSC – Troubleshooting DSC – Pour aller plus loin
Table des matières
Avant-propos
- 1. Introduction
- 2. Objectif du livre
- 3. Approche pratique
- 4. Connaissances préliminaires
- 5. L'auteur
Plateforme de tests Windows
- 1. Introduction
- 2. Prérequis d'installation
- 2.1 Prérequis matériel
- 2.2 Prérequis logiciel
- 2.3 Sources d'installation
- 3. Informations complémentaires
- 4. Atelier d'installation
- 4.1 Installation du rôle Hyper-V sur Windows Server 2016
- 4.2 Création du commutateur réseau
- 4.3 Stratégie de mode de session étendu
- 4.4 Création du modèle de machine virtuelle
- 4.5 Personnalisation des machines virtuelles
- 4.6 Création du domaine et des machines membres
- 4.6.1 Création du contrôleur de domaine
- 4.6.2 Création des serveurs membres
- 4.6.3 Création d'objets de tests dans l'environnement
- 4.6.4 Création des points de contrôle Hyper-V
Présentation DSC
- 1. Introduction : qu'est-ce que DSC ?
- 1.1 PowerShell sans DSC
- 1.2 PowerShell DSC
- 2. Baseline DSC : introduction
- 2.1 Phase d'identification
- 2.2 Méthode de préparation
- 3. Moteur DSC (LCM) : introduction
- 3.1 Paramètres de versions
- 3.2 Liste des paramètres
- 3.3 Paramètres de base
- 3.4 Paramètres de blocs
- 3.4.1 Bloc Settings
- 3.4.2 Bloc ConfigurationRepositoryWeb
- 3.4.3 Bloc ConfigurationRepositoryShare
- 3.4.4 Bloc ResourceRepositoryWeb
- 3.4.5 Bloc ResourceRepositoryShare
- 3.4.6 Bloc ReportServerWeb
- 3.4.7 Bloc PartialConfiguration
- 5.1 Bloc 1
- 5.2 Bloc 2 à 5
Méthode Push
- 1. Installation du serveur de Push : présentation
- 2. Atelier
- 2.1 Modification du répertoire de travail
- 2.2 Push d'une première configuration
Comprendre les ressources
- 1. Les ressources intégrées : introduction
- 2. Présentation des ressources intégrées
- 3. Ressource File : introduction
- 3.1 Syntaxe et détail de la ressource
- 3.2 Atelier
- 3.2.1 Création d'un répertoire
- 3.2.2 Création différentielle
- 4.1 Syntaxe et détail de la ressource
- 4.2 Atelier
- 4.2.1 Prérequis
- 4.2.2 Décompression d'une archive au travers du réseau
- 4.2.3 Décompression d'une archive locale
- 4.2.4 Vérification de Checksum
- 5.1 Syntaxe et détail de la ressource
- 5.2 Atelier
- 5.2.1 Prérequis, consultation des variables existantes
- 5.2.2 Création d'une variable Env1
- 5.2.3 Ajout d'une valeur dans la variable Env1
- 5.2.4 Suppression d'une valeur dans la variable Env1
- 5.2.5 Suppression de la variable Env1
- 6.1 Syntaxe et détail de la ressource
- 6.2 Atelier
- 6.2.1 Création d'un groupe
- 6.2.2 Imbrication d'un groupe dans le groupe local
- 6.2.3 Inclusion et exclusion dans le même bloc
- 7.1 Syntaxe et détail de la ressource
- 7.2 Atelier
- 7.2.1 Création de groupes locaux
- 7.2.2 Imbrication de groupes
- 8.1 Syntaxe et détail de la ressource
- 8.2 Atelier
- 8.2.1 Prérequis
- 8.2.2 Création d'un log de départ
- 8.2.3 Création d'un log de dépendance
- 8.2.4 Vérification des logs
- 9.1 Syntaxe et détail de la ressource
- 9.2 Atelier
- 9.2.1 Prérequis
- 9.2.2 Identification d'un productID et du Name
- 9.2.3 Installation du MSI
- 9.2.4 Désinstallation du MSI
- 10.1 Syntaxe et détail de la ressource
- 11.1 Syntaxe et détail de la ressource
- 11.2 Atelier
- 11.2.1 Création dans le registre
- 11.2.2 Modification de la ValueName
- 11.2.3 Modification de la ValueData
- 12.1 Syntaxe et détail de la ressource
- 12.2 Atelier
- 12.2.1 Création d'un répertoire par la ressource
- 12.2.2 Ajout de paramètres de fonctions
- 13.1 Syntaxe et détail de la ressource
- 13.2 Atelier
- 13.2.1 Réaliser les prérequis
- 13.2.2 Stopper le service Plug and Play et modifier le mode de démarrage
- 13.2.3 Modifier le compte de démarrage et retour aux valeurs initiales pour le service
- 13.2.4 Retourner aux valeurs d'origine
- 14.1 Syntaxe et détail de la ressource
- 14.2 Atelier
- 14.2.1 Prérequis
- 14.2.2 Paramétrage de deux services
- 14.2.3 Retour aux valeurs d'origine
- 15.1 Syntaxe et détail de la ressource
- 15.2 Atelier
- 15.2.1 Ajout d'un compte utilisateur
- 15.2.2 Modification du compte utilisateur
- 16.1 Syntaxe et détail de la ressource
- 16.2 Atelier
- 16.2.1 Validation de configuration pour l'ensemble des machines
- 16.2.2 Absence de la machine DSC2
- 17.1 Syntaxe et détail de la ressource
- 17.2 Atelier
- 17.3 Validation de configuration pour une machine
- 17.3.1 Simulation d'échec du contrôle de la condition
- 18.1 Syntaxe et détail de la ressource
- 18.2 Atelier
- 18.2.1 Validation de configuration pour deux machines
- 18.2.2 Validation de configuration pour trois machines
- 19.1 Syntaxe et détail de la ressource
- 19.2 Atelier
- 19.2.1 Prérequis identification
- 19.2.2 Installation d'une fonctionnalité (Feature)
- 19.2.3 Désinstallation d'une fonctionnalité
- 19.2.4 Installation de sous-fonctionnalité et création d'un log
- 20.1 Syntaxe et détail de la ressource
- 20.2 Atelier
- 20.2.1 Installation de deux fonctionnalités (Feature)
- 21.1 Syntaxe et détail de la ressource
- 22.1 Syntaxe et détail de la ressource
- 23.1 Syntaxe et détail de la ressource
- 23.2 Atelier
- 23.2.1 Installation du Cab (méthode générique)
- 24.1 Syntaxe et détail de la ressource
- 24.2 Atelier
- 24.2.1 Démarrage du process distant Notepad.exe
- 24.2.2 Démarrage du process distant Tracert.exe avec arguments et fichier de suivi
- 24.2.3 Arrêt des process précédemment démarrés (correspondance validée)
- 24.2.4 Test d'arrêt des process précédemment démarrés (correspondance non validée)
- 25.1 Atelier
Utiliser les fonctions et commandes du module DSC
- 1. Introduction
- 2. Paramètres communs à PowerShell
- 3. Paramètres communs au module DSC
- 3.1 Paramètres [-AsJob]
- 3.1.1 Présentation
- 3.1.2 Atelier
- 3.1 Paramètres [-AsJob]
- 3.2 Paramètres [-CimSession <CimSession[]>]
- 3.2.1 Présentation
- 3.2.2 Atelier
- 3.3 Paramètres [-Confirm]
- 3.4 Paramètres [-ThrottleLimit <Int32>]
- 4.1 Introduction
- 4.2 Syntaxe de la fonction
- 4.3 Atelier
- 4.3.1 Vérification de l'état du debug
- 4.3.2 Désactivation du debug
- 5.1 Introduction
- 5.2 Syntaxe de la fonction
- 5.3 Atelier
- 5.3.1 Activation du debug sur une machine distante
- 5.3.2 Vérification du debug sur une machine distante
- 6.1 Introduction
- 6.2 Syntaxe de la fonction
- 6.3 Atelier
- 6.3.1 Affichage de la configuration du moteur LCM
- 6.3.2 Affichage de la configuration du moteur LCM, vue filtrée
- 7.1 Introduction
- 7.2 Syntaxe de la fonction
- 7.3 Atelier
- 7.3.1 Affichage de l'ensemble des actions
- 7.3.2 Affichage détaillé de la dernière configuration
- 8.1 Introduction
- 8.2 Syntaxe de la fonction
- 8.3 Atelier
- 8.3.1 Affichage de la configuration locale
- 8.3.2 Vue filtrée pour une machine distante
- 9.1 Introduction
- 9.2 Syntaxe de la fonction
- 9.3 Atelier
- 9.3.1 Affichage de la syntaxe pour un module
- 9.3.2 Affichage de la syntaxe pour une ressource
- 10.1 Introduction
- 10.2 Syntaxe de la fonction
- 10.3 Atelier
- 10.3.1 Création d'une somme de contrôle
- 11.1 Introduction
- 11.2 Syntaxe de la fonction
- 11.3 Atelier
- 11.3.1 Suppression d'une configuration
- 12.1 Introduction
- 12.2 Syntaxe de la fonction
- 12.3 Atelier
- 12.3.1 Visualisation des fichiers de configuration
- 12.3.2 Récupération du fichier Previous.mof
- 13.1 Introduction
- 13.2 Syntaxe de la fonction
- 13.3 Atelier
- 13.3.1 Arrêt d'une configuration
- 14.1 Introduction
- 14.2 Syntaxe de la fonction
- 14.3 Atelier
- 15.1 Cmdlet Invoke-DscResource
- 15.1.1 Introduction
- 15.1.2 Syntaxe de la Cmdlet
- 15.2.1 Introduction
- 15.2.2 Syntaxe de la Cmdlet
- 15.3.1 Introduction
- 15.3.2 Syntaxe de la Cmdlet
- 15.4.1 Introduction
- 15.4.2 Syntaxe de la Cmdlet
- 15.5.1 Introduction
- 15.5.2 Syntaxe de la Cmdlet
Déployer et utiliser DSC
- 1. Introduction à la méthode de distribution
- 2. Méthode de distribution des fichiers de configuration
- 2.1 Méthode de Push
- 2.2 Méthode de Pull
- 2.2.1 Un serveur collecteur web
- 2.2.2 Un serveur collecteur SMB
- 5.1 Prérequis d'installation
- 5.2 Installation et paramétrage du site web
- 5.3 Paramétrage des serveurs clients
- 5.4 Paramétrage des nœuds distants
- 5.5 Tests de fonctionnement
- 7.1 Prérequis, création de répertoires et partages
- 7.2 Création des configurations
- 7.3 Paramétrage des nœuds distants
- 7.4 Vérification de fonctionnement
- 9.1 Suppression de la ressource xEventActive
- 9.2 Préparation du moteur distant
- 9.3 Publication de la ressource
- 9.4 Préparation d'une configuration utilisant la ressource xEventActive
- 9.5 Vérification du fonctionnement
Utiliser DSC, méthode avancée
- 1. Fichier de préparation des nœuds : introduction
- 2. Fichier de configuration pour un nœud simple ou par duplication de fichiers
- 3. Fichier de configuration pour nœuds multiples ou séparation des données de configuration
- 4. Atelier
- 4.1 Création et visualisation de la variable
- 4.2 Création des blocs de configuration
- 4.3 Contrôle de configurations
- 5. Configuration partielle : introduction
- 6. Atelier
- 6.1 Push de configurations partielles
- 6.1.1 Paramétrage du moteur LCM
- 6.1.2 Préparation des fragments de configuration
- 6.1.3 Publication des fragments de configuration et application de la configuration
- 6.1 Push de configurations partielles
- 6.2 Configuration à sources mixtes
- 6.2.1 Paramétrage du moteur LCM
- 6.2.2 Application de la configuration
DSC pour Linux
- 1. Plateforme de test Linux : introduction
- 2. Installation
- 2.1 Installation CentOS
- 2.2 Installation prérequis DSC
- 3. Installer et utiliser DSC pour Linux : introduction
- 4. Le provider Nuget
- 5. Les repository
- 6. Le module PowershellGet
- 7. Le module nx
- 8. Atelier : installer et utiliser le module nx
- 8.1 Objectif
- 8.2 Installer le provider Nuget pour activer PowerShellGet
- 8.3 Installer le module nx
- 8.4 Découvrir le module nx
- 8.5 Utiliser le mode nx
Audits et rapports DSC
- 1. Auditer une configuration : introduction
- 2. Présentation
- 3. Différents types d'audits : présentation
- 3.1 Audit préconfiguration
- 3.2 Audit post-configuration
- 4. Différents types de rapports d'audits : présentation
- 4.1 Rapport PowerShell
- 4.2 Rapport poussé par le nœud à son serveur collecteur de rapport
- 4.3 Rapport HTML
- 4.4 Rapport outils décisionnels
- 5. Différents types d'audits : utilisation
- 5.1 Audit préconfiguration
- 5.1.1 Atelier
- 5.1 Audit préconfiguration
- 5.2 Audit post-configuration
- 5.2.1 Atelier d'audit post-configuration, état des dernières configurations
- 6.1 Rapport préconfiguration PowerShell
- 6.1.1 Commande ou scripts de rapport
Troubleshooting DSC
- 1. Dépanner DSC : introduction
- 1.1 Catégories d'évènements
- 1.2 Cible du journal
- 2. Atelier console et journaux
- 2.1 Prérequis, activation des évènements
- 2.2 Erreurs de syntaxe
- 2.3 Erreurs de paramètres
- 2.4 Erreur d'application
- 3. Atelier PowerShell et journaux
- 3.1 Filtre de vue
- 3.2 Filtre de configuration
- 4. DSC, mode Debug : introduction
- 5. Atelier
- 5.1 Prérequis
- 5.2 Debug de configuration
Pour aller plus loin
- 1. Introduction
- 2. DSC et les certificats
- 2.1 Présentation
- 2.2 Choisir son certificat
- 3. Atelier
- 3.1 Prérequis
- 3.1.1 Création des certificats sur les machines cibles
- 3.1.2 Import des certificats sur la machine DSC1
- 3.1.3 Préparation de configurations
- 3.1.4 Application des configurations
- 3.1 Prérequis
- 5.1 Rechercher une ressource
- 5.2 Afficher l'aide d'un module
- 5.2.1 Aide d'un module après installation
- 5.2.2 Aide sans installation
- 7.1 Création d'un arbre de décision
- 7.2 Création de l'arborescence de fichier
- 7.3 Création du fichier Mof
- 7.3.1 Fichier Mof, syntaxe de base
- 7.3.2 Fichier Mof, création
- 7.4.1 Fonction Get-TargetResource
- 7.4.2 Fonction Test-TargetResource
- 7.4.3 Fonction Set-TargetResource
- 7.6.1 Information de ressource
- 7.6.2 Utilisation de la ressource xEventActive
- 9.1 Prérequis
- 9.2 Création de la ressource composite
- 9.3 Utilisation de la ressource xComposite
- 9.4 Utilisation de la ressource
- 10.1 Syntaxe de la commande
- 10.2 Utiliser Invoke-DscResource : atelier
- 10.2.1 Lecture d'une clé, méthode Get
- 10.2.2 Test d'une clé, méthode Test
- 10.2.3 Action, méthode Set
Auteur
Thierry BOLLETEn savoir plus
Architecte Système, spécialiste en infrastructures depuis 20 ans, Thierry BOLLET est aujourd’hui expert des infrastructures Cloud Azure. À ce titre, il a été nommé Microsoft MVP (Most Valuable Professional) dans la catégorie Microsoft Azure en 2020 et en 2021. Sa solide expérience de terrain sur des environnements de production et sur différentes architectures techniques ainsi que sa pédagogie lui permettent de proposer des livres efficaces, riche d'exemples utiles et concrets.
Caractéristiques
- Niveau Expert
- Nombre de pages 492 pages
- Parution avril 2018
- Livre (broché) - 17 x 21 cm
- ISBN : 978-2-409-01339-3
- EAN : 9782409013393
- Ref. ENI : EPPOWDSC
- Niveau Expert
- Parution avril 2018
- HTML
- ISBN : 978-2-409-01340-9
- EAN : 9782409013409
- Ref. ENI : LNEPPOWDSC
Téléchargements
- Des fichiers complémentaires (32,5 Ko)