Add-AzVmssExtension

Ajoute une extension à VMSS.

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>]

Description

L’applet de commande Add-AzVmssExtension ajoute une extension au groupe de machines virtuelles identiques (VMSS).

Exemples

Exemple 1 : Ajouter une extension à VMSS

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

Cette commande ajoute une extension à VMSS.

Exemple 2 : Ajouter une extension à VMSS avec des paramètres et des paramètres protégés

$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

Exemple 3 : Ajouter une extension à VMSS avec des paramètres et des paramètres protégés

$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

Cette commande ajoute une extension à VMSS avec un exemple de script bash sur un stockage d’objets blob, spécifiez l’URL du stockage d’objets blob et de la commande exécutable dans les paramètres et l’accès de sécurité dans les paramètres protégés.

Paramètres

-AutoUpgradeMinorVersion

Indique si la version de l’extension doit être automatiquement mise à jour vers une version mineure plus récente.

Type:Nullable<T>[Boolean]
Position:5
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

Vous demande une confirmation avant d’exécuter l’applet de commande.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Informations d’identification, compte, locataire et abonnement utilisés pour la communication avec Azure.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableAutomaticUpgrade

Indique si l’extension doit être automatiquement mise à niveau par la plateforme s’il existe une version plus récente de l’extension disponible.

Type:Nullable<T>[Boolean]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ForceUpdateTag

Si une valeur est fournie et est différente de la valeur précédente, le gestionnaire d’extensions est obligé de mettre à jour même si la configuration de l’extension n’a pas changé.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Name

Spécifie le nom de l’extension que cette applet de commande ajoute.

Type:String
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ProtectedSetting

Spécifie la configuration privée de l’extension, sous forme de chaîne. Cette applet de commande chiffre la configuration privée.

Type:Object
Position:7
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ProvisionAfterExtension

Collection de noms d’extensions après lesquels cette extension doit être provisionnée.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Publisher

Spécifie le nom du serveur de publication d’extension. L’éditeur fournit un nom lorsque l’éditeur inscrit une extension. Cela peut utiliser l’applet de commande Get-AzVMImagePublisher pour obtenir l’éditeur.

Type:String
Position:2
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Setting

Spécifie la configuration publique, sous forme de chaîne, pour l’extension. Cette applet de commande ne chiffre pas la configuration publique.

Type:Object
Position:6
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Type

Spécifie le type d’extension. Vous pouvez utiliser l’applet de commande Get-AzVMExtensionImageType pour obtenir le type d’extension.

Type:String
Position:3
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-TypeHandlerVersion

Spécifie la version de l’extension à utiliser pour cette machine virtuelle. Vous pouvez utiliser l’applet de commande Get-AzVMExtensionImage pour obtenir la version de l’extension.

Type:String
Position:4
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-VirtualMachineScaleSet

Spécifiez l’objet VMSS. Vous pouvez utiliser New-AzVmssConfig pour créer l’objet.

Type:PSVirtualMachineScaleSet
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entrées

PSVirtualMachineScaleSet

String

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

Object

Sorties

PSVirtualMachineScaleSet