Veröffentlichen auf einem Pullserver mithilfe von Konfigurations-IDs (v4/v5)

Die folgenden Abschnitte gehen davon aus, dass Sie bereits einen Pullserver eingerichtet haben. Wenn Sie noch keinen Pullserver eingerichtet haben, können Sie die folgenden Anleitungen verwenden:

Jeder Zielknoten kann zum Herunterladen von Konfigurationen, Ressourcen und sogar zum Berichten seines Status konfiguriert werden. In diesem Artikel wird erläutert, wie Sie Ressourcen hochladen können, damit sie zum Download zur Verfügung stehen. Außerdem erfahren Sie, wie Sie Clients so konfigurieren, dass sie Ressourcen automatisch herunterladen. Wenn der Knoten per Pull oder Push (v5) eine zugewiesene Konfiguration empfängt, lädt er automatisch alle für die Konfiguration erforderlichen Ressourcen aus dem im lokalen Konfigurations-Manager angegebenen Speicherort herunter.

Kompilieren von Konfigurationen

Der erste Schritt beim Speichern von Konfigurationen auf einem Pullserver besteht darin, sie in .mof-Dateien zu kompilieren. Damit eine Konfiguration generisch und auf mehrere Clients anwendbar wird, verwenden Sie localhost in Ihrem Node-Block. Das folgende Beispiel zeigt eine Konfigurationsshell, die localhost anstelle eines bestimmten Clientnamens verwendet.

Configuration GenericConfig
{
    Node localhost
    {

    }
}
GenericConfig

Sobald Sie Ihre generische Konfiguration kompiliert haben, sollten Sie über eine Datei „localhost.mof“ verfügen.

Umbenennen der MOF-Datei

Sie können .mof-Konfigurationsdateien auf einem Pullserver mithilfe von ConfigurationName oder ConfigurationID speichern. Je nachdem, wie Sie die Einrichtung Ihrer Pullclients planen, können Sie einen der folgenden Abschnitte auswählen, um Ihre kompilierten .mof-Dateien ordnungsgemäß umzubenennen.

Konfigurations-IDs (GUIDs)

Sie müssen Ihre Datei „localhost.mof“ in „<GUID>.mof“ umbenennen. Sie können eine zufällige GUID mithilfe des folgenden Beispiels oder des Cmdlets New-Guid erstellen.

[System.Guid]::NewGuid()

Beispielausgabe

Guid
----
64856475-939e-41fb-aba5-4469f4006059

Sie können Ihre .mof-Datei dann mit jeder zulässigen Methode umbenennen. Im folgenden Beispiel wird das Cmdlet Rename-Item verwendet.

Rename-Item -Path .\localhost.mof -NewName '64856475-939e-41fb-aba5-4469f4006059.mof'

Weitere Informationen zur Verwendung von GUIDs in Ihrer Umgebung finden Sie unter Plan for Guids (Planen von GUIDs).

Konfigurationsnamen

Sie müssen Ihre Datei „localhost.mof“ in „<Configuration Name>.mof“ umbenennen. Im folgenden Beispiel wird der Konfigurationsname aus dem vorherigen Abschnitt verwendet. Sie können Ihre .mof-Datei dann mit jeder zulässigen Methode umbenennen. Im folgenden Beispiel wird das Cmdlet Rename-Item verwendet.

Rename-Item -Path .\localhost.mof -NewName 'GenericConfig.mof'

Erstellen der Prüfsumme

Jede .mof-Datei, die auf einem Pullserver oder in einer SMB-Freigabe gespeichert ist, muss über eine zugeordnete .checksum-Datei verfügen. Diese Datei informiert die Clients, wenn sich die zugeordnete .mof-Datei geändert hat und erneut heruntergeladen werden muss.

Sie können mit dem Cmdlet New-DSCCheckSum eine CheckSum erstellen. Sie können auch New-DSCCheckSum für ein Verzeichnis mit Dateien mit dem Parameter -Path ausführen. Wenn bereits eine Prüfsumme vorhanden ist, können Sie mit dem Parameter -Force erzwingen, dass sie neu erstellt wird. Das folgende Beispiel gibt ein Verzeichnis mit der .mof-Datei aus dem vorherigen Abschnitt an und verwendet den -Force-Parameter.

New-DscChecksum -Path '.\' -Force

Es wird keine Ausgabe angezeigt, aber es sollte nun eine Datei „<GUID or Configuration Name>.mof.checksum“ angezeigt werden.

Speicherort für MOF-Dateien und Prüfsummen

Auf einem DSC-HTTP-Pullserver

Wenn Sie Ihren HTTP-Pullserver einrichten (wie unter Einrichten eines DSC-HTTP-Pullservers beschrieben), geben Sie Verzeichnisse für die Schlüssel ModulePath und ConfigurationPath an. Der Schlüssel ModulePath gibt an, wo die .zip-Paketdateien für ein Modul gespeichert werden sollen. ConfigurationPath gibt an, wo .mof- und .checksum-Dateien gespeichert werden sollen.

    xDscWebService PSDSCPullServer
    {
    ...
        ModulePath              = "$env:PROGRAMFILES\WindowsPowerShell\DscService\Modules"
        ConfigurationPath       = "$env:PROGRAMFILES\WindowsPowerShell\DscService\Configuration"
    ...
    }

In einer SMB-Freigabe

Wenn Sie einen Pullclient für die Verwendung einer SMB-Freigabe einrichten, geben Sie eine ConfigurationRepositoryShare an. Alle .mof- und .checksum-Dateien müssen im Verzeichnis SourcePath aus dem ConfigurationRepositoryShare-Block gespeichert werden.

ConfigurationRepositoryShare SMBPullServer
{
    SourcePath = '\\SMBPullServer\Pull'
}

Nächste Schritte

Als Nächstes müssen Sie die Pullclients so konfigurieren, dass sie die angegebene Konfiguration per Pull abrufen. Weitere Informationen finden Sie in einem der folgenden Leitfäden:

Weitere Informationen