PowerShell DSC-tillägg

Anteckning

Innan du aktiverar DSC-tillägget vill vi att du ska veta att en nyare version av DSC nu är allmänt tillgänglig, som hanteras av en funktion i Azure Automange med namnet machine configuration. Datorkonfigurationsfunktionen kombinerar funktioner i Desired State Configuration(DSC) tilläggshanterare, Azure Automation State Configuration och de vanligaste begärda funktionerna från kundfeedback. Datorkonfigurationen omfattar även stöd för hybriddatorer via Arc-aktiverade servrar.

Översikt

PowerShell DSC-tillägget för Windows publiceras och stöds av Microsoft. Tillägget laddar upp och tillämpar en PowerShell DSC-konfiguration på en virtuell Azure-dator. DSC-tillägget anropar PowerShell DSC för att anta den mottagna DSC-konfigurationen på den virtuella datorn. Det här dokumentet beskriver de plattformar, konfigurationer och distributionsalternativ som stöds för DSC-tillägget för virtuella datorer för Windows.

Förutsättningar

Operativsystem

DSC-tillägget stöder följande operativsystem

Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows Server 2012R2, Windows Server 2012, Windows Server 2008 R2 SP1, Windows Client 7/8.1/10

Internetanslutning

DSC-tillägget för Windows kräver att den virtuella måldatorn kan kommunicera med Azure och platsen för konfigurationspaketet (.zip fil) om det lagras på en plats utanför Azure.

Tilläggsschema

Följande JSON visar schemat för inställningsdelen av DSC-tillägget i en Azure Resource Manager-mall.

{
  "type": "Microsoft.Compute/virtualMachines/extensions",
  "name": "Microsoft.Powershell.DSC",
  "apiVersion": "2018-10-01",
  "location": "<location>",
  "properties": {
    "publisher": "Microsoft.Powershell",
    "type": "DSC",
    "typeHandlerVersion": "2.77",
    "autoUpgradeMinorVersion": true,
    "settings": {
        "wmfVersion": "latest",
        "configuration": {
            "url": "http://validURLToConfigLocation",
            "script": "ConfigurationScript.ps1",
            "function": "ConfigurationFunction"
        },
        "configurationArguments": {
            "argument1": "Value1",
            "argument2": "Value2"
        },
        "configurationData": {
            "url": "https://foo.psd1"
        },
        "privacy": {
            "dataCollection": "enable"
        },
        "advancedOptions": {
            "forcePullAndApply": false,
            "downloadMappings": {
             "specificDependencyKey": "https://myCustomDependencyLocation"
            }
        }
    },
    "protectedSettings": {
        "configurationArguments": {
            "parameterOfTypePSCredential1": {
                "userName": "UsernameValue1",
                "password": "PasswordValue1"
            },
            "parameterOfTypePSCredential2": {
                "userName": "UsernameValue2",
                "password": "PasswordValue2"
            }
        },
        "configurationUrlSasToken": "?g!bber1sht0k3n",
        "configurationDataUrlSasToken": "?dataAcC355T0k3N"
    }
  }
}

Egenskapsvärden

Name Värde/exempel Datatyp
apiVersion 2018-10-01 datum
utgivare Microsoft.Powershell.DSC sträng
typ DSC sträng
typeHandlerVersion 2.77 int

Egenskapsvärden för inställningar

Name Datatyp Beskrivning
settings.wmfVersion sträng Anger vilken version av Windows Management Framework som ska installeras på den virtuella datorn. Om du ställer in den här egenskapen på "senaste" installeras den mest uppdaterade versionen av WMF. De enda aktuella möjliga värdena för den här egenskapen är "4.0", "5.0" och "senaste". Dessa möjliga värden är föremål för uppdateringar. Standardvärdet är "senaste".
settings.configuration.url sträng Anger den URL-plats som du vill ladda ned DSC-konfigurationens zip-fil från. Om den angivna URL:en kräver en SAS-token för åtkomst måste du ange egenskapen protectedSettings.configurationUrlSasToken till värdet för din SAS-token. Den här egenskapen krävs om settings.configuration.script och/eller settings.configuration.function har definierats.
settings.configuration.script sträng Anger filnamnet för skriptet som innehåller definitionen av DSC-konfigurationen. Det här skriptet måste finnas i rotmappen för zip-filen som laddats ned från url:en som anges av egenskapen configuration.url. Den här egenskapen krävs om settings.configuration.url och/or settings.configuration.script definieras.
settings.configuration.function sträng Anger namnet på din DSC-konfiguration. Konfigurationen med namnet måste finnas i skriptet som definieras av configuration.script. Den här egenskapen krävs om funktionen settings.configuration.url och/eller settings.configuration.har definierats.
settings.configurationArguments Samling Definierar alla parametrar som du vill skicka till din DSC-konfiguration. Den här egenskapen krypteras inte.
settings.configurationData.url sträng Anger från vilken URL du vill ladda ned konfigurationsdatafilen (.pds1) som ska användas som indata för din DSC-konfiguration. Om den angivna URL:en kräver en SAS-token för åtkomst måste du ange egenskapen protectedSettings.configurationDataUrlSasToken till värdet för din SAS-token.
settings.privacy.dataEnabled sträng Aktiverar eller inaktiverar telemetrisamling. De enda möjliga värdena för den här egenskapen är "Aktivera", "Inaktivera", " eller $null. Om du lämnar den här egenskapen tom eller null aktiveras telemetri
settings.advancedOptions.forcePullAndApply Bool Den här inställningen är utformad för att förbättra upplevelsen av att arbeta med tillägget för att registrera noder med Azure Automation DSC. Om värdet är $trueväntar tillägget på den första körningen av konfigurationen som hämtats från tjänsten innan det returnerar lyckat/misslyckat. Om värdet är inställt på $false refererar statusen som returneras av tillägget endast till om noden har registrerats med Azure Automation State Configuration och nodkonfigurationen körs inte under registreringen.
settings.advancedOptions.downloadMappings Samling Definierar alternativa platser för att ladda ned beroenden som WMF och .NET

Egenskapsvärden för skyddade inställningar

Name Datatyp Beskrivning
protectedSettings.configurationArguments sträng Definierar alla parametrar som du vill skicka till din DSC-konfiguration. Den här egenskapen krypteras.
protectedSettings.configurationUrlSasToken sträng Anger SAS-token för åtkomst till URL:en som definierats av configuration.url. Den här egenskapen krypteras.
protectedSettings.configurationDataUrlSasToken sträng Anger SAS-token för åtkomst till URL:en som definierats av configurationData.url. Den här egenskapen krypteras.

Malldistribution

Azure VM-tillägg kan distribueras med Azure Resource Manager-mallar. Mallar är idealiska när du distribuerar en eller flera virtuella datorer som kräver konfiguration efter distributionen. Ett exempel Resource Manager mall som innehåller DSC-tillägget för Windows finns i Snabbstartsgalleriet i Azure.

Felsökning och support

Felsöka

Data om tillståndet för tilläggsdistributioner kan hämtas från Microsoft Azure-portalen och med hjälp av Azure CLI. Om du vill se distributionstillståndet för tillägg för en viss virtuell dator kör du följande kommando med hjälp av Azure CLI.

az vm extension list --resource-group myResourceGroup --vm-name myVM -o table

Tilläggspaketet laddas ned och distribueras till den här platsen på den virtuella Azure-datorn

C:\Packages\Plugins\{Extension_Name}\{Extension_Version}

Tilläggets statusfil innehåller understatus och slutförd status/felkoder tillsammans med detaljerade felmeddelanden och beskrivningar för varje tilläggskörning.

C:\Packages\Plugins\{Extension_Name}\{Extension_Version}\Status\{0}.Status  -> {0} being the sequence number

Utdataloggar för tillägg loggas i följande katalog:

C:\WindowsAzure\Logs\Plugins\{Extension_Name}\{Extension_Version}

Felkoder och deras betydelser

Felkod Innebörd Möjlig åtgärd
1000 Allmänt fel Meddelandet för det här felet tillhandahålls av det specifika undantaget i tilläggsloggar
52 Installationsfel för tillägg Meddelandet för det här felet tillhandahålls av det specifika undantaget
1002 Wmf-installationsfel Fel vid installation av WMF.
1004 Ogiltigt zip-paket Ogiltig zip ; Det gick inte att packa upp zip-filen
1100 Argumentfel Anger ett problem i indata som tillhandahålls av användaren. Meddelandet för felet tillhandahålls av det specifika undantaget

Support

Om du behöver mer hjälp när som helst i den här artikeln kan du kontakta Azure-experterna på MSDN Azure- och Stack Overflow-forumen. Du kan också ange en Azure Support incident. Gå till Azure Support-webbplatsen och välj Hämta support. Information om hur du använder Azure Support finns i Vanliga frågor och svar om Microsoft Azure Support.