Add-AzVmssExtension

Fügt der VMSS eine Erweiterung hinzu.

Syntax

Add-AzVmssExtension
   [-VirtualMachineScaleSet] <PSVirtualMachineScaleSet>
   [[-Name] <String>]
   [[-Publisher] <String>]
   [[-Type] <String>]
   [[-TypeHandlerVersion] <String>]
   [[-AutoUpgradeMinorVersion] <Boolean>]
   [[-Setting] <Object>]
   [[-ProtectedSetting] <Object>]
   [-EnableAutomaticUpgrade <Boolean>]
   [-ForceUpdateTag <String>]
   [-ProvisionAfterExtension <String[]>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Beschreibung

Das Add-AzVmssExtension-Cmdlet fügt eine Erweiterung zum Vm Scale Set (VMSS) hinzu.

Beispiele

Beispiel 1: Hinzufügen einer Erweiterung zum VMSS

Add-AzVmssExtension -VirtualMachineScaleSet $VMSS -Name $ExtName -Publisher $Publisher -Type $ExtType -TypeHandlerVersion $ExtVer -AutoUpgradeMinorVersion $True

Mit diesem Befehl wird der VMSS eine Erweiterung hinzugefügt.

Beispiel 2: Hinzufügen einer Erweiterung zu VMSS mit Einstellungen und geschützten Einstellungen

$Settings = @{"fileUris" = "[]"; "commandToExecute" = ""};
$ProtectedSettings = @{"storageAccountName" = $stoname; "storageAccountKey" = $stokey};

Add-AzVmssExtension -VirtualMachineScaleSet $vmss -Name $vmssExtensionName -Publisher $vmssPublisher  `
  -Type $vmssExtensionType -TypeHandlerVersion $ExtVer -AutoUpgradeMinorVersion $True  `
  -Setting $Settings -ProtectedSetting $ProtectedSettings

Beispiel 3: Hinzufügen einer Erweiterung zu VMSS mit Einstellungen und geschützten Einstellungen

$BatchFile = "runbook.sh"
$ResourceGroupName = "HelloRG"
$VMScaleSetName = "HelloVmSS"
$TypeHandlerVersion = 2.1

#Best Practice for securd paramaters.
$protectedSettings = @{
"managedIdentity" = @{ "clientId" = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"};
}

$publicSettings = @{ 
"fileUris"= (,"https://storage.blob.core.windows.net/itfiles/$($BatchFile)");
"commandToExecute"= "sh $($BatchFile)"
}

# Get information about the scale set
$vmss = Get-AzVmss `
            -ResourceGroupName $ResourceGroupName `
            -VMScaleSetName $VMScaleSetName

Add-AzVmssExtension -VirtualMachineScaleSet $vmss `
    -Name "CustomScript" `
    -Publisher "Microsoft.Azure.Extensions" `
    -Type "CustomScript" `
    -TypeHandlerVersion $TypeHandlerVersion `
    -AutoUpgradeMinorVersion $true `
    -Setting $publicSettings `
    -ProtectedSetting $protectedSettings

Update-AzVmss `
    -ResourceGroupName $ResourceGroupName `
    -Name $VMScaleSetName `
    -VirtualMachineScaleSet $vmss

Mit diesem Befehl wird der VMSS eine Erweiterung mit einem Beispiel-Bash-Skript auf einem Blobspeicher hinzugefügt, die URL des Blobspeichers und des ausführbaren Befehls in Den Einstellungen und dem Sicherheitszugriff in geschützten Einstellungen angegeben.

Parameter

-AutoUpgradeMinorVersion

Gibt an, ob die Erweiterungsversion automatisch auf eine neuere Nebenversion aktualisiert werden soll.

Typ:Nullable<T>[Boolean]
Position:5
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DefaultProfile

Die Anmeldeinformationen, Konten, Mandanten und Abonnements, die für die Kommunikation mit Azure verwendet werden.

Typ:IAzureContextContainer
Aliase:AzContext, AzureRmContext, AzureCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-EnableAutomaticUpgrade

Gibt an, ob die Erweiterung automatisch von der Plattform aktualisiert werden soll, wenn eine neuere Version der Erweiterung verfügbar ist.

Typ:Nullable<T>[Boolean]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ForceUpdateTag

Wenn ein Wert bereitgestellt wird und sich vom vorherigen Wert unterscheidet, wird der Erweiterungshandler gezwungen, zu aktualisieren, auch wenn sich die Erweiterungskonfiguration nicht geändert hat.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Name

Gibt den Namen der Erweiterung an, die dieses Cmdlet hinzufügt.

Typ:String
Position:1
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-ProtectedSetting

Gibt die private Konfiguration für die Erweiterung als Zeichenfolge an. Dieses Cmdlet verschlüsselt die private Konfiguration.

Typ:Object
Position:7
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-ProvisionAfterExtension

Sammlung von Erweiterungsnamen, nach denen diese Erweiterung bereitgestellt werden muss.

Typ:String[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Publisher

Gibt den Namen des Erweiterungsherausgebers an. Der Herausgeber stellt einen Namen bereit, wenn der Herausgeber eine Erweiterung registriert. Dies kann das Cmdlet Get-AzVMImagePublisher verwenden, um den Herausgeber abzurufen.

Typ:String
Position:2
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Setting

Gibt die öffentliche Konfiguration als Zeichenfolge für die Erweiterung an. Dieses Cmdlet verschlüsselt keine öffentliche Konfiguration.

Typ:Object
Position:6
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Type

Gibt den Erweiterungstyp an. Sie können das Cmdlet Get-AzVMExtensionImageType verwenden, um den Erweiterungstyp abzurufen.

Typ:String
Position:3
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-TypeHandlerVersion

Gibt die Version der Erweiterung an, die für diesen virtuellen Computer verwendet werden soll. Sie können das Cmdlet Get-AzVMExtensionImage verwenden, um die Version der Erweiterung abzurufen.

Typ:String
Position:4
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-VirtualMachineScaleSet

Geben Sie das VMSS-Objekt an. Sie können das Objekt mithilfe der New-AzVmssConfig erstellen.

Typ:PSVirtualMachineScaleSet
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

PSVirtualMachineScaleSet

String

Nullable<T>[[System.Boolean, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

Object

Ausgaben

PSVirtualMachineScaleSet