Partager via


Add-AzVmssExtension

Ajoute une extension à VMSS.

Syntaxe

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
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Confirm

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

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DefaultProfile

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

Type:IAzureContextContainer
Alias:AzContext, AzureRmContext, AzureCredential
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques: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
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques: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
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Name

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

Type:String
Position:1
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques: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
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-ProvisionAfterExtension

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

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques: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
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques: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
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques: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
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques: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
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-VirtualMachineScaleSet

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

Type:PSVirtualMachineScaleSet
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques: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
Alias:wi
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

PSVirtualMachineScaleSet

String

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

Object

Sorties

PSVirtualMachineScaleSet