Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Viktigt
Gäller för: Windows PowerShell 5.0
Krav
Anteckning
Registernyckeln DSCAutomationHostEnabled som beskrivs i det här avsnittet är inte tillgänglig i PowerShell 4.0. Information om hur du konfigurerar nya virtuella datorer vid den första starten i PowerShell 4.0 finns i Vill du konfigurera dina datorer automatiskt med DSC vid den första starten?
Om du vill köra de här exemplen behöver du:
En startbar virtuell hårddisk att arbeta med. Du kan ladda ned en ISO med en utvärderingskopia av Windows Server 2016 på Evaluation Center. Du hittar instruktioner om hur du skapar en virtuell hårddisk från en ISO-avbildning i Skapa startbara virtuella hårddiskar.
En värddator som har Hyper-V aktiverat. Mer information finns i Översikt över Hyper-V.
Med hjälp av DSC kan du automatisera installationen och konfigurationen av programvara för en dator vid den första starten. Du gör detta genom att antingen mata in ett MOF-konfigurationsdokument eller en metakonfiguration i startbara medier (till exempel en virtuell hårddisk) så att de körs under den första startprocessen. Det här beteendet anges av registernyckelnyckeln DSCAutomationHostEnabled under
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System. Som standard är värdet för den här nyckeln 2, vilket gör att DSC kan köras vid start.Om du inte vill att DSC ska köras vid start anger du värdet för registernyckeln DSCAutomationHostEnabled till 0.
Mata in ett MOF-konfigurationsdokument i en virtuell hårddisk
Mata in en DSC-metakonfiguration i en virtuell hårddisk
Inaktivera DSC vid start
Anteckning
Du kan mata in både Pending.mof och MetaConfig.mof i en dator på samma gång.
Om båda filerna finns har de inställningar som anges i MetaConfig.mof företräde.
Mata in ett MOF-konfigurationsdokument i en virtuell hårddisk
Om du vill implementera en konfiguration vid den första starten kan du mata in ett kompilerat MOF-konfigurationsdokument i den virtuella hårddisken som fil Pending.mof . Om registernyckeln DSCAutomationHostEnabled är inställd på 2 (standardvärdet) tillämpar DSC konfigurationen som definieras av Pending.mof när datorn startas för första gången.
I det här exemplet använder vi följande konfiguration, som installerar IIS på den nya datorn:
Configuration SampleIISInstall
{
Import-DscResource -ModuleName 'PSDesiredStateConfiguration'
node ('localhost')
{
WindowsFeature IIS
{
Ensure = 'Present'
Name = 'Web-Server'
}
}
}
Så här matar du in MOF-konfigurationsdokumentet på den virtuella hårddisken
Montera den virtuella hårddisk som du vill mata in konfigurationen i genom att anropa cmdleten Mount-VHD . Exempel:
Mount-VHD -Path C:\users\public\documents\vhd\Srv16.vhdSpara ovanstående konfiguration (SampleIISInstall) som en PowerShell-skriptfil (.ps1) på en dator som kör PowerShell 5.0 eller senare.
I en PowerShell-konsol navigerar du till mappen där du sparade .ps1 filen.
Kör följande PowerShell-kommandon för att kompilera MOF-dokumentet (information om hur du kompilerar DSC-konfigurationer finns i DSC-konfigurationer:
. .\SampleIISInstall.ps1 SampleIISInstallDå skapas en
localhost.moffil i en ny mapp med namnetSampleIISInstall. Byt namn på och flytta filen till rätt plats på den virtuella hårddisken somPending.mofmed hjälp av cmdleten Move-Item . Exempel:Move-Item -Path C:\DSCTest\SampleIISInstall\localhost.mof -Destination E:\Windows\System32\Configuration\Pending.mofDemontera den virtuella hårddisken genom att anropa cmdleten Dismount-VHD . Exempel:
Dismount-VHD -Path C:\users\public\documents\vhd\Srv16.vhdSkapa en virtuell dator med hjälp av den virtuella hårddisken där du installerade DSC MOF-dokumentet.
Efter den första start- och operativsysteminstallationen installeras IIS. Du kan kontrollera detta genom att anropa cmdleten Get-WindowsFeature .
Mata in en DSC-metakonfiguration i en virtuell hårddisk
Du kan också konfigurera en dator för att hämta en konfiguration vid den första starten genom att mata in en metakonfiguration (se Konfigurera den lokala Configuration Manager (LCM)) i den virtuella hårddisken som dess MetaConfig.mof fil. Om registernyckeln DSCAutomationHostEnabled är inställd på 2 (standardvärdet) tillämpar DSC metakonfigurationen som definieras av MetaConfig.mof på LCM när datorn startas för första gången. Om metakonfigurationen anger att LCM ska hämta konfigurationer från en hämtningsserver försöker datorn hämta en konfiguration från den hämtningsservern vid den första starten. Information om hur du konfigurerar en DSC-hämtningsserver finns i Konfigurera en DSC-webbhämtningsserver.
I det här exemplet använder vi både konfigurationen som beskrivs i föregående avsnitt (SampleIISInstall) och följande metakonfiguration:
[DSCLocalConfigurationManager()]
configuration PullClientBootstrap
{
Node localhost
{
Settings
{
RefreshMode = 'Pull'
RefreshFrequencyMins = 30
RebootNodeIfNeeded = $true
}
ConfigurationRepositoryWeb CONTOSO-PullSrv
{
ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
RegistrationKey = '140a952b-b9d6-406b-b416-e0f759c9c0e4'
ConfigurationNames = @('SampleIISInstall')
}
}
}
Så här matar du in MOF-dokumentet för metakonfiguration på den virtuella hårddisken
Montera den virtuella hårddisk som du vill mata in metakonfigurationen i genom att anropa cmdleten Mount-VHD . Exempel:
Mount-VHD -Path C:\users\public\documents\vhd\Srv16.vhdKonfigurera en DSC-webbhämtningsserver och spara sampleIISInstall-konfigurationen i lämplig mapp.
På en dator som kör PowerShell 5.0 eller senare sparar du ovanstående metakonfiguration (PullClientBootstrap) som en PowerShell-skriptfil (.ps1).
I en PowerShell-konsol navigerar du till mappen där du sparade .ps1 filen.
Kör följande PowerShell-kommandon för att kompilera MOF-dokumentet för metakonfiguration (information om hur du kompilerar DSC-konfigurationer finns i DSC-konfigurationer:
. .\PullClientBootstrap.ps1 PullClientBootstrapDå skapas en
localhost.meta.moffil i en ny mapp med namnetPullClientBootstrap. Byt namn på och flytta filen till rätt plats på den virtuella hårddisken somMetaConfig.mofmed hjälp av cmdleten Move-Item .Move-Item -Path C:\DSCTest\PullClientBootstrap\localhost.meta.mof -Destination E:\Windows\System32\Configuration\MetaConfig.mofDemontera den virtuella hårddisken genom att anropa cmdleten Dismount-VHD . Exempel:
Dismount-VHD -Path C:\users\public\documents\vhd\Srv16.vhdSkapa en virtuell dator med hjälp av den virtuella hårddisken där du installerade DSC MOF-dokumentet.
Efter den första start- och operativsysteminstallationen hämtar DSC konfigurationen från hämtningsservern och IIS installeras. Du kan kontrollera detta genom att anropa cmdleten Get-WindowsFeature .
Inaktivera DSC vid start
Som standard är värdet för
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\DSCAutomationHostEnabled nyckeln är inställd på 2, vilket gör att en DSC-konfiguration kan köras om datorn är i väntande eller aktuellt tillstånd. Om du inte vill att en konfiguration ska köras vid den första starten behöver du ange värdet för den här nyckeln till 0:
Montera den virtuella hårddisken genom att anropa cmdleten Mount-VHD . Exempel:
Mount-VHD -Path C:\users\public\documents\vhd\Srv16.vhdLäs in registerundernyckeln
HKLM\Softwarefrån den virtuella hårddisken genom att anropareg load.reg load HKLM\Vhd E:\Windows\System32\Config\SoftwareÄndra värdet
DSCAutomationHostEnabledför till 0 i den inlästa registreringsdatafilen.reg add "HKLM\Vhd\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v DSCAutomationHostEnabled /t REG_DWORD /d 0 /fTa bort registret genom att köra följande kommandon:
reg unload HKLM\Vhd
Se även
DSCAutomationHostEnabled-registernyckel