Konfigurera en pull-klient med konfigurationsnamn i PowerShell 5.0 och senare

Gäller för: Windows PowerShell 5.0

Viktigt

Pull Server (Windows Feature DSC-Service) är en komponent som stöds i Windows Server, men det finns inga planer på att erbjuda nya funktioner. Vi vill att du ska veta att en nyare version av DSC nu är allmänt tillgänglig, hanterad av en funktion i Azure Policy med namnet gästkonfiguration. Gästkonfigurationstjänsten kombinerar funktioner i DSC-tillägget, Azure Automation State Configuration och de vanligaste begärda funktionerna från kundfeedback. Gästkonfigurationen omfattar även stöd för hybriddatorer via Arc-aktiverade servrar.

Innan du konfigurerar en pull-klient bör du konfigurera en pull-server. Även om den här ordningen inte krävs hjälper den till med felsökningen och hjälper dig att säkerställa att registreringen lyckades. Om du vill konfigurera en pull-server kan du använda följande guider:

Varje målnod kan konfigureras för att ladda ned konfigurationer, resurser och till och med rapportera dess status. Avsnitten nedan visar hur du konfigurerar en pull-klient med en SMB-resurs eller HTTP DSC-pullserver. När nodens LCM uppdateras kontaktar den den konfigurerade platsen för att ladda ned alla tilldelade konfigurationer. Om det inte finns några nödvändiga resurser på noden laddas de automatiskt ned från den konfigurerade platsen. Om noden har konfigurerats med en rapportserver rapporterar den sedan åtgärdens status.

Anteckning

Det här avsnittet gäller för PowerShell 5.0. Information om hur du konfigurerar en pull-klient i PowerShell 4.0 finns i Konfigurera en pull-klient med konfigurations-ID i PowerShell 4.0

Konfigurera pull-klientens LCM

Om du kör något av exemplen nedan skapas en ny utdatamapp med namnet PullClientConfigName och en MOF-fil för metakonfiguration placeras där. I det här fallet får MOF-filen metakonfiguration namnet localhost.meta.mof.

Om du vill tillämpa konfigurationen anropar du cmdleten Set-DscLocalConfigurationManager med sökvägen inställd på platsen för MOF-filen för metakonfiguration. Exempel:

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

Konfigurationsnamn

Exemplen nedan anger egenskapen ConfigurationName för LCM till namnet på en tidigare kompilerad konfiguration som skapats för detta ändamål. ConfigurationName är vad LCM använder för att hitta rätt konfiguration på pull-servern. MOF-konfigurationsfilen på pull-servern måste ha namnet <ConfigurationName>.mof, i det här fallet "ClientConfig.mof". Mer information finns i Publicera konfigurationer till en pull-server (v4/v5).

Konfigurera en pull-klient för att ladda ned konfigurationer

Varje klient måste konfigureras i pull-läge och med tanke på pull-server-URL:en där dess konfiguration lagras. För att göra detta måste du konfigurera den lokala Configuration Manager (LCM) med nödvändig information. För att konfigurera LCM skapar du en särskild typ av konfiguration, dekorerad med attributet DSCLocalConfigurationManager . Mer information om hur du konfigurerar LCM finns i Konfigurera den lokala Configuration Manager.

Följande skript konfigurerar LCM för att hämta konfigurationer från en server med namnet "CONTOSO-PullSrv".

  • I skriptet definierar ConfigurationRepositoryWeb-blocket pull-servern. Egenskapen ServerURL anger slutpunkten för pull-servern.

  • Egenskapen RegistrationKey är en delad nyckel mellan alla klientnoder för en pull-server och den pull-servern. Samma värde lagras i en fil på pull-servern.

    Anteckning

    Registreringsnycklar fungerar endast med webbhämtningsservrar . Du måste fortfarande använda ConfigurationID med en SMB-hämtningsserver . > Information om hur du konfigurerar en pull-server med ConfigurationID finns i Konfigurera en pull-klient med hjälp av konfigurations-ID

  • Egenskapen ConfigurationNames är en matris som anger namnen på de konfigurationer som är avsedda för klientnoden. >Observera: Om du anger mer än ett värde i ConfigurationNames måste du också ange PartialConfiguration-block i konfigurationen. >Information om partiella konfigurationer finns i PowerShell Desired State Configuration partiella konfigurationer.

[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

Konfigurera en pull-klient för att ladda ned resurser

Om du bara anger ett ConfigurationRepositoryWeb - eller ConfigurationRepositoryShare-block i LCM-konfigurationen (som i föregående exempel) hämtar pull-klienten resurser från samma plats där dina ".mof"-filer lagras. Du kan också ange olika platser där klienter kan ladda ned resurser. Om du vill ange en resursserver använder du antingen en ResourceRepositoryWeb (för en webbhämtningsserver) eller ett ResourceRepositoryShare-block (för en SMB-hämtningsserver).

I följande exempel visas en metakonfiguration som konfigurerar en klient för att ladda ned konfigurationer från en pull-server och resurser från en SMB-resurs.

[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

Konfigurera en pull-klient för att rapportera status

Du kan använda en enda pull-server för konfigurationer, resurser och rapportering. Rapportering är inte konfigurerat för klienter som standard. Om du vill konfigurera en klient att rapportera status måste du skapa ett ReportRepositoryWeb-block . I följande exempel visas en metakonfiguration som konfigurerar en klient för att hämta konfigurationer och resurser och skicka rapporteringsdata till en enda pull-server.

Anteckning

En rapportserver får inte vara en SMB-resurs.

[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

Se även