Een pull-client instellen met behulp van configuratienamen in PowerShell 5.0 en hoger

Van toepassing op: Windows PowerShell 5.0

Belangrijk

De pull-server (Windows Feature DSC-Service) is een ondersteund onderdeel van Windows Server, maar er zijn geen plannen om nieuwe functies of mogelijkheden aan te bieden. We willen graag dat u weet dat een nieuwere versie van DSC nu algemeen beschikbaar is, beheerd door een functie van Azure Policy met de naam gastconfiguratie. De gastconfiguratieservice combineert functies van DSC-extensie, Azure Automation State Configuration en de meest gevraagde functies uit feedback van klanten. Gastconfiguratie omvat ook ondersteuning voor hybride machines via servers met Arc.

Voordat u een pull-client instelt, moet u een pull-server instellen. Hoewel deze bestelling niet vereist is, helpt het bij het oplossen van problemen en zorgt u ervoor dat de registratie is geslaagd. Als u een pull-server wilt instellen, kunt u de volgende handleidingen gebruiken:

Elk doelknooppunt kan worden geconfigureerd om configuraties en resources te downloaden en zelfs de status ervan te rapporteren. In de onderstaande secties ziet u hoe u een pull-client configureert met een SMB-share of HTTP DSC-pullserver. Wanneer de LCM van het knooppunt wordt vernieuwd, neemt het contact op met de geconfigureerde locatie om toegewezen configuraties te downloaden. Als er geen vereiste resources op het knooppunt bestaan, worden deze automatisch gedownload vanaf de geconfigureerde locatie. Als het knooppunt is geconfigureerd met een rapportserver, wordt de status van de bewerking gerapporteerd.

De LCM van de pull-client configureren

Als u een van de onderstaande voorbeelden uitvoert, wordt er een nieuwe uitvoermap gemaakt met de naam PullClientConfigName en wordt daar een MOF-bestand met metaconfiguratie geplaatst. In dit geval krijgt het MOF-bestand van de metaconfiguratie de naam localhost.meta.mof.

Als u de configuratie wilt toepassen, roept u de cmdlet Set-DscLocalConfigurationManager aan, waarbij het pad is ingesteld op de locatie van het metaconfiguration MOF-bestand. Bijvoorbeeld:

Set-DSCLocalConfigurationManager –ComputerName localhost –Path .\PullClientConfigName –Verbose.

Configuratienaam

In de onderstaande voorbeelden wordt de eigenschap ConfigurationName van de LCM ingesteld op de naam van een eerder gecompileerde configuratie die voor dit doel is gemaakt. De ConfigurationName is wat de LCM gebruikt om de juiste configuratie op de pull-server te vinden. Het configuratie-MOF-bestand op de pull-server moet de naam <ConfigurationName>.mofhebben, in dit geval 'ClientConfig.mof'. Zie Configuraties publiceren naar een pull-server (v4/v5) voor meer informatie.

Een pull-client instellen om configuraties te downloaden

Elke client moet worden geconfigureerd in de pull-modus en de URL van de pull-server krijgen waar de configuratie wordt opgeslagen. Hiervoor moet u de Local Configuration Manager (LCM) configureren met de benodigde informatie. Als u de LCM wilt configureren, maakt u een speciaal type configuratie, dat is voorzien van het kenmerk DSCLocalConfigurationManager . Zie De lokale Configuration Manager configureren voor meer informatie over het configureren van de LCM.

Met het volgende script configureert u de LCM om configuraties op te halen van een server met de naam CONTOSO-PullSrv.

  • In het script definieert het blok ConfigurationRepositoryWeb de pull-server. De eigenschap ServerURL geeft het eindpunt voor de pull-server op.

  • De eigenschap RegistrationKey is een gedeelde sleutel tussen alle clientknooppunten voor een pull-server en die pull-server. Dezelfde waarde wordt opgeslagen in een bestand op de pull-server.

    Notitie

    Registratiesleutels werken alleen met pull-webservers . U moet nog steeds ConfigurationID gebruiken met een SMB-pull-server . >Zie Een pull-client instellen met behulp van configuratie-id voor meer informatie over het configureren van een pull-server met behulp vanConfigurationID

  • De eigenschap ConfigurationNames is een matrix die de namen opgeeft van de configuraties die zijn bedoeld voor het clientknooppunt. >Opmerking: Als u meer dan één waarde opgeeft in ConfigurationNames, moet u ook partialConfiguration-blokken opgeven in uw configuratie. >Zie PowerShell Desired State Configuration gedeeltelijke configuraties voor meer informatie over gedeeltelijke configuraties.

[DSCLocalConfigurationManager()]
configuration PullClientConfigNames
{
    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 = @('ClientConfig')
        }
    }
}
PullClientConfigNames

Een pull-client instellen om resources te downloaden

Als u alleen een ConfigurationRepositoryWeb - of ConfigurationRepositoryShare-blok opgeeft in uw LCM-configuratie (zoals in het vorige voorbeeld), haalt de pull-client resources op van dezelfde locatie waar uw .mof-bestanden worden opgeslagen. U kunt ook verschillende locaties opgeven waar clients resources kunnen downloaden. Als u een resourceserver wilt opgeven, gebruikt u een ResourceRepositoryWeb (voor een web-pull-server) of een ResourceRepositoryShare-blok (voor een SMB-pull-server).

In het volgende voorbeeld ziet u een metaconfiguratie waarmee een client wordt ingesteld voor het downloaden van configuraties van een pull-server en resources van een SMB-share.

[DSCLocalConfigurationManager()]
configuration PullClientConfigNames
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Pull'
            RefreshFrequencyMins = 30
            RebootNodeIfNeeded = $true
        }

        ConfigurationRepositoryWeb CONTOSO-PullSrv
        {
            ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
            RegistrationKey = 'fbc6ef09-ad98-4aad-a062-92b0e0327562'
        }

        ResourceRepositoryShare SMBResources
        {
            SourcePath = '\\SMBPullServer\Resources'
        }
    }
}
PullClientConfigNames

Een pull-client instellen om de status te rapporteren

U kunt één pull-server gebruiken voor configuraties, resources en rapportage. Rapportage is niet standaard geconfigureerd voor clients. Als u een client wilt configureren voor de rapportstatus, moet u een ReportRepositoryWeb-blok maken. In het volgende voorbeeld ziet u een metaconfiguratie waarmee een client wordt ingesteld om configuraties en resources op te halen en rapportagegegevens te verzenden naar één pull-server.

Notitie

Een rapportserver kan geen SMB-share zijn.

[DSCLocalConfigurationManager()]
configuration PullClientConfigNames
{
    Node localhost
    {
        Settings
        {
            RefreshMode = 'Pull'
            RefreshFrequencyMins = 30
            RebootNodeIfNeeded = $true
        }

        ConfigurationRepositoryWeb CONTOSO-PullSrv
        {
            ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
            RegistrationKey = 'fbc6ef09-ad98-4aad-a062-92b0e0327562'
        }

        ReportServerWeb CONTOSO-PullSrv
        {
            ServerURL = 'https://CONTOSO-PullSrv:8080/PSDSCPullServer.svc'
            RegistrationKey = 'fbc6ef09-ad98-4aad-a062-92b0e0327562'
        }
    }
}
PullClientConfigNames

Zie ook