Condividi tramite


Set-AzureRmVMExtension

Aggiorna le proprietà dell'estensione o aggiunge un'estensione a una macchina virtuale.

Avviso

Il modulo AzureRM PowerShell è stato ufficialmente deprecato a partire dal 29 febbraio 2024. È consigliabile eseguire la migrazione da AzureRM al modulo Az PowerShell per garantire il supporto e gli aggiornamenti continui.

Anche se il modulo AzureRM può ancora funzionare, non è più gestito o supportato, posizionando qualsiasi uso continuo a discrezione e rischio dell'utente. Per indicazioni sulla transizione al modulo Az, vedere le risorse di migrazione.

Sintassi

Set-AzureRmVMExtension
   -Publisher <String>
   -ExtensionType <String>
   [-Settings <Hashtable>]
   [-ProtectedSettings <Hashtable>]
   [-AsJob]
   [-ResourceGroupName] <String>
   [-VMName] <String>
   [-Name <String>]
   [-TypeHandlerVersion <String>]
   [-Location <String>]
   [-DisableAutoUpgradeMinorVersion]
   [-ForceRerun <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-AzureRmVMExtension
   -Publisher <String>
   -ExtensionType <String>
   [-SettingString <String>]
   [-ProtectedSettingString <String>]
   [-AsJob]
   [-ResourceGroupName] <String>
   [-VMName] <String>
   [-Name <String>]
   [-TypeHandlerVersion <String>]
   [-Location <String>]
   [-DisableAutoUpgradeMinorVersion]
   [-ForceRerun <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Descrizione

Il cmdlet Set-AzureRmVMExtension aggiorna le proprietà per le estensioni di macchina virtuale esistenti o aggiunge un'estensione a una macchina virtuale.

Esempio

Esempio 1: Modificare le impostazioni usando tabelle hash

PS C:\> $Settings = @{"fileUris" = "[]"; "commandToExecute" = ""};
PS C:\> $ProtectedSettings = @{"storageAccountName" = $stoname; "storageAccountKey" = $stokey};
PS C:\> Set-AzureRmVMExtension -ResourceGroupName "ResourceGroup11" -Location "West US" -VMName "VirtualMachine22" -Name "ContosoTest" -Publisher "Contoso.Compute" -Type "CustomScriptExtension" -TypeHandlerVersion "1.1" -Settings $Settings -ProtectedSettings $ProtectedSettings;

I primi due comandi usano la sintassi standard di Windows PowerShell per creare tabelle hash e quindi archivia tali tabelle hash nelle variabili $Settings e $ProtectedSettings. Per ulteriori informazioni, digitare Get-Help about_Hash_Tables. Il secondo comando include due valori creati in precedenza e archiviati nelle variabili. Il comando finale modifica un'estensione della macchina virtuale denominata VirtualMachine22 in ResourceGroup11 in base al contenuto di $Settings e $ProtectedSettings. Il comando specifica altre informazioni necessarie che includono il server di pubblicazione e il tipo di estensione.

Esempio 2: Modificare le impostazioni usando stringhe

PS C:\> $SettingsString = '{"fileUris":[],"commandToExecute":""}';
PS C:\> $ProtectedSettingsString = '{"storageAccountName":"' + $stoname + '","storageAccountKey":"' + $stokey + '"}';
PS C:\> Set-AzureRmVMExtension -ResourceGroupName "ResourceGroup11" -Location "West US" -VMName "VirtualMachine22" -Name "CustomScriptExtension" -Publisher "Contoso.Compute" -Type "CustomScriptExtension" -TypeHandlerVersion "1.1" -SettingString $SettingsString -ProtectedSettingString $ProtectedSettingsString ;

I primi due comandi creano stringhe che contengono impostazioni e quindi le archivia nelle variabili $SettingsString e $ProtectedSettingsString. Il comando finale modifica un'estensione della macchina virtuale denominata VirtualMachine22 in ResourceGroup11 in base al contenuto di $SettingsString e $ProtectedSettingsString. Il comando specifica altre informazioni necessarie che includono il server di pubblicazione e il tipo di estensione.

Parametri

-AsJob

Eseguire il cmdlet in background

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Tipo:SwitchParameter
Alias:cf
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-DefaultProfile

Credenziali, account, tenant e sottoscrizione usati per la comunicazione con Azure.

Tipo:IAzureContextContainer
Alias:AzureRmContext, AzureCredential
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-DisableAutoUpgradeMinorVersion

Indica che questo cmdlet impedisce all'agente guest di Azure di aggiornare automaticamente le estensioni a una versione secondaria più recente. Per impostazione predefinita, questo cmdlet consente all'agente guest di aggiornare le estensioni.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-ExtensionType

Specifica il tipo di estensione.

Tipo:String
Alias:Type
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-ForceRerun

Indica che questo cmdlet forza una nuova esecuzione della stessa configurazione dell'estensione nella macchina virtuale senza disinstallare e reinstallare l'estensione. Il valore può essere qualsiasi stringa diversa dal valore corrente. Se forceUpdateTag non viene modificato, gli aggiornamenti alle impostazioni pubbliche o protette vengono comunque applicati dal gestore.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-Location

Specifica il percorso della macchina virtuale.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-Name

Specifica il nome di un'estensione.

Tipo:String
Alias:ExtensionName
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-ProtectedSettings

Specifica la configurazione privata per l'estensione, come tabella hash. Questo cmdlet crittografa la configurazione privata.

Tipo:Hashtable
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-ProtectedSettingString

Specifica la configurazione privata per l'estensione, come stringa. Questo cmdlet crittografa la configurazione privata.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-Publisher

Specifica il nome del server di pubblicazione dell'estensione. Il server di pubblicazione fornisce un nome quando il server di pubblicazione registra un'estensione.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-ResourceGroupName

Specifica il nome del gruppo di risorse della macchina virtuale.

Tipo:String
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-Settings

Specifica la configurazione pubblica per l'estensione, come tabella hash. Questo cmdlet non crittografa la configurazione pubblica.

Tipo:Hashtable
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-SettingString

Specifica la configurazione pubblica per l'estensione, come stringa. Questo cmdlet non crittografa la configurazione pubblica.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-TypeHandlerVersion

Specifica la versione dell'estensione da usare per questa macchina virtuale.

Tipo:String
Alias:HandlerVersion, Version
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-VMName

Specifica il nome di una macchina virtuale. Questo cmdlet modifica le estensioni per la macchina virtuale specificata da questo parametro.

Tipo:String
Alias:ResourceName
Posizione:1
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

Tipo:SwitchParameter
Alias:wi
Posizione:Named
Valore predefinito:False
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Input

String

Hashtable

SwitchParameter

Output

PSAzureOperationResponse