Freigeben über


Konfigurieren des lokalen Konfigurations-Managers

Gilt für: Windows PowerShell 5.0

Der Local Configuration Manager (LCM) ist das Modul der Desired State Configuration (DSC). Das LCM wird auf jedem Zielknoten ausgeführt und ist für das Analysieren und Ausführen von Konfigurationen verantwortlich, die an den Knoten gesendet werden. Es ist auch für eine Reihe anderer Aspekte von DSC verantwortlich, einschließlich der folgenden.

  • Festlegen des Aktualisierungsmodus (Push oder Pull).
  • Angeben, wie oft ein Knoten Konfigurationen abruft und ausführt.
  • Zuordnen des Knotens zum Pulldienst.
  • Festlegen von Teilkonfigurationen.

Sie verwenden einen speziellen Konfigurationstyp, um das LCM so zu konfigurieren, dass jedes dieser Verhaltensweisen angegeben wird. In den folgenden Abschnitten wird beschrieben, wie Sie das LCM konfigurieren.

In Windows PowerShell 5.0 wurden neue Einstellungen für die Verwaltung des lokalen Konfigurations-Managers eingeführt. Informationen zum Konfigurieren des LCM in Windows PowerShell 4.0 finden Sie unter Konfigurieren des lokalen Konfigurations-Managers in früheren Versionen von Windows PowerShell.

Schreiben und Ausführen einer LCM-Konfiguration

Um das LCM zu konfigurieren, erstellen Sie einen speziellen Konfigurationstyp und führen ihn aus, der LCM-Einstellungen anwendet. Um eine LCM-Konfiguration anzugeben, verwenden Sie das DscLocalConfigurationManager-Attribut. Im Folgenden wird eine einfache Konfiguration gezeigt, mit der das LCM in den Push-Modus versetzt wird.

[DSCLocalConfigurationManager()]
configuration LCMConfig
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Push'
        }
    }
}

Das Anwenden von Einstellungen auf LCM ähnelt dem Anwenden einer DSC-Konfiguration. Sie erstellen eine LCM-Konfiguration, kompilieren sie in eine MOF-Datei und wenden sie auf den Knoten an. Im Gegensatz zu DSC-Konfigurationen wird eine LCM-Konfiguration nicht durch Aufrufen des Cmdlets Start-DscConfiguration ausgeführt. Stattdessen rufen Sie Set-DscLocalConfigurationManager auf und geben den Pfad zur LCM-Konfigurations-MOF als Parameter an. Nachdem Sie die LCM-Konfiguration ausgeführt haben, können Sie die Eigenschaften des LCM anzeigen, indem Sie das Cmdlet Get-DscLocalConfigurationManager aufrufen.

Eine LCM-Konfiguration kann nur Blöcke für eine begrenzte Anzahl von Ressourcen enthalten. Im vorherigen Beispiel ist die einzige Ressource, die aufgerufen wird, Einstellungen. Die anderen verfügbaren Ressourcen sind:

  • ConfigurationRepositoryWeb: Gibt einen HTTP-Pulldienst für Konfigurationen an.
  • ConfigurationRepositoryShare: Gibt eine SMB-Freigabe für Konfigurationen an.
  • ResourceRepositoryWeb: Gibt einen HTTP-Pulldienst für Module an.
  • ResourceRepositoryShare: Gibt eine SMB-Freigabe für Module an.
  • ReportServerWeb: Gibt einen HTTP-Pulldienst an, an den Berichte gesendet werden.
  • PartialConfiguration: Stellt Daten bereit, um Teilkonfigurationen zu ermöglichen.

Grundlegende Einstellungen

Abgesehen von der Angabe von Pulldienstendpunkten/-pfaden und Teilkonfigurationen werden alle Eigenschaften des LCM in einem Einstellungsblock konfiguriert. Die folgenden Eigenschaften sind in einem Einstellungsblock verfügbar.

Eigentum Typ Description
ActionAfterReboot Schnur Gibt an, was nach einem Neustart während der Anwendung einer Konfiguration passiert. Die möglichen Werte sind "ContinueConfiguration" und "StopConfiguration".
  • ContinueConfiguration: Setzen Sie die Anwendung der aktuellen Konfiguration nach dem Neustart des Computers fort. Dies ist der Standardwert
  • StopConfiguration: Stoppt die aktuelle Konfiguration nach dem Neustart des Computers.
AllowModuleOverwrite Boolesch $TRUE , ob neue Konfigurationen, die vom Pull-Dienst heruntergeladen wurden, die alten Konfigurationen auf dem Zielknoten überschreiben dürfen. Andernfalls $FALSE.
Zertifikat-ID Schnur Der Fingerabdruck eines Zertifikats, das zum Sichern von Anmeldeinformationen verwendet wird, die in einer Konfiguration übergeben werden. Weitere Informationen finden Sie unter Sichern von Anmeldeinformationen in Windows PowerShell Konfiguration des gewünschten Zustands?.
Hinweis: Dies wird automatisch verwaltet, wenn der Azure Automation DSC-Pulldienst verwendet wird.
KonfigurationDownloadManager CimInstanz[] Veraltet. Verwenden Sie die Blöcke ConfigurationRepositoryWeb und ConfigurationRepositoryShare, um Endpunkte für den Konfigurationspulldienst zu definieren.
Konfigurations-ID Schnur Für Abwärtskompatibilität mit älteren Pull-Service-Versionen. Eine GUID, die die Konfigurationsdatei identifiziert, die von einem Pulldienst abgerufen werden soll. Der Knoten pullt Konfigurationen für den Pulldienst, wenn der Name des Konfigurations-MOF ConfigurationID.mof heißt.
Anmerkung: Wenn Sie diese Eigenschaft festlegen, funktioniert das Registrieren des Knotens bei einem Pulldienst mithilfe von RegistrationKey nicht. Weitere Informationen finden Sie unter Einrichten eines Pull-Clients mit Konfigurationsnamen.
Konfigurationsmodus Schnur Gibt an, wie das LCM die Konfiguration tatsächlich auf die Zielknoten anwendet. Mögliche Werte sind "ApplyOnly","ApplyAndMonitor" und "ApplyAndAutoCorrect".
  • ApplyOnly: DSC wendet die Konfiguration an und führt keine weiteren Aktionen aus, es sei denn, eine neue Konfiguration wird per Push an den Zielknoten übertragen oder wenn eine neue Konfiguration von einem Dienst abgerufen wird. Nach der ersten Anwendung einer neuen Konfiguration überprüft DSC nicht auf Abweichung von einem zuvor konfigurierten Zustand. Beachten Sie, dass DSC versucht, die Konfiguration so lange anzuwenden, bis sie erfolgreich ist, bevor ApplyOnly wirksam wird.
  • ApplyAndMonitor: Dies ist der Standardwert. Das LCM wendet alle neuen Konfigurationen an. Wenn der Zielknoten nach der ersten Anwendung einer neuen Konfiguration vom gewünschten Zustand abweicht, meldet DSC die Diskrepanz in Protokollen. Beachten Sie, dass DSC versucht, die Konfiguration so lange anzuwenden, bis sie erfolgreich ist, bevor ApplyAndMonitor wirksam wird.
  • ApplyAndAutoCorrect: DSC wendet alle neuen Konfigurationen an. Wenn der Zielknoten nach der ersten Anwendung einer neuen Konfiguration vom gewünschten Zustand abweicht, meldet DSC die Diskrepanz in den Protokollen und wendet dann die aktuelle Konfiguration erneut an.
ConfigurationModeFrequencyMins UInt32 Wie oft in Minuten die aktuelle Konfiguration überprüft und angewendet wird. Diese Eigenschaft wird ignoriert, wenn die ConfigurationMode-Eigenschaft auf ApplyOnly festgelegt ist. Der Standardwert ist 15.
DebugMode Schnur Mögliche Werte sind None, ForceModuleImport und All.
  • Legen Sie diese Option auf Keine fest, um zwischengespeicherte Ressourcen zu verwenden. Dies ist die Standardeinstellung und sollte in Produktionsszenarien verwendet werden.
  • Die Einstellung auf ForceModuleImport bewirkt, dass das LCM alle DSC-Ressourcenmodule neu lädt, auch wenn sie zuvor geladen und zwischengespeichert wurden. Dies wirkt sich auf die Leistung von DSC-Vorgängen aus, da jedes Modul bei der Verwendung neu geladen wird. In der Regel verwenden Sie diesen Wert beim Debuggen einer Ressource
  • In dieser Version ist All identisch mit ForceModuleImport
RebootNodeIfNeeded Boolesch Legen Sie diesen Wert fest $true , um Ressourcen den Neustart des Knotens mithilfe des Flags $global:DSCMachineStatus zu ermöglichen. Andernfalls müssen Sie den Knoten für jede konfiguration, für die er erforderlich ist, manuell neu starten. Der Standardwert ist $false. Wenn Sie diese Einstellung verwenden möchten, wenn eine Neustartbedingung von einer anderen Instanz als DSC (z. B. Windows Installer) ausgeführt wird, kombinieren Sie diese Einstellung mit der PendingReboot-Ressource im ComputerManagementDsc-Modul .
Aktualisierungsmodus Schnur Gibt an, wie das LCM Konfigurationen abruft. Die möglichen Werte sind "Disabled","Push" und "Pull".
  • Deaktiviert: DSC-Konfigurationen sind für diesen Knoten deaktiviert.
  • Push: Konfigurationen werden durch Aufrufen des Cmdlets Start-DscConfiguration initiiert. Die Konfiguration wird sofort auf den Knoten angewendet. Dies ist der Standardwert.
  • Ziehen: Der Knoten ist so konfiguriert, dass er regelmäßig nach Konfigurationen aus einem Pulldienst oder SMB-Pfad sucht. Wenn diese Eigenschaft auf Pull festgelegt ist, müssen Sie einen HTTP- (Dienst) oder SMB-Pfad (Freigabe) in einem ConfigurationRepositoryWeb - oder ConfigurationRepositoryShare-Block angeben.
RefreshFrequencyMins Uint32 Das Zeitintervall in Minuten, in dem der LCM einen Pull-Dienst überprüft, um aktualisierte Konfigurationen abzurufen, und die lokale Konfiguration auf Abweichung überprüft. Die Konfiguration wird unabhängig davon angewendet, ob ein Update heruntergeladen wurde. Dieser Wert wird ignoriert, wenn der LCM nicht im Pullmodus konfiguriert ist. Der Standardwert ist 30.
ReportManager CimInstanz[] Veraltet. Verwenden Sie ReportServerWeb-Blöcke , um einen Endpunkt zum Senden von Berichtsdaten an einen Pulldienst zu definieren.
RessourcenModul-Manager CimInstanz[] Veraltet. Verwenden Sie die Blöcke ResourceRepositoryWeb und ResourceRepositoryShare, um HTTP-Endpunkte bzw. SMB-Pfade für Pulldienste zu definieren.
PartialConfigurations Cim-Instanz Nicht implementiert. Nicht verwenden..
StatusRetentionTimeInDays UInt32 Die Anzahl der Tage, die das LCM den Status der aktuellen Konfiguration beibehält.

Hinweis

Das LCM startet den ConfigurationModeFrequencyMins-Zyklus basierend auf:

  • Eine neue Metakonfiguration mit einer Änderung an ConfigurationModeFrequencyMins wird mit Set-DscLocalConfigurationManager
  • Ein Neustart der Maschine

Bei jedem Absturz des Timers wird dieser innerhalb von 30 Sekunden erkannt und der Zyklus neu gestartet. Ein gleichzeitiger Vorgang kann den Start des Zyklus verzögern. Wenn die Dauer dieses Vorgangs die konfigurierte Zyklushäufigkeit überschreitet, wird der nächste Timer nicht gestartet. Beispiel: Die Metakonfiguration wird mit einer Pull-Frequenz von 15 Minuten konfiguriert, und ein Pull tritt bei T1 auf. Der Knoten beendet seine Arbeit erst nach 16 Minuten. Der erste 15-Minuten-Zyklus wird ignoriert, und der nächste Pull erfolgt bei T1+15+15.

Die ursprüngliche Absicht in Pullszenarien bestand darin, dass die RefreshFrequencyMins auf eine längere Zeit als die ConfigurationModeFrequencyMinsfestgelegt ist. Lokale Konfigurationen werden in erster Linie von ConfigurationModeFrequencyMins verwaltet, um Konfigurationsabweichungen zu vermeiden, und RefreshFrequencyMins werden verwendet, um die tatsächlichen Konfigurationsänderungen zu verfolgen, die vom Administrator vorgenommen wurden.

Dienst abrufen

Die LCM-Konfiguration unterstützt das Definieren der folgenden Typen von Pulldienstendpunkten:

  • Konfigurationsserver: Ein Repository für DSC-Konfigurationen. Definieren Sie Konfigurationsserver mithilfe der Blöcke ConfigurationRepositoryWeb (für webbasierte Server) und ConfigurationRepositoryShare (für SMB-basierte Server).
  • Ressourcenserver: Ein Repository für DSC-Ressourcen, das als PowerShell-Module verpackt ist. Definieren Sie Ressourcenserver mithilfe der Blöcke ResourceRepositoryWeb (für webbasierte Server) und ResourceRepositoryShare (für SMB-basierte Server).
  • Berichtsserver: Ein Dienst, an den DSC Berichtsdaten sendet. Definieren Sie Berichtsserver mithilfe von ReportServerWeb-Blöcken . Bei einem Berichtsserver muss es sich um einen Webdienst handeln.

Weitere Informationen zum Pulldienst finden Sie unter Pulldienst für die Konfiguration des gewünschten Zustands.

Blöcke des Konfigurationsservers

Um einen webbasierten Konfigurationsserver zu definieren, erstellen Sie einen ConfigurationRepositoryWeb-Block . Ein ConfigurationRepositoryWeb definiert die folgenden Eigenschaften.

Eigentum Typ Description
ZulassenUnsicherVerbindung Boolesch Legen Sie diesen Wert auf $TRUE fest, um Verbindungen vom Knoten zum Server ohne Authentifizierung zuzulassen. Legen Sie diese Option auf $FALSE fest, um eine Authentifizierung zu erzwingen.
Zertifikat-ID Schnur Der Fingerabdruck eines Zertifikats, das für die Authentifizierung beim Server verwendet wird.
Konfigurationsnamen String[] Ein Array mit Namen von Konfigurationen, die vom Zielknoten abgerufen werden sollen. Diese werden nur verwendet, wenn der Knoten mithilfe eines RegistrationKey beim Pulldienst registriert ist. Weitere Informationen finden Sie unter Einrichten eines Pull-Clients mit Konfigurationsnamen.
Registrierungsschlüssel Schnur Eine GUID, die den Knoten beim Pulldienst registriert. Weitere Informationen finden Sie unter Einrichten eines Pull-Clients mit Konfigurationsnamen.
Server-URL Schnur Die URL des Konfigurationsdienstes.
ProxyURL* Schnur Die URL des HTTP-Proxys, der bei der Kommunikation mit dem Konfigurationsdienst verwendet werden soll.
Proxy-Anmeldeinformationen* pscredential Anmeldeinformationen, die für den HTTP-Proxy verwendet werden sollen.

Hinweis

Unterstützt in den Windows-Versionen 1809 und höher.

Ein Beispielskript zur Vereinfachung der Konfiguration des ConfigurationRepositoryWeb-Werts für lokale Knoten ist verfügbar – siehe Generieren von DSC-Metakonfigurationen

Um einen SMB-basierten Konfigurationsserver zu definieren, erstellen Sie einen ConfigurationRepositoryShare-Block . Ein ConfigurationRepositoryShare definiert die folgenden Eigenschaften.

Eigentum Typ Description
Berechtigung MSFT_Credential Die Anmeldeinformationen, die für die Authentifizierung bei der SMB-Freigabe verwendet werden.
SourcePath Schnur Der Pfad der SMB-Freigabe.

Blöcke für Ressourcenserver

Um einen webbasierten Ressourcenserver zu definieren, erstellen Sie einen ResourceRepositoryWeb-Block . Ein ResourceRepositoryWeb definiert die folgenden Eigenschaften.

Eigentum Typ Description
ZulassenUnsicherVerbindung Boolesch Legen Sie diesen Wert auf $TRUE fest, um Verbindungen vom Knoten zum Server ohne Authentifizierung zuzulassen. Legen Sie diese Option auf $FALSE fest, um eine Authentifizierung zu erzwingen.
Zertifikat-ID Schnur Der Fingerabdruck eines Zertifikats, das für die Authentifizierung beim Server verwendet wird.
Registrierungsschlüssel Schnur Eine GUID, die den Knoten für den Pulldienst identifiziert.
Server-URL Schnur Die URL des Konfigurationsservers.
ProxyURL* Schnur Die URL des HTTP-Proxys, der bei der Kommunikation mit dem Konfigurationsdienst verwendet werden soll.
Proxy-Anmeldeinformationen* pscredential Anmeldeinformationen, die für den HTTP-Proxy verwendet werden sollen.

Hinweis

Unterstützt in den Windows-Versionen 1809 und höher.

Ein Beispielskript zur Vereinfachung der Konfiguration des ResourceRepositoryWeb-Werts für lokale Knoten ist verfügbar – siehe Generieren von DSC-Metakonfigurationen

Um einen SMB-basierten Ressourcenserver zu definieren, erstellen Sie einen ResourceRepositoryShare-Block . ResourceRepositoryShare definiert die folgenden Eigenschaften.

Eigentum Typ Description
Berechtigung MSFT_Credential Die Anmeldeinformationen, die für die Authentifizierung bei der SMB-Freigabe verwendet werden. Ein Beispiel für das Übergeben von Anmeldeinformationen finden Sie unter Einrichten eines DSC-SMB-Pullservers.
SourcePath Schnur Der Pfad der SMB-Freigabe.

Blöcke des Berichtsservers

Um einen Berichtsserver zu definieren, erstellen Sie einen ReportServerWeb-Block . Die Berichtsserverfunktion ist nicht mit dem SMB-basierten Pulldienst kompatibel. ReportServerWeb definiert die folgenden Eigenschaften.

Eigentum Typ Description
ZulassenUnsicherVerbindung Boolesch Legen Sie diesen Wert auf $TRUE fest, um Verbindungen vom Knoten zum Server ohne Authentifizierung zuzulassen. Legen Sie diese Option auf $FALSE fest, um eine Authentifizierung zu erzwingen.
Zertifikat-ID Schnur Der Fingerabdruck eines Zertifikats, das für die Authentifizierung beim Server verwendet wird.
Registrierungsschlüssel Schnur Eine GUID, die den Knoten für den Pulldienst identifiziert.
Server-URL Schnur Die URL des Konfigurationsservers.
ProxyURL* Schnur Die URL des HTTP-Proxys, der bei der Kommunikation mit dem Konfigurationsdienst verwendet werden soll.
Proxy-Anmeldeinformationen* pscredential Anmeldeinformationen, die für den HTTP-Proxy verwendet werden sollen.

Hinweis

Unterstützt in den Windows-Versionen 1809 und höher.

Ein Beispielskript zum Vereinfachen der Konfiguration des ReportServerWeb-Werts für lokale Knoten ist verfügbar – siehe Generieren von DSC-Metakonfigurationen

Partielle Konfigurationen

Um eine partielle Konfiguration zu definieren, legen Sie einen PartialConfiguration-Block an. Weitere Informationen zu Teilkonfigurationen finden Sie unter DSC-Teilkonfigurationen. PartialConfiguration definiert die folgenden Eigenschaften.

Eigentum Typ Description
ConfigurationSource (Konfiguration) string[] Ein Array von Namen von Konfigurationsservern, die zuvor in den Blöcken ConfigurationRepositoryWeb und ConfigurationRepositoryShare definiert wurden und aus denen die Teilkonfiguration abgerufen wird.
Hängt davon ab Schnur{} Eine Liste der Namen anderer Konfigurationen, die abgeschlossen sein müssen, bevor diese Teilkonfiguration angewendet wird.
Description Schnur Text, der zur Beschreibung der Teilkonfiguration verwendet wird.
Exklusive Ressourcen string[] Ein Array von Ressourcen, die exklusiv für diese Teilkonfiguration verfügbar sind.
Aktualisierungsmodus Schnur Gibt an, wie der LCM diese Teilkonfiguration abruft. Die möglichen Werte sind "Disabled","Push" und "Pull".
  • Deaktiviert: Diese Teilkonfiguration ist deaktiviert.
  • Push: Die Teilkonfiguration wird per Push an den Knoten übertragen, indem das Cmdlet Publish-DscConfiguration aufgerufen wird. Nachdem alle Teilkonfigurationen für den Knoten entweder gepusht oder von einem Dienst abgerufen wurden, kann die Konfiguration durch Aufrufen von Start-DscConfiguration –UseExistinggestartet werden. Dies ist der Standardwert.
  • Ziehen: Der Knoten ist so konfiguriert, dass er regelmäßig nach einer teilweisen Konfiguration von einem Pulldienst sucht. Wenn diese Eigenschaft auf Pull festgelegt ist, müssen Sie einen Pulldienst in einer ConfigurationSource-Eigenschaft angeben. Weitere Informationen zum Azure Automation-Pulldienst finden Sie unter Übersicht über Azure Automation DSC.
ResourceModuleSource string[] Ein Array mit den Namen der Ressourcenserver, von denen die für diese Teilkonfiguration erforderlichen Ressourcen heruntergeladen werden sollen. Diese Namen müssen sich auf Dienstendpunkte beziehen, die zuvor in den Blöcken ResourceRepositoryWeb und ResourceRepositoryShare definiert wurden.

Hinweis

Teilkonfigurationen werden mit Azure Automation DSC unterstützt, aber es kann nur eine Konfiguration pro Knoten aus jedem Automation-Konto abgerufen werden.

Siehe auch

Konzepte

Übersicht über die Konfiguration des gewünschten Zustands

Erste Schritte mit Azure Automation DSC

Weitere Ressourcen

Set-DscLocalConfigurationManager

Einrichten eines Pull-Clients mit Konfigurationsnamen