De lokale Configuration Manager
Van toepassing op: Windows PowerShell 5.0
Local Configuration Manager (LCM) is de engine van Desired State Configuration (DSC). LCM wordt uitgevoerd op elk doel-knooppunt en is verantwoordelijk voor het parseren en de uitvoering van configuraties die naar het knooppunt worden verzonden. Het is ook verantwoordelijk voor een aantal andere aspecten van DSC, waaronder de volgende.
- De vernieuwingsmodus bepalen (push of pull).
- Opgeven hoe vaak een knooppunt configuraties op pullt en opgeeft.
- Het knooppunt koppelen aan de pull-service.
- Gedeeltelijke configuraties opgeven.
U gebruikt een speciaal type configuratie om de LCM te configureren om elk van deze gedragingen op te geven. In de volgende secties wordt beschreven hoe u de LCM configureert.
Windows PowerShell 5.0 zijn nieuwe instellingen geïntroduceerd voor het beheren van lokale Configuration Manager. Zie Configuring the Local Configuration Manager in Previous Versions ofWindows PowerShell voor meer informatie over het configureren van LCM in Windows PowerShell 4.0.
Een LCM-configuratie schrijven en gebruiken
Als u de LCM wilt configureren, maakt u een speciaal type configuratie en voert u deze uit om LCM-instellingen toe te passen. Als u een LCM-configuratie wilt opgeven, gebruikt u het kenmerk DscLocalConfigurationManager. Hieronder ziet u een eenvoudige configuratie die de LCM in de push-modus in stelt.
[DSCLocalConfigurationManager()]
configuration LCMConfig
{
Node localhost
{
Settings
{
RefreshMode = 'Push'
}
}
}
Het proces van het toepassen van instellingen op LCM is vergelijkbaar met het toepassen van een DSC-configuratie. U maakt een LCM-configuratie, compileert deze naar een MOF-bestand en pas deze toe op het knooppunt. In tegenstelling tot DSC-configuraties voert u geen LCM-configuratie uit door de cmdlet Start-DscConfiguration aan te roepen. In plaats daarvan roept u Set-DscLocalConfigurationManageraan en geeft u het pad naar de LCM-configuratie-MOF op als parameter. Nadat u de LCM-configuratie hebt gemaakt, kunt u de eigenschappen van de LCM bekijken door de cmdlet Get-DscLocalConfigurationManager aan te roepen.
Een LCM-configuratie kan alleen blokken bevatten voor een beperkte set resources. In het vorige voorbeeld is de enige resource met de naam Instellingen. De andere beschikbare resources zijn:
- ConfigurationRepositoryWeb: hiermee geeft u een HTTP-pull-service voor configuraties op.
- ConfigurationRepositoryShare: hiermee geeft u een SMB-share voor configuraties op.
- ResourceRepositoryWeb: hiermee geeft u een HTTP-pull-service voor modules op.
- ResourceRepositoryShare: hiermee geeft u een SMB-share voor modules op.
- ReportServerWeb: hiermee geeft u een HTTP-pull-service op waar rapporten naar worden verzonden.
- PartialConfiguration: biedt gegevens voor het inschakelen van gedeeltelijke configuraties.
Basisinstellingen
Naast het opgeven van pull-service-eindpunten/-paden en gedeeltelijke configuraties, worden alle eigenschappen van de LCM geconfigureerd in een Instellingen blok. De volgende eigenschappen zijn beschikbaar in een Instellingen blok.
| Eigenschap | Type | Description |
|---|---|---|
| ActionAfterReboot | tekenreeks | Hiermee geeft u op wat er gebeurt na het opnieuw opstarten tijdens de toepassing van een configuratie. De mogelijke waarden zijn ContinueConfiguration en StopConfiguration.
|
| AllowModuleOverwrite | booleaans | $TRUE of nieuwe configuraties die van de pull-service zijn gedownload, de oude op het doel-knooppunt mogen overschrijven. Anders $FALSE. |
| CertificateID | tekenreeks | De vingerafdruk van een certificaat dat wordt gebruikt voor het beveiligen van referenties die worden doorgegeven in een configuratie. Zie Wilt u referenties beveiligen in Windows PowerShell Desired State Configuration? voor meer informatie. Opmerking: dit wordt automatisch beheerd als u een Azure Automation pull-service van DSC gebruikt. |
| ConfigurationDownloadManagers | CimInstance[] | Verouderd. Gebruik de blokken ConfigurationRepositoryWeb en ConfigurationRepositoryShare om configuratie-pull-service-eindpunten te definiëren. |
| ConfigurationID | tekenreeks | Voor achterwaartse compatibiliteit met oudere pull-serviceversies. Een GUID die het configuratiebestand identificeert dat moet worden opgeslagen bij een pull-service. Het knooppunt haalt configuraties op de pull-service op als de naam van de configuratie-MOF ConfigurationID.mof heet. Opmerking: Als u deze eigenschap in stelt, werkt het registreren van het knooppunt bij een pull-service met behulp van RegistrationKey niet. Zie Een pull-client instellenmet configuratienamen voor meer informatie. |
| ConfigurationMode | tekenreeks | Hiermee geeft u op hoe de LCM de configuratie daadwerkelijk op de doelknooppunten wordt toegepast. Mogelijke waarden __zijn ApplyOnly,__ApplyAndMonitor en ApplyAndAutoCorrect.
|
| ConfigurationModeFrequencyMins | UInt32 | Hoe vaak, in minuten, de huidige configuratie wordt gecontroleerd en toegepast. Deze eigenschap wordt genegeerd als de eigenschap ConfigurationMode is ingesteld op ApplyOnly. De standaardwaarde is 15. |
| DebugMode | tekenreeks | Mogelijke waarden zijn None, ForceModuleImport en All.
|
| RebootNodeIfNeeded | booleaans | Stel dit in op $true om resources toe te staan het knooppunt opnieuw op te starten met behulp van de vlag $global:DSCMachineStatus . Anders moet u het knooppunt handmatig opnieuw opstarten voor elke configuratie die dit vereist. De standaardwaarde is $false. Als u deze instelling wilt gebruiken wanneer een voorwaarde voor opnieuw opstarten wordt veroorzaakt door iets anders dan DSC (zoals Windows Installer), combineert u deze instelling met de resource PendingReboot in de module ComputerManagementDsc. |
| RefreshMode | tekenreeks | Hiermee geeft u op hoe de LCM configuraties krijgt. De mogelijke waarden zijn 'Disabled', 'Push' en 'Pull'.
|
| RefreshFrequencyMins | Uint32 | Het tijdsinterval in minuten, waarbij de LCM een pull-service controleert om bijgewerkte configuraties op te halen en de lokale configuratie controleert op drift. De configuratie wordt toegepast, ongeacht of een update is gedownload. Deze waarde wordt genegeerd als de LCM niet is geconfigureerd in de pull-modus. De standaardwaarde is 30. |
| ReportManagers | CimInstance[] | Verouderd. Gebruik ReportServerWeb-blokken om een eindpunt te definiëren voor het verzenden van rapportagegegevens naar een pull-service. |
| ResourceModuleManagers | CimInstance[] | Verouderd. Gebruik de blokken ResourceRepositoryWeb en ResourceRepositoryShare om respectievelijk HTTP-eindpunten of SMB-paden voor pull-service te definiëren. |
| PartialConfigurations | CimInstance | Niet geïmplementeerd. Niet gebruiken. |
| StatusRetentionTimeInDays | UInt32 | Het aantal dagen dat de LCM de status van de huidige configuratie behoudt. |
Notitie
De LCM start de cyclus ConfigurationModeFrequencyMins op basis van:
- Een nieuwe metaconfig met een wijziging in ConfigurationModeFrequencyMins wordt toegepast met behulp van
Set-DscLocalConfigurationManager - Een machine opnieuw opstarten
Voor elke voorwaarde waarbij het timerproces een crash heeft, wordt deze binnen 30 seconden gedetecteerd en wordt de cyclus opnieuw gestart. Een gelijktijdige bewerking kan de start van de cyclus vertragen. Als de duur van deze bewerking de geconfigureerde cyclusfrequentie overschrijdt, wordt de volgende timer niet gestart. De metaconfig wordt bijvoorbeeld geconfigureerd met een pull-frequentie van 15 minuten en er vindt een pull plaats op T1. Het knooppunt is 16 minuten lang niet klaar. De cyclus van de eerste 15 minuten wordt genegeerd en de volgende pull vindt plaats op T1+15+15.
De oorspronkelijke intentie in Pull-scenario's was dat RefreshFrequencyMins de is ingesteld op een langere tijd dan de ConfigurationModeFrequencyMins . Lokale configuraties worden voornamelijk door om configuratiedrift te voorkomen en worden gebruikt om bij te houden van de daadwerkelijke configuratiewijzigingen die door ConfigurationModeFrequencyMins de beheerder zijn RefreshFrequencyMins aangebracht.
Pull-service
LCM-configuratie ondersteunt het definiëren van de volgende typen pull-service-eindpunten:
- Configuratieserver: een opslagplaats voor DSC-configuraties. Definieer configuratieservers met behulp van de blokken ConfigurationRepositoryWeb (voor webservers) en ConfigurationRepositoryShare (voor SMB-gebaseerde servers).
- Resourceserver: een opslagplaats voor DSC-resources, verpakt als PowerShell-modules. Definieer resourceservers met behulp van de blokken ResourceRepositoryWeb (voor webservers) en ResourceRepositoryShare (voor SMB-servers).
- Rapportserver: een service waar DSC rapportgegevens naar verzendt. Rapportservers definiëren met behulp van ReportServerWeb-blokken. Een rapportserver moet een webservice zijn.
Zie Pull-service voor meer informatie Desired State Configuration pull-service.
Configuratieserverblokken
Als u een webconfiguratieserver wilt definiëren, maakt u een ConfigurationRepositoryWeb-blok. Een ConfigurationRepositoryWeb definieert de volgende eigenschappen.
| Eigenschap | Type | Description |
|---|---|---|
| AllowUnsecureConnection | booleaans | Stel deze $TRUE verbindingen van het knooppunt naar de server zonder verificatie toe te staan. Stel in op $FALSE verificatie vereist. |
| CertificateID | tekenreeks | De vingerafdruk van een certificaat dat wordt gebruikt voor verificatie bij de server. |
| ConfigurationNames | Tekenreeks[] | Een matrix met namen van configuraties die door het doel-knooppunt moeten worden gehaald. Deze worden alleen gebruikt als het knooppunt is geregistreerd bij de pull-service met behulp van een RegistrationKey. Zie Een pull-client instellenmet configuratienamen voor meer informatie. |
| RegistrationKey | tekenreeks | Een GUID die het knooppunt registreert bij de pull-service. Zie Een pull-client instellenmet configuratienamen voor meer informatie. |
| Serverurl | tekenreeks | De URL van de configuratieservice. |
| ProxyURL* | tekenreeks | De URL van de HTTP-proxy die moet worden gebruikt bij de communicatie met de configuratieservice. |
| ProxyCredential* | pscredential | Referentie die moet worden gebruikt voor de HTTP-proxy. |
Notitie
Ondersteund in Windows versie 1809 en hoger.
Er is een voorbeeldscript beschikbaar om het configureren van de ConfigurationRepositoryWeb-waarde voor on-premises knooppunten te vereenvoudigen. Zie DSC-metaconfiguraties genereren
Als u een op SMB gebaseerde configuratieserver wilt definiëren, maakt u een ConfigurationRepositoryShare-blok. Een ConfigurationRepositoryShare definieert de volgende eigenschappen.
| Eigenschap | Type | Description |
|---|---|---|
| Referentie | MSFT_Credential | De referentie die wordt gebruikt om te verifiëren bij de SMB-share. |
| Sourcepath | tekenreeks | Het pad van de SMB-share. |
Resourceserverblokken
Als u een webresourceserver wilt definiëren, maakt u een ResourceRepositoryWeb-blok. Een ResourceRepositoryWeb definieert de volgende eigenschappen.
| Eigenschap | Type | Description |
|---|---|---|
| AllowUnsecureConnection | booleaans | Stel deze $TRUE verbindingen van het knooppunt met de server zonder verificatie toe te staan. Stel in op $FALSE verificatie te vereisen. |
| CertificateID | tekenreeks | De vingerafdruk van een certificaat dat wordt gebruikt voor verificatie bij de server. |
| RegistrationKey | tekenreeks | Een GUID die het knooppunt aan de pull-service identificeert. |
| Serverurl | tekenreeks | De URL van de configuratieserver. |
| ProxyURL* | tekenreeks | De URL van de HTTP-proxy die moet worden gebruikt bij de communicatie met de configuratieservice. |
| ProxyCredential* | pscredential | Referentie die moet worden gebruikt voor de HTTP-proxy. |
Notitie
Ondersteund in Windows versie 1809 en hoger.
Er is een voorbeeldscript beschikbaar om het configureren van de resourcerepositoryWeb-waarde voor on-premises knooppunten te vereenvoudigen. Zie DSC-metaconfiguraties genereren
Als u een op SMB gebaseerde resourceserver wilt definiëren, maakt u een ResourceRepositoryShare-blok. ResourceRepositoryShare definieert de volgende eigenschappen.
| Eigenschap | Type | Description |
|---|---|---|
| Referentie | MSFT_Credential | De referentie die wordt gebruikt voor verificatie bij de SMB-share. Zie Een DSC SMB-pull-server instellen voor een voorbeeld van het doorgeven van referenties |
| Sourcepath | tekenreeks | Het pad van de SMB-share. |
Rapportserverblokken
Als u een rapportserver wilt definiëren, maakt u een ReportServerWeb-blok. De rapportserverfunctie is niet compatibel met de pull-service op basis van SMB. ReportServerWeb definieert de volgende eigenschappen.
| Eigenschap | Type | Description |
|---|---|---|
| AllowUnsecureConnection | booleaans | Stel deze $TRUE verbindingen van het knooppunt met de server zonder verificatie toe te staan. Stel in op $FALSE verificatie te vereisen. |
| CertificateID | tekenreeks | De vingerafdruk van een certificaat dat wordt gebruikt voor verificatie bij de server. |
| RegistrationKey | tekenreeks | Een GUID die het knooppunt aan de pull-service identificeert. |
| Serverurl | tekenreeks | De URL van de configuratieserver. |
| ProxyURL* | tekenreeks | De URL van de HTTP-proxy die moet worden gebruikt bij de communicatie met de configuratieservice. |
| ProxyCredential* | pscredential | Referentie die moet worden gebruikt voor de HTTP-proxy. |
Notitie
Ondersteund in Windows versie 1809 en hoger.
Er is een voorbeeldscript beschikbaar om het configureren van de reportServerWeb-waarde voor on-premises knooppunten te vereenvoudigen. Zie DSC-metaconfiguraties genereren
Gedeeltelijke configuraties
Als u een gedeeltelijke configuratie wilt definiëren, maakt u een PartialConfiguration-blok. Zie DSC Partial configurations (Gedeeltelijke configuraties van DSC) voor meer informatie over gedeeltelijke configuraties. PartialConfiguration definieert de volgende eigenschappen.
| Eigenschap | Type | Description |
|---|---|---|
| ConfigurationSource | tekenreeks[] | Een matrix met namen van configuratieservers, eerder gedefinieerd in de blokken ConfigurationRepositoryWeb en ConfigurationRepositoryShare, waaruit de gedeeltelijke configuratie wordt gehaald. |
| DependsOn | tekenreeks{} | Een lijst met namen van andere configuraties die moeten worden voltooid voordat deze gedeeltelijke configuratie wordt toegepast. |
| Description | tekenreeks | Tekst die wordt gebruikt om de gedeeltelijke configuratie te beschrijven. |
| ExclusiveResources | tekenreeks[] | Een matrix met resources die exclusief zijn voor deze gedeeltelijke configuratie. |
| RefreshMode | tekenreeks | Hiermee geeft u op hoe de LCM deze gedeeltelijke configuratie krijgt. De mogelijke waarden zijn Uitgeschakeld, Push en Pull.
|
| ResourceModuleSource | tekenreeks[] | Een matrix met de namen van resourceservers van waaruit de vereiste resources voor deze gedeeltelijke configuratie moeten worden gedownload. Deze namen moeten verwijzen naar service-eindpunten die eerder zijn gedefinieerd in de blokken ResourceRepositoryWeb en ResourceRepositoryShare. |
Notitie
gedeeltelijke configuraties worden ondersteund met Azure Automation DSC, maar er kan slechts één configuratie worden gehaald uit elk Automation-account per knooppunt.
Zie ook
Concepten
Desired State Configuration Overzicht
Aan de slag met Azure Automation DSC