PowerShell
Gewünschter Zustand Konfiguration
Suche…
Einfaches Beispiel - Aktivieren von WindowsFeature
configuration EnableIISFeature
{
node localhost
{
WindowsFeature IIS
{
Ensure = “Present”
Name = “Web-Server”
}
}
}
Wenn Sie diese Konfiguration in Powershell (EnableIISFeature) ausführen, wird eine Datei localhost.mof erstellt. Dies ist die "kompilierte" Konfiguration, die Sie auf einem Computer ausführen können.
Um die DSC-Konfiguration auf Ihrem localhost zu testen, können Sie einfach Folgendes aufrufen:
Start-DscConfiguration -ComputerName localhost -Wait
Starten von DSC (mof) auf einem Remote-Computer
Das Starten eines DSC auf einem Remote-Computer ist fast genauso einfach. Vorausgesetzt, Sie haben Powershell-Remoting bereits eingerichtet (oder WSMAN aktiviert).
$remoteComputer = "myserver.somedomain.com"
$cred = (Get-Credential)
Start-DSCConfiguration -ServerName $remoteComputer -Credential $cred -Verbose
Hinweis: Angenommen, Sie haben eine Konfiguration für Ihren Knoten auf Ihrer localmachine kompiliert (und dass die Datei myserver.somedomain.com.mof vor dem Starten der Konfiguration vorhanden ist).
Importieren von psd1 (Datendatei) in lokale Variable
Manchmal kann es nützlich sein, Ihre Powershell-Datendateien zu testen und die Knoten und Server zu durchlaufen.
Powershell 5 (WMF5) fügte diese nette kleine Funktion hinzu, genannt Import-PowerShellDataFile.
Beispiel:
$data = Import-PowerShellDataFile -path .\MydataFile.psd1
$data.AllNodes
Liste der verfügbaren DSC-Ressourcen
So listen Sie verfügbare DSC-Ressourcen auf Ihrem Authoring-Knoten auf:
Get-DscResource
Dadurch werden alle Ressourcen für alle installierten Module (die sich in Ihrem PSModulePath befinden) auf Ihrem Authoring-Knoten aufgelistet.
Um alle verfügbaren DSC-Ressourcen aufzulisten, die in den Online-Quellen (PSGallery ++) auf WMF 5 verfügbar sind:
Find-DSCResource
Ressourcen für die Verwendung in DSC importieren
Bevor Sie eine Ressource in einer Konfiguration verwenden können, müssen Sie sie explizit importieren. Durch die Installation auf Ihrem Computer können Sie die Ressource nicht implizit verwenden.
Importieren Sie eine Ressource mit Import-DscResource.
Beispiel zum Importieren der PSDesiredStateConfiguration-Ressource und der File-Ressource.
Configuration InstallPreReqs
{
param(); # params to DSC goes here.
Import-DscResource PSDesiredStateConfiguration
File CheckForTmpFolder {
Type = 'Directory'
DestinationPath = 'C:\Tmp'
Ensure = "Present"
}
}
Hinweis : Damit DSC-Ressourcen funktionieren, müssen die Module auf den Zielcomputern installiert sein, wenn die Konfiguration ausgeführt wird. Wenn Sie sie nicht installiert haben, schlägt die Konfiguration fehl.