PowerShell DSC-tillägg

Kommentar

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. Funktionen för datorkonfiguration kombinerar funktioner i DSC-tilläggshanteraren (Desired State Configuration), Azure Automation State Configuration och de vanligaste 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 implementera 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

Internet-anslutning

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
förläggare Microsoft.Powershell.DSC sträng
type DSC sträng
typeHandlerVersion 2.77 heltal

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 anger den här egenskapen till "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 kan komma att uppdateras. Standardvärdet är "senaste".
settings.configuration.url sträng Anger den URL-plats som DSC-konfigurationens zip-fil ska hämtas 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/or settings.configuration.function har definierats.
settings.configuration.script sträng Anger filnamnet för skriptet som innehåller definitionen av din DSC-konfiguration. Det här skriptet måste finnas i rotmappen för zip-filen som laddats ned från den URL som anges av egenskapen configuration.url. Den här egenskapen krävs om settings.configuration.url och/or settings.configuration.script har definierats.
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/or settings.configuration.defined.
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 den returnerar lyckade/misslyckade. 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 inte körs 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 definieras 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. Du hittar en Resource Manager-exempelmall som innehåller DSC-tillägget för Windows 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äggsloggarna
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 de 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å skapa en Azure-supportincident. Gå till Azure-supportwebbplatsen 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.