你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Add-AzVmssExtension
将扩展添加到 VMSS。
语法
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>]
说明
Add-AzVmssExtension cmdlet 将扩展添加到虚拟机规模集(VMSS)。
示例
示例 1:向 VMSS 添加扩展
Add-AzVmssExtension -VirtualMachineScaleSet $VMSS -Name $ExtName -Publisher $Publisher -Type $ExtType -TypeHandlerVersion $ExtVer -AutoUpgradeMinorVersion $True
此命令将扩展添加到 VMSS。
示例 2:使用设置和受保护的设置将扩展添加到 VMSS
$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
示例 3:使用设置和受保护的设置将扩展添加到 VMSS
$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
此命令在 Blob 存储上使用示例 bash 脚本将扩展添加到 VMSS,在受保护设置中指定 Blob 存储和可执行命令的 URL 以及安全访问。
参数
-AutoUpgradeMinorVersion
指示扩展版本是否应自动更新到较新的次要版本。
类型: | Nullable<T>[Boolean] |
Position: | 5 |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Confirm
提示你在运行 cmdlet 之前进行确认。
类型: | SwitchParameter |
别名: | cf |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DefaultProfile
用于与 Azure 通信的凭据、帐户、租户和订阅。
类型: | IAzureContextContainer |
别名: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-EnableAutomaticUpgrade
指示如果有较新版本的扩展可用,平台是否应自动升级扩展。
类型: | Nullable<T>[Boolean] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ForceUpdateTag
如果提供值并且与上一个值不同,则即使扩展配置未更改,扩展处理程序也会强制更新。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Name
指定此 cmdlet 添加的扩展的名称。
类型: | String |
Position: | 1 |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-ProtectedSetting
将扩展的专用配置指定为字符串。 此 cmdlet 加密专用配置。
类型: | Object |
Position: | 7 |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-ProvisionAfterExtension
需要预配此扩展的扩展名称的集合。
类型: | String[] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Publisher
指定扩展发布者的名称。 发布者在注册扩展时提供名称。 这可以使用 Get-AzVMImagePublisher cmdlet 获取发布者。
类型: | String |
Position: | 2 |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Setting
将公共配置指定为扩展的字符串。 此 cmdlet 不加密公共配置。
类型: | Object |
Position: | 6 |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-Type
指定扩展类型。 可以使用 Get-AzVMExtensionImageType cmdlet 获取扩展类型。
类型: | String |
Position: | 3 |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-TypeHandlerVersion
指定要用于此虚拟机的扩展版本。 可以使用 Get-AzVMExtensionImage cmdlet 获取扩展的版本。
类型: | String |
Position: | 4 |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-VirtualMachineScaleSet
指定 VMSS 对象。 可以使用 New-AzVmssConfig 创建对象。
类型: | PSVirtualMachineScaleSet |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-WhatIf
显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。
类型: | SwitchParameter |
别名: | wi |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输入
Nullable<T>[[System.Boolean, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]