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 $true vä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.