Konfigurera den lokala Configuration Manager
Gäller för: Windows PowerShell 5.0
Local Configuration Manager (LCM) är motorn i Desired State Configuration (DSC). LCM körs på varje målnod och ansvarar för att parsa och anta konfigurationer som skickas till noden. Det är också ansvarigt för ett antal andra aspekter av DSC, inklusive följande.
- Fastställa uppdateringsläge (push eller pull).
- Ange hur ofta en nod hämtar och antar konfigurationer.
- Associera noden med pull-tjänsten.
- Ange partiella konfigurationer.
Du använder en särskild typ av konfiguration för att konfigurera LCM för att ange vart och ett av dessa beteenden. I följande avsnitt beskrivs hur du konfigurerar LCM.
Windows PowerShell 5.0 introducerade nya inställningar för hantering av lokala Configuration Manager. Information om hur du konfigurerar LCM i Windows PowerShell 4.0 finns i Konfigurera den lokala Configuration Manager i tidigare versioner av Windows PowerShell.
Skriva och implementera en LCM-konfiguration
Om du vill konfigurera LCM skapar och kör du en särskild typ av konfiguration som tillämpar LCM-inställningar. Om du vill ange en LCM-konfiguration använder du attributet DscLocalConfigurationManager. Nedan visas en enkel konfiguration som ställer in LCM på push-läge.
[DSCLocalConfigurationManager()]
configuration LCMConfig
{
Node localhost
{
Settings
{
RefreshMode = 'Push'
}
}
}
Processen med att tillämpa inställningar på LCM liknar att tillämpa en DSC-konfiguration. Du skapar en LCM-konfiguration, kompilerar den till en MOF-fil och tillämpar den på noden. Till skillnad från DSC-konfigurationer utför du inte en LCM-konfiguration genom att anropa cmdleten Start-DscConfiguration . I stället anropar du Set-DscLocalConfigurationManager och anger sökvägen till LCM-konfigurationens MOF som en parameter. När du har implementerat LCM-konfigurationen kan du se egenskaperna för LCM genom att anropa cmdleten Get-DscLocalConfigurationManager .
En LCM-konfiguration kan bara innehålla block för en begränsad uppsättning resurser. I föregående exempel är den enda resursen som heter Inställningar. De andra tillgängliga resurserna är:
- ConfigurationRepositoryWeb: anger en HTTP-pull-tjänst för konfigurationer.
- ConfigurationRepositoryShare: anger en SMB-resurs för konfigurationer.
- ResourceRepositoryWeb: anger en HTTP-hämtningstjänst för moduler.
- ResourceRepositoryShare: anger en SMB-resurs för moduler.
- ReportServerWeb: anger en HTTP-pull-tjänst som rapporter skickas till.
- PartialConfiguration: tillhandahåller data för att aktivera partiella konfigurationer.
Grundläggande inställningar
Förutom att ange pull-tjänstslutpunkter/sökvägar och partiella konfigurationer konfigureras alla egenskaper för LCM i ett inställningsblock . Följande egenskaper är tillgängliga i ett inställningsblock .
Egenskap | Typ | Description |
---|---|---|
ActionAfterReboot | sträng | Anger vad som händer efter en omstart under tillämpningen av en konfiguration. Möjliga värden är "ContinueConfiguration" och "StopConfiguration".
|
AllowModuleOverwrite | boolesk | $TRUE om nya konfigurationer som laddas ned från pull-tjänsten tillåts skriva över de gamla på målnoden. Annars $FALSE. |
CertificateID | sträng | Tumavtrycket för ett certifikat som används för att skydda autentiseringsuppgifter som skickas i en konfiguration. Mer information finns i Vill du skydda autentiseringsuppgifter i Windows PowerShell Desired State Configuration?. Obs! Detta hanteras automatiskt om du använder Azure Automation DSC-hämtningstjänst. |
ConfigurationDownloadManagers | CimInstance[] | Föråldrade. Använd ConfigurationRepositoryWeb - och ConfigurationRepositoryShare-block för att definiera tjänstslutpunkter för konfigurationshämtning. |
ConfigurationID | sträng | För bakåtkompatibilitet med äldre pull-tjänstversioner. Ett GUID som identifierar konfigurationsfilen som ska hämtas från en pull-tjänst. Noden hämtar konfigurationer för pull-tjänsten om namnet på konfigurationen MOF heter ConfigurationID.mof. Observera: Om du anger den här egenskapen fungerar det inte att registrera noden med en pull-tjänst med hjälp av RegistrationKey . Mer information finns i Konfigurera en pull-klient med konfigurationsnamn. |
ConfigurationMode | sträng | Anger hur LCM faktiskt tillämpar konfigurationen på målnoderna. Möjliga värden är "ApplyOnly","ApplyAndMonitor" och "ApplyAndAutoCorrect".
|
ConfigurationModeFrequencyMins | UInt32 | Hur ofta, på några minuter, kontrolleras och tillämpas den aktuella konfigurationen. Den här egenskapen ignoreras om egenskapen ConfigurationMode är inställd på ApplyOnly. Standardvärdet är 15. |
DebugMode | sträng | Möjliga värden är None, ForceModuleImport och All.
|
RebootNodeIfNeeded | boolesk | Ställ in på så $true att resurser kan starta om noden med hjälp av $global:DSCMachineStatus flaggan . Annars måste du starta om noden manuellt för alla konfigurationer som kräver den. Standardvärdet är $false . Om du vill använda den här inställningen när ett omstartsvillkor tillämpas av något annat än DSC (till exempel Windows Installer) kombinerar du den här inställningen med resursen PendingReboot i modulen ComputerManagementDsc . |
RefreshMode | sträng | Anger hur LCM hämtar konfigurationer. Möjliga värden är "Disabled","Push" och "Pull".
|
RefreshFrequencyMins | Uint32 | Tidsintervallet, i minuter, då LCM kontrollerar en pull-tjänst för att få uppdaterade konfigurationer och kontrollerar den lokala konfigurationen efter drift. Konfigurationen tillämpas oavsett om en uppdatering har laddats ned eller inte. Det här värdet ignoreras om LCM inte har konfigurerats i pull-läge. Standardvärdet är 30. |
ReportManagers | CimInstance[] | Föråldrade. Använd ReportServerWeb-block för att definiera en slutpunkt för att skicka rapporteringsdata till en pull-tjänst. |
ResourceModuleManagers | CimInstance[] | Föråldrade. Använd Blocken ResourceRepositoryWeb och ResourceRepositoryShare för att definiera HTTP-slutpunkter för pull-tjänsten eller SMB-sökvägar. |
PartialConfigurations | CimInstance | Inte implementerat. Använd inte. |
StatusRetentionTimeInDays | UInt32 | Antalet dagar som LCM behåller statusen för den aktuella konfigurationen. |
Anteckning
LCM startar ConfigurationModeFrequencyMins-cykeln baserat på:
- En ny metakonfiguration med en ändring av ConfigurationModeFrequencyMins används med hjälp av
Set-DscLocalConfigurationManager
- En omstart av datorn
För alla villkor där den tidsinställda processen upplever en krasch identifieras det inom 30 sekunder och cykeln startas om. En samtidig åtgärd kan fördröja att cykeln startas. Om åtgärdens varaktighet överskrider den konfigurerade cykelfrekvensen startar inte nästa timer. Till exempel konfigureras metakonfigurationen med 15 minuters hämtningsfrekvens och en hämtning sker vid T1. Noden slutar inte att fungera på 16 minuter. Den första 15-minuterscykeln ignoreras och nästa hämtning sker vid T1+15+15.
Den ursprungliga avsikten ConfigurationModeFrequencyMins
i Pull-scenarier var att är inställd på RefreshFrequencyMins
en längre tid än . Lokala konfigurationer hanteras främst av ConfigurationModeFrequencyMins
för att undvika konfigurationsavvikelser och RefreshFrequencyMins
används för att hålla reda på faktiska konfigurationsändringar som gjorts av administratören.
Pull-tjänst
LCM-konfigurationen stöder definition av följande typer av pull-tjänstslutpunkter:
- Konfigurationsserver: En lagringsplats för DSC-konfigurationer. Definiera konfigurationsservrar med hjälp av ConfigurationRepositoryWeb -block (för webbaserade servrar) och ConfigurationRepositoryShare (för SMB-baserade servrar).
- Resursserver: En lagringsplats för DSC-resurser, paketerad som PowerShell-moduler. Definiera resursservrar med hjälp av Blocken ResourceRepositoryWeb (för webbaserade servrar) och ResourceRepositoryShare (för SMB-baserade servrar).
- Rapportserver: En tjänst som DSC skickar rapportdata till. Definiera rapportservrar med hjälp av ReportServerWeb-block . En rapportserver måste vara en webbtjänst.
Mer information om pull-tjänsten finns i Desired State Configuration Pull Service.
Konfigurationsserverblock
Om du vill definiera en webbaserad konfigurationsserver skapar du ett ConfigurationRepositoryWeb-block . En ConfigurationRepositoryWeb definierar följande egenskaper.
Egenskap | Typ | Description |
---|---|---|
AllowUnsecureConnection | boolesk | Ange till $TRUE för att tillåta anslutningar från noden till servern utan autentisering. Ange till $FALSE för att kräva autentisering. |
CertificateID | sträng | Tumavtrycket för ett certifikat som används för att autentisera till servern. |
ConfigurationNames | Sträng[] | En matris med namn på konfigurationer som ska hämtas av målnoden. Dessa används endast om noden är registrerad i pull-tjänsten med hjälp av en RegistrationKey. Mer information finns i Konfigurera en pull-klient med konfigurationsnamn. |
RegistrationKey | sträng | Ett GUID som registrerar noden med pull-tjänsten. Mer information finns i Konfigurera en pull-klient med konfigurationsnamn. |
ServerURL | sträng | URL:en för konfigurationstjänsten. |
ProxyURL* | sträng | URL:en för http-proxyn som ska användas vid kommunikation med konfigurationstjänsten. |
ProxyCredential* | pscredential | Autentiseringsuppgifter som ska användas för http-proxyn. |
Anteckning
Stöds i Windows version 1809 och senare.
Ett exempelskript för att förenkla konfigurationen av ConfigurationRepositoryWeb-värdet för lokala noder finns tillgängligt . Se Generera DSC-metakonfigurationer
Om du vill definiera en SMB-baserad konfigurationsserver skapar du ett ConfigurationRepositoryShare-block . En ConfigurationRepositoryShare definierar följande egenskaper.
Egenskap | Typ | Description |
---|---|---|
Merit | MSFT_Credential | Autentiseringsuppgifterna som används för att autentisera till SMB-resursen. |
SourcePath | sträng | Sökvägen till SMB-resursen. |
Resursserverblock
Om du vill definiera en webbaserad resursserver skapar du ett ResourceRepositoryWeb-block . En ResourceRepositoryWeb definierar följande egenskaper.
Egenskap | Typ | Description |
---|---|---|
AllowUnsecureConnection | boolesk | Ange till $TRUE för att tillåta anslutningar från noden till servern utan autentisering. Ange till $FALSE för att kräva autentisering. |
CertificateID | sträng | Tumavtrycket för ett certifikat som används för att autentisera till servern. |
RegistrationKey | sträng | Ett GUID som identifierar noden för pull-tjänsten. |
ServerURL | sträng | URL:en för konfigurationsservern. |
ProxyURL* | sträng | URL:en för http-proxyn som ska användas vid kommunikation med konfigurationstjänsten. |
ProxyCredential* | pscredential | Autentiseringsuppgifter som ska användas för http-proxyn. |
Anteckning
Stöds i Windows version 1809 och senare.
Ett exempelskript för att förenkla konfigurationen av ResourceRepositoryWeb-värdet för lokala noder finns tillgängligt . Se Generera DSC-metakonfigurationer
Om du vill definiera en SMB-baserad resursserver skapar du ett ResourceRepositoryShare-block . ResourceRepositoryShare definierar följande egenskaper.
Egenskap | Typ | Description |
---|---|---|
Merit | MSFT_Credential | Autentiseringsuppgifterna som används för att autentisera till SMB-resursen. Ett exempel på hur du skickar autentiseringsuppgifter finns i Konfigurera en DSC SMB-hämtningsserver |
SourcePath | sträng | Sökvägen till SMB-resursen. |
Rapportserverblock
Om du vill definiera en rapportserver skapar du ett ReportServerWeb-block . Rapportserverrollen är inte kompatibel med SMB-baserad pull-tjänst. ReportServerWeb definierar följande egenskaper.
Egenskap | Typ | Description |
---|---|---|
AllowUnsecureConnection | boolesk | Ange till $TRUE för att tillåta anslutningar från noden till servern utan autentisering. Ange till $FALSE för att kräva autentisering. |
CertificateID | sträng | Tumavtrycket för ett certifikat som används för att autentisera till servern. |
RegistrationKey | sträng | Ett GUID som identifierar noden för pull-tjänsten. |
ServerURL | sträng | URL:en för konfigurationsservern. |
ProxyURL* | sträng | URL:en för http-proxyn som ska användas vid kommunikation med konfigurationstjänsten. |
ProxyCredential* | pscredential | Autentiseringsuppgifter som ska användas för http-proxyn. |
Anteckning
Stöds i Windows version 1809 och senare.
Ett exempelskript för att förenkla konfigurationen av ReportServerWeb-värdet för lokala noder finns tillgängligt. Mer information finns i Generera DSC-metakonfigurationer
Partiella konfigurationer
Om du vill definiera en partiell konfiguration skapar du ett PartialConfiguration-block . Mer information om partiella konfigurationer finns i Partiella DSC-konfigurationer. PartialConfiguration definierar följande egenskaper.
Egenskap | Typ | Description |
---|---|---|
ConfigurationSource | string[] | En matris med namn på konfigurationsservrar, som tidigare definierats i ConfigurationRepositoryWeb - och ConfigurationRepositoryShare-block , där den partiella konfigurationen hämtas från. |
DependsOn | sträng{} | En lista med namn på andra konfigurationer som måste slutföras innan den här partiella konfigurationen tillämpas. |
Description | sträng | Text som används för att beskriva den partiella konfigurationen. |
ExclusiveResources | string[] | En matris med resurser som är exklusiva för den här partiella konfigurationen. |
RefreshMode | sträng | Anger hur LCM hämtar den här partiella konfigurationen. Möjliga värden är "Disabled","Push" och "Pull".
|
ResourceModuleSource | string[] | En matris med namnen på resursservrar som du kan hämta nödvändiga resurser från för den här partiella konfigurationen. Dessa namn måste referera till tjänstslutpunkter som tidigare definierats i resourcerepositoryWeb - och ResourceRepositoryShare-block . |
Anteckning
partiella konfigurationer stöds med Azure Automation DSC, men endast en konfiguration kan hämtas från varje Automation-konto per nod.
Se även
Begrepp
översikt över Desired State Configuration
Komma igång med Azure Automation DSC