Van toepassing op: Windows PowerShell 5.0Applies To: Windows PowerShell 5.0

Opmerking: de DSCAutomationHostEnabled registersleutel beschreven in dit onderwerp is niet beschikbaar in PowerShell 4.0.Note: The DSCAutomationHostEnabled registry key described in this topic is not available in PowerShell 4.0. Zie voor meer informatie over het configureren van nieuwe virtuele machines op de eerste boot-up in PowerShell 4.0 automatisch configureren van uw Machines met behulp van DSC op initiële Boot-up wilt?For information on how to configure new virtual machines at initial boot-up in PowerShell 4.0, see Want to Automatically Configure Your Machines Using DSC at Initial Boot-up?

Een virtuele machines op de eerste boot-up configureren met behulp van DSCConfigure a virtual machines at initial boot-up by using DSC

VereistenRequirements

Voor het uitvoeren van deze voorbeelden, moet u het:To run these examples, you will need:

U kunt software-installatie en configuratie van een computer op initiële boot-up automatiseren met behulp van DSC.By using DSC, you can automate software installation and configuration for a computer at initial boot-up. U doen dit door beide injecteren van een document van de MOF-configuratie of een metaconfiguratie in opstartbare media (zoals een VHD) zodat ze worden uitgevoerd wanneer de eerste keer opstarten-up.You do this by either injecting a configuration MOF document or a metaconfiguration into bootable media (such as a VHD) so that they are run during the initial boot-up process. Dit gedrag wordt opgegeven door de DSCAutomationHostEnabled registersleutel registersleutel onder HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies.This behavior is specified by the DSCAutomationHostEnabled registry key registry key under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies. Standaard is de waarde van deze sleutel 2, waardoor DSC om uit te voeren tijdens het opstarten.By default, the value of this key is 2, which allows DSC to run at boot time.

Als u niet dat DSC om uit te voeren tijdens het opstarten wilt, stel de waarde van de DSCAutomationHostEnabled registersleutel registersleutel in op 0.If you do not want DSC to run at boot time, set the value of the DSCAutomationHostEnabled registry key registry key to 0.

  • Een configuratie MOF document invoeren in een VHDInject a configuration MOF document into a VHD
  • DSC-metaconfiguratie toe invoeren in een VHDInject a DSC metaconfiguration into a VHD
  • DSC tijdens het opstarten uitschakelenDisable DSC at boot time

Opmerking: kunt u beide injecteren Pending.mof en MetaConfig.mof in een computer op hetzelfde moment.Note: You can inject both Pending.mof and MetaConfig.mof into a computer at the same time. Als beide bestanden aanwezig zijn, worden de opgegeven instellingen MetaConfig.mof voorrang.If both files are present, the settings specified in MetaConfig.mof take precedence.

Een configuratie MOF document invoeren in een VHDInject a configuration MOF document into a VHD

Om door te nemen in een configuratie op de eerste boot-up, kunt u een MOF-document gecompileerde configuratie invoeren in de VHD als de Pending.mof bestand.To enact a configuration at initial boot-up, you can inject a compiled configuration MOF document into the VHD as its Pending.mof file. Als de DSCAutomationHostEnabled registersleutel is ingesteld op 2 (de standaardwaarde), DSC geldt de configuratie die is gedefinieerd door Pending.mof wanneer de computer voor het eerst wordt opgestart.If the DSCAutomationHostEnabled registry key is set to 2 (the default value), DSC will apply the configuration defined by Pending.mof when the computer boots up for the first time.

We gebruiken de volgende configuratie waarop IIS wordt geïnstalleerd op de nieuwe computer voor dit voorbeeld:For this example, we will use the following configuration, which will install IIS on the new computer:

Configuration SampleIISInstall
{
    Import-DscResource -ModuleName 'PSDesiredStateConfiguration'

    node ('localhost')
    {
        WindowsFeature IIS
        {
            Ensure = 'Present'
            Name   = 'Web-Server'
        }
    }
}

Het MOF-document van de configuratie op de VHD invoerenTo inject the configuration MOF document on the VHD

  1. Koppelen van de VHD waaraan u invoeren van de configuratie wilt door het aanroepen van de Mount-VHD cmdlet.Mount the VHD into which you want to inject the configuration by calling the Mount-VHD cmdlet. Bijvoorbeeld:For example:

    Mount-VHD -Path C:\users\public\documents\vhd\Srv16.vhd
    
  2. Op een computer waarop PowerShell 5.0 of hoger, sla de bovenstaande configuratie (SampleIISInstall) als een PowerShell-script (.ps1)-bestand.On a computer running PowerShell 5.0 or later, save the above configuration (SampleIISInstall) as a PowerShell script (.ps1) file.

  3. Ga naar de map waar u de .ps1-bestand opgeslagen in een PowerShell-console.In a PowerShell console, navigate to the folder where you saved the .ps1 file.

  4. Voer de volgende PowerShell-opdrachten voor het compileren van het MOF-document (Zie voor meer informatie over het compileren van DSC-configuraties DSC-configuraties:Run the following PowerShell commands to compile the MOF document (for information about compiling DSC configurations, see DSC Configurations:

    . .\SampleIISInstall.ps1
    SampleIISInstall
    
  5. Hiermee maakt u een localhost.mof bestand in een nieuwe map met de naam SampleIISInstall.This will create a localhost.mof file in a new folder named SampleIISInstall. Wijzig de naam en dat het bestand verplaatsen naar de juiste locatie op de VHD als Pending.mof met behulp van de Item verplaatsen cmdlet.Rename and move that file into the proper location on the VHD as Pending.mof by using the Move-Item cmdlet. Bijvoorbeeld:For example:

        Move-Item -Path C:\DSCTest\SampleIISInstall\localhost.mof -Destination E:\Windows\System32\Configuration\Pending.mof
    
  6. Ontkoppelen van de VHD door het aanroepen van de Dismount-VHD cmdlet.Dismount the VHD by calling the Dismount-VHD cmdlet. Bijvoorbeeld:For example:

    Dismount-VHD -Path C:\users\public\documents\vhd\Srv16.vhd
    
  7. Een virtuele machine maken met behulp van de VHD waar u het document DSC MOF hebt geïnstalleerd.Create a VM by using the VHD where you installed the DSC MOF document. Na de eerste boot-up en besturingssysteeminstallatie wordt IIS geïnstalleerd.After intial boot-up and operating system installation, IIS will be installed. U kunt dit controleren door het aanroepen van de Get-WindowsFeature cmdlet.You can verify this by calling the Get-WindowsFeature cmdlet.

DSC-metaconfiguratie toe invoeren in een VHDInject a DSC metaconfiguration into a VHD

U kunt ook configureren met een computer om op te halen van een configuratie op de eerste boot-up door het injecteren van een metaconfiguratie (Zie configureren van de lokale Configuration Manager (LCM)) in de VHD als de MetaConfig.mof bestand.You can also configure a computer to pull a configuration at intial boot-up by injecting a metaconfiguration (see Configuring the Local Configuration Manager (LCM)) into the VHD as its MetaConfig.mof file. Als de DSCAutomationHostEnabled registersleutel is ingesteld op 2 (de standaardwaarde), DSC gelden de metaconfiguratie gedefinieerd door MetaConfig.mof naar de LCM wanneer de computer voor het eerst wordt opgestart.If the DSCAutomationHostEnabled registry key is set to 2 (the default value), DSC will apply the metaconfiguration defined by MetaConfig.mof to the LCM when the computer boots up for the first time. Als de metaconfiguratie wordt opgegeven dat de LCM moet pull-configuraties van een pull-server, probeert de computer voor het ophalen van een configuratie van die pull-server op de eerste boot-up.If the metaconfiguration specifies that the LCM should pull configurations from a pull server, the computer will attempt to pull a configuration from that pull server at inital boot-up. Zie voor meer informatie over het instellen van een DSC-pull-server instellen van een DSC-webserver pull.For information about setting up a DSC pull server, see Setting up a DSC web pull server.

In dit voorbeeld gebruiken we beide de in de vorige sectie beschreven configuratie (SampleIISInstall), en de volgende metaconfiguratie toe:For this example, we will use both the configuration described in the previous section (SampleIISInstall), and the following metaconfiguration:

[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')
        }
    }
}

Het document van de MOF metaconfiguratie toe op de VHD invoerenTo inject the metaconfiguration MOF document on the VHD

  1. Koppelen van de VHD waaraan u de metaconfiguratie invoeren wilt door het aanroepen van de Mount-VHD cmdlet.Mount the VHD into which you want to inject the metaconfiguration by calling the Mount-VHD cmdlet. Bijvoorbeeld:For example:

    Mount-VHD -Path C:\users\public\documents\vhd\Srv16.vhd
    
  2. Instellen van een DSC-webserver pull, en sla de SampleIISInistall configuratie naar de juiste map.Set up a DSC web pull server, and save the SampleIISInistall configuration to the appropriate folder.

  3. Op een computer waarop PowerShell 5.0 of hoger, sla de bovenstaande metaconfiguratie (PullClientBootstrap) als een PowerShell-script (.ps1)-bestand.On a computer running PowerShell 5.0 or later, save the above metaconfiguration (PullClientBootstrap) as a PowerShell script (.ps1) file.

  4. Ga naar de map waar u de .ps1-bestand opgeslagen in een PowerShell-console.In a PowerShell console, navigate to the folder where you saved the .ps1 file.

  5. Voer de volgende PowerShell-opdrachten voor het compileren van het MOF-metaconfiguratie document (Zie voor meer informatie over het compileren van DSC-configuraties DSC-configuraties:Run the following PowerShell commands to compile the metaconfiguration MOF document (for information about compiling DSC configurations, see DSC Configurations:

    . .\PullClientBootstrap.ps1
    PullClientBootstrap
    
  6. Hiermee maakt u een localhost.meta.mof bestand in een nieuwe map met de naam PullClientBootstrap.This will create a localhost.meta.mof file in a new folder named PullClientBootstrap. Wijzig de naam en dat het bestand verplaatsen naar de juiste locatie op de VHD als MetaConfig.mof met behulp van de Item verplaatsen cmdlet.Rename and move that file into the proper location on the VHD as MetaConfig.mof by using the Move-Item cmdlet.

    Move-Item -Path C:\DSCTest\PullClientBootstrap\localhost.meta.mof -Destination E:\Windows\Sytem32\Configuration\MetaConfig.mof
    
  7. Ontkoppelen van de VHD door het aanroepen van de Dismount-VHD cmdlet.Dismount the VHD by calling the Dismount-VHD cmdlet. Bijvoorbeeld:For example:

    Dismount-VHD -Path C:\users\public\documents\vhd\Srv16.vhd
    
  8. Een virtuele machine maken met behulp van de VHD waar u het document DSC MOF hebt geïnstalleerd.Create a VM by using the VHD where you installed the DSC MOF document. Na de eerste boot-up- en installatie van besturingssysteem DSC klikt, wordt de configuratie van de pull-server en IIS wordt geïnstalleerd.After intial boot-up and operating system installation, DSC will pull the configuration from the pull server, and IIS will be installed. U kunt dit controleren door het aanroepen van de Get-WindowsFeature cmdlet.You can verify this by calling the Get-WindowsFeature cmdlet.

DSC tijdens het opstarten uitschakelenDisable DSC at boot time

Standaard wordt de waarde van de HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DSCAutomationHostEnabled sleutel is ingesteld op 2, waarmee een DSC-configuratie voor het uitvoeren als de computer in behandeling of huidige is status.By default, the value of the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DSCAutomationHostEnabled key is set to 2, which allows a DSC configuration to run if the computer is in pending or current state. Als u niet dat een configuratie op de eerste boot-up wordt uitgevoerd wilt, moet u de waarde van deze sleutel dus ingesteld op 0:If you do not want a configuration to run at initial boot-up, you need so set the value of this key to 0:

  1. De VHD koppelen door het aanroepen van de Mount-VHD cmdlet.Mount the VHD by calling the Mount-VHD cmdlet. Bijvoorbeeld:For example:

    Mount-VHD -Path C:\users\public\documents\vhd\Srv16.vhd
    
  2. Laden van het register HKLM\Software subsleutels van de VHD door het aanroepen van reg load.Load the registry HKLM\Software subkey from the VHD by calling reg load.

    reg load HKLM\Vhd E:\Windows\System32\Config\Software`
    
  3. Navigeer naar de HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\* met behulp van de PowerShell-registerprovider.Navigate to the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\* by using the PowerShell Registry provider.

    Set-Location HKLM:\Software\Microsoft\Windows\CurrentVersion\Policies`
    
  4. Wijzig de waarde van DSCAutomationHostEnabled op 0.Change the value of DSCAutomationHostEnabled to 0.

    Set-ItemProperty -Path . -Name DSCAutomationHostEnabled -Value 0
    
  5. Het register laden door het uitvoeren van de volgende opdrachten:Unload the registry by running the following commands:

    [gc]::Collect()
    reg unload HKLM\Vhd
    

Zie ookSee Also