你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

New-AzureRmVmssConfig

创建 VMSS 配置对象。

警告

AzureRM PowerShell 模块已自 2024 年 2 月 29 日起正式弃用。 为了确保持续获得支持和更新,建议用户从 AzureRM 迁移到 Az PowerShell 模块。

尽管 AzureRM 模块仍可运行,但不再受到维护或支持,任何继续使用的行为都由用户自行决定并自行承担风险。 有关过渡到 Az 模块的指导,请参阅我们的迁移资源

语法

New-AzureRmVmssConfig
   [[-Overprovision] <Boolean>]
   [[-Location] <String>]
   [[-Tag] <Hashtable>]
   [[-SkuName] <String>]
   [[-SkuTier] <String>]
   [[-SkuCapacity] <Int32>]
   [[-UpgradePolicyMode] <UpgradeMode>]
   [[-OsProfile] <VirtualMachineScaleSetOSProfile>]
   [[-StorageProfile] <VirtualMachineScaleSetStorageProfile>]
   [[-NetworkInterfaceConfiguration] <VirtualMachineScaleSetNetworkConfiguration[]>]
   [[-Extension] <VirtualMachineScaleSetExtension[]>]
   [-SinglePlacementGroup <Boolean>]
   [-ZoneBalance]
   [-PlatformFaultDomainCount <Int32>]
   [-Zone <String[]>]
   [-PlanName <String>]
   [-PlanPublisher <String>]
   [-PlanProduct <String>]
   [-PlanPromotionCode <String>]
   [-RollingUpgradePolicy <RollingUpgradePolicy>]
   [-AutoOSUpgrade]
   [-DisableAutoRollback <Boolean>]
   [-EnableUltraSSD]
   [-HealthProbeId <String>]
   [-BootDiagnostic <BootDiagnostics>]
   [-LicenseType <String>]
   [-Priority <String>]
   [-EvictionPolicy <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmVmssConfig
   [[-Overprovision] <Boolean>]
   [[-Location] <String>]
   [[-Tag] <Hashtable>]
   [[-SkuName] <String>]
   [[-SkuTier] <String>]
   [[-SkuCapacity] <Int32>]
   [[-UpgradePolicyMode] <UpgradeMode>]
   [[-OsProfile] <VirtualMachineScaleSetOSProfile>]
   [[-StorageProfile] <VirtualMachineScaleSetStorageProfile>]
   [[-NetworkInterfaceConfiguration] <VirtualMachineScaleSetNetworkConfiguration[]>]
   [[-Extension] <VirtualMachineScaleSetExtension[]>]
   [-SinglePlacementGroup <Boolean>]
   [-ZoneBalance]
   [-PlatformFaultDomainCount <Int32>]
   [-Zone <String[]>]
   [-PlanName <String>]
   [-PlanPublisher <String>]
   [-PlanProduct <String>]
   [-PlanPromotionCode <String>]
   [-RollingUpgradePolicy <RollingUpgradePolicy>]
   [-AutoOSUpgrade]
   [-DisableAutoRollback <Boolean>]
   [-EnableUltraSSD]
   [-HealthProbeId <String>]
   [-BootDiagnostic <BootDiagnostics>]
   [-LicenseType <String>]
   [-Priority <String>]
   [-EvictionPolicy <String>]
   -IdentityType <ResourceIdentityType>
   [-IdentityId <String[]>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureRmVmssConfig
   [[-Overprovision] <Boolean>]
   [[-Location] <String>]
   [[-Tag] <Hashtable>]
   [[-SkuName] <String>]
   [[-SkuTier] <String>]
   [[-SkuCapacity] <Int32>]
   [[-UpgradePolicyMode] <UpgradeMode>]
   [[-OsProfile] <VirtualMachineScaleSetOSProfile>]
   [[-StorageProfile] <VirtualMachineScaleSetStorageProfile>]
   [[-NetworkInterfaceConfiguration] <VirtualMachineScaleSetNetworkConfiguration[]>]
   [[-Extension] <VirtualMachineScaleSetExtension[]>]
   [-SinglePlacementGroup <Boolean>]
   [-ZoneBalance]
   [-PlatformFaultDomainCount <Int32>]
   [-Zone <String[]>]
   [-PlanName <String>]
   [-PlanPublisher <String>]
   [-PlanProduct <String>]
   [-PlanPromotionCode <String>]
   [-RollingUpgradePolicy <RollingUpgradePolicy>]
   [-AutoOSUpgrade]
   [-DisableAutoRollback <Boolean>]
   [-EnableUltraSSD]
   [-HealthProbeId <String>]
   [-BootDiagnostic <BootDiagnostics>]
   [-LicenseType <String>]
   [-Priority <String>]
   [-EvictionPolicy <String>]
   [-AssignIdentity]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

New-AzureRmVmssConfig cmdlet 创建可配置的本地 Virtual Manager 规模集 (VMSS) 对象。 配置 VMSS 对象需要其他 cmdlet。 这些 cmdlet 包括:

  • Set-AzureRmVmssOsProfile
  • Set-AzureRmVmssStorageProfile
  • Add-AzureRmVmssNetworkInterfaceConfiguration
  • Add-AzureRmVmssExtension

示例

示例 1:创建 VMSS 配置对象

PS C:\> $VMSS = New-AzureRmVmssConfig -Location $Loc -SkuCapacity 2 -SkuName "Standard_A0" -UpgradePolicyMode "Automatic" -NetworkInterfaceConfiguration $NetCfg `
            | Add-AzureRmVmssNetworkInterfaceConfiguration -Name "Test" -Primary $True -IPConfiguration $IPCfg `
            | Set-AzureRmVmssOSProfile -ComputerNamePrefix "Test" -AdminUsername $adminUsername -AdminPassword $AdminPassword `
            | Set-AzureRmVmssStorageProfile -Name "Test" -OsDiskCreateOption "FromImage" -OsDiskCaching "None" `
            -ImageReferenceOffer $ImgRef.Offer -ImageReferenceSku $ImgRef.Skus -ImageReferenceVersion $ImgRef.Version `
            -ImageReferencePublisher $ImgRef.PublisherName -VhdContainer $VHDContainer `
            | Add-AzureRmVmssAdditionalUnattendContent -ComponentName  $AUCComponentName -Content  $AUCContent -PassName  $AUCPassName -SettingName  $AUCSetting `
            | Remove-AzureRmVmssAdditionalUnattendContent -ComponentName  $AUCComponentName;

New-AzureRmVmss -ResourceGroupName $RGName -Name $VMSSName -VirtualMachineScaleSet $VMSS;

此示例创建 VMSS 配置对象。 第一个命令使用 New-AzureRmVmssConfig cmdlet 创建 VMSS 配置对象,并将结果存储在名为$VMSS的变量中。 第二个命令使用 New-AzureRmVmss cmdlet 创建一个 VMSS,该 VMSS 使用在第一个命令中创建的 VMSS 配置对象。

参数

-AssignIdentity

指定虚拟机规模集的系统分配标识。

类型:SwitchParameter
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-AutoOSUpgrade

设置当较新版本的映像可用时,是否应以滚动方式自动将 OS 升级应用于规模集实例。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-BootDiagnostic

指定虚拟机规模集启动诊断配置文件。

类型:BootDiagnostics
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

类型:IAzureContextContainer
别名:AzureRmContext, AzureCredential
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DisableAutoRollback

禁用自动 OS 升级策略的自动回滚

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-EnableUltraSSD

允许在虚拟机规模集上具有一个或多个具有UltraSSD_LRS存储帐户类型的托管数据磁盘。 仅当启用此属性时,才能将存储帐户类型UltraSSD_LRS的托管磁盘添加到 VMSS。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-EvictionPolicy

指定规模集中虚拟机的逐出策略。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Extension

指定 VMSS 的扩展信息对象。 可以使用 Add-AzureRmVmssExtension cmdlet 添加此对象。

类型:VirtualMachineScaleSetExtension[]
Position:10
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-HealthProbeId

指定负载均衡器探测的 ID,用于确定虚拟机规模集中实例的运行状况。 HealthProbeId 采用“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}”的形式。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-IdentityId

指定与虚拟机规模集关联的用户标识列表。 用户标识引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/identities/{identityName}”

类型:String[]
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-IdentityType

指定用于虚拟机规模集的标识类型。 类型“SystemAssignedUserAssigned”包括隐式创建的标识和一组用户分配的标识。 类型“None”将从虚拟机规模集中删除任何标识。 此参数的可接受值为:

  • SystemAssigned
  • UserAssigned
  • SystemAssignedUserAssigned
类型:Nullable<T>[ResourceIdentityType]
接受的值:SystemAssigned, UserAssigned, SystemAssignedUserAssigned, None
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-LicenseType

指定用于自带许可证方案的许可证类型。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Location

指定创建 VMSS 的 Azure 位置。

类型:String
Position:1
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-NetworkInterfaceConfiguration

指定包含 VMSS 配置网络属性的网络配置文件对象。 可以使用 Add-AzureRmVmssNetworkInterfaceConfiguration cmdlet 添加此对象。

类型:VirtualMachineScaleSetNetworkConfiguration[]
Position:9
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-OsProfile

指定包含 VMSS 配置的操作系统属性的操作系统配置文件对象。 可以使用 Set-AzureRmVmssOsProfile cmdlet 来设置此对象。

类型:VirtualMachineScaleSetOSProfile
Position:7
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Overprovision

指示 cmdlet 是否过度预配 VMSS。

类型:Nullable<T>[Boolean]
Position:0
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-PlanName

指定计划名称。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-PlanProduct

指定计划产品。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-PlanPromotionCode

指定计划升级代码。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-PlanPublisher

指定计划发布者。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-PlatformFaultDomainCount

每个放置组的容错域计数。

类型:Int32
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Priority

指定规模集中虚拟机的优先级。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-RollingUpgradePolicy

指定滚动升级策略。

类型:RollingUpgradePolicy
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-SinglePlacementGroup

指定单个放置组。

类型:Nullable<T>[Boolean]
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-SkuCapacity

指定 VMSS 中的实例数。

类型:Int32
Position:5
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-SkuName

指定 VMSS 的所有实例的大小。

类型:String
别名:AccountType
Position:3
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-SkuTier

指定 VMSS 的层。 此参数的可接受值为:

  • Standard
  • 基本
类型:String
Position:4
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-StorageProfile

指定包含 VMSS 配置的磁盘属性的存储配置文件对象。 可以使用 Set-AzureRmVmssStorageProfile cmdlet 来设置此对象。

类型:VirtualMachineScaleSetStorageProfile
Position:8
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-Tag

以哈希表的形式进行键值对。 例如:@{key0=“value0”;key1=$null;key2=“value2”}

类型:Hashtable
Position:2
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-UpgradePolicyMode

指定了升级到规模集中虚拟机的模式。 此参数的可接受值为:

  • 自动
  • 手动
类型:Nullable<T>[UpgradeMode]
接受的值:Automatic, Manual, Rolling
Position:6
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Zone

指定虚拟机规模集的区域列表。

类型:String[]
Position:Named
默认值:None
必需:False
接受管道输入:True
接受通配符:False

-ZoneBalance

如果发生区域中断,是否强制甚至跨 x 区域进行虚拟机分发。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输入

Nullable<T>[[System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]

String

Hashtable

Int32

Nullable<T>[[Microsoft.Azure.Management.Compute.Models.UpgradeMode, Microsoft.Azure.Management.Compute, Version=21.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]

VirtualMachineScaleSetOSProfile

VirtualMachineScaleSetStorageProfile

VirtualMachineScaleSetNetworkConfiguration[]

VirtualMachineScaleSetExtension[]

String[]

RollingUpgradePolicy

BootDiagnostics

Nullable<T>[[Microsoft.Azure.Management.Compute.Models.ResourceIdentityType, Microsoft.Azure.Management.Compute, Version=21.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]

输出

PSVirtualMachineScaleSet