Einführung in Desired State Configuration - powershell.co.at · Agenda Wozu DSC ? Vorwissen...
Transcript of Einführung in Desired State Configuration - powershell.co.at · Agenda Wozu DSC ? Vorwissen...
Einführung in
Desired State Configuration
PS UG Treffen 23.Feb 2017
MS Wien
Roman Stadlmair
Agenda
Wozu DSC ?
Vorwissen
Vorausetzungen
Einführung in die Technologie
Loslegen !
Push und Pull Modi
Local Config Manager
Azure und DSC
Links
Wozu DSC?
Konfigurieren von Computern
Hingehen
RDP ==> Änderungen durchführen
Login Scripts
Startup-Scripts
Group Policy
Weitere …
Multi-Alles-Welt
Core-Server, Nano-Server
Linux/Windows/Xnix
Agile, DevOps, XaaS
Standardisierung Automatisierung
Linux-Welt:
Puppet: https://puppet.com/
Chef: https://www.chef.io/
Vorwissen
DSC baut auf den folgenden Technologien
Windows PowerShell
Windows Remote Management (WinRM)
Common Information Model (CIM)
Management Object Format (MOF)
WinRM
Microsofts Implementierung von „Web Services for
Management“ (WSMan)
„winrm“ Service (Default ON ab Domain joined > Win2012
Server)Get-Command –Module Microsoft.WSMAN.Management
WinRM-HTTP(S) Listener
CIM
Teil von Web Based Enterprise Management
Microsoft: CIM Windows Management Instrumentation
PowerShell 3.0: WMI Cmdlets (DCOM)
Nur Windows
Nicht Firewall-freundlich
Ab PowerShell 4.0: CIM Cmdlets
Any-OS
Besseres Discovery, Abwärtskompatibel zu WIM, …
Managed Object Format
Beschreibung der Managementobjekte in CIM erfolgt
mittels MOF
MOF Dateien
Daten
Eventklassen
Voraussetzungen
DSC einschalten
> WMF 4.0 beinhaltet DSC als OS-Feature
WinRM-HTTP(S) Listener und FW-Regel
Default-Image
Einschalten per Group Policy
Server-Installationsscript
Execution-Policy „Local and remote-signed“
Modul: PSDesiredStateconfiguration
Einführung in die Technologie
Einfache Architektur
Local Config Store
Detaillierter Aufbau
Language Extension
DSC CmdLets
DSC Resources
ConfigurationMOF
Local ConfigManager
Download Manager
File Download Manager
Web Download Manager
CurrentMOF
PreviousMOF
PendingMOF
SMB ShareConfiguration
MOF
Resources
Pull Service
ConfigurationMOF
Resources
IIS
PSW
S
DSC
Ser
vice
Pull Server/REST Staging
Authoring and Staging Configuration and Enacting
Ablauf
Erstellen und stagen:
Config-scripts schreiben
Configuration der Ziel-resourcen
Wie verteilen ?
Ausrollen/anwenden
Staging: Definiert wo die Konfiguration gespeichert wird
Push: Liefern der Konfig
Pull: Abholen der Konfig
DSC PowerShell Module
Get-Command –Module
PSDesiredStateConfiguration
Script-Module zum konfigurieren von DSC
Beinhaltet BINARY Modul für LCM
DSC Resourcen
Get-DSCResource
Identifiziert eine Einheit die mittels Konfigurationsscript
verwaltet werden kann.
Beispiele:
Eine Datei
OS-Rolle
Feature
DSC Resourcen Online
PowerShell Gallery als Quelle
DSC ResourceKit Module sind markiert
Find-Module -Tag DSCResourcekit
Finde alle DCS Resourcen
Find-DSCResource
Installation: Install-Module –Name
„x“ Markierung: Experimenitell
„c“ Markierung: Community
Loslegen
Konfigurationsscript erzeugen
DEMO
MOF Datei erzeugen
PS-Script ausführen
Erstellt Ordner
Erstellt MOF Datei
Staging und Auslieferung
MOF File ablegen:
Share
Versionskontrolle !
WebServer
Push & Pull Modi
Push Modus
Default-Modus zum Empfang von Konfigs
Ziel tut nichts aktiv (kein polling) für neue Konfig
Befehl: Start-DSCConfiguration
Problem Skalierbarkeit:
Limit simultaner CIM Sessions pro Computer
Problem komplexer Umgebungen
Wenn die DSC Ressource am Ziel nicht vorhanden ist
ERROR
Pull Modus
Erlaubt Verwaltung von Konfigurationen UND DSC
Ressourcen
Kann auf 2 Arten konfiguriert werden
SMB
OData WebService
Targets müssen mittels LCM auf „Pull-mode“ umgestellt
werden
MOF Files brauchen Checksummen
Pull über SMB
Einfach aufzubauen
\\Servername\Sharename
Rechtevergabe auf die Konfigurationsdateien
Pull über OData / HTTP
OData Endpoint mit „Windows PowerShell Desired State
Configuration Service“ installieren
Targets dann auf diesen OData Endpoint zeigen lassen.
Local Configuration Manager (LCM)
LCM
CIM Klasse: MSFT_DscLocalConfigurationManager
DSC „Engine“
Läuft auf allen Systemen die > WMF 4.0 installiert haben
Nur verantwortlich für das Aktivieren der Konfiguration
Befehle:
Get-DscLocalConfigurationManager
Set-DscLocalConfigurationManager
Azure und DSC
Schema
Zusatzfeatures
Pull Server
Reporting Server
Automation Integration
DSC Res und Konfigs
als Assets
Zusammenfassung
Zusammenfassung
DSC für
Feature Installation/Konfiguration
Sicherheitsfunktionen erzwingen
Systemstabilität anheben (Services/Configuration drift))
Softwareverteilung
Standardisierung/Compliance
„Plattform“
Links
Links
https://mva.microsoft.com/en-us/training-courses/getting-
started-with-powershell-desired-state-configuration-dsc--
8672
https://channel9.msdn.com/Series/Advanced-PowerShell-
Desired-State-Configuration-DSC-and-Custom-Resources
www.powershellmagazine.org
DSC Links
Microsoft:
Home: https://blogs.msdn.microsoft.com/powershell/
Azure and DSC: https://docs.microsoft.com/en-
us/azure/automation/automation-dsc-overview
GitHub Repo: https://github.com/PowerShell/DscResources
Blogs:
https://4sysops.com/archives/powershell-desired-state-
configuration-dsc-part-1-introduction/