你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Microsoft.Compute virtualMachineScaleSets 2022-11-01
Bicep 资源定义
可以使用目标操作部署 virtualMachineScaleSets 资源类型:
- 资源组 - 请参阅 资源组部署命令
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
资源格式
若要创建 Microsoft.Compute/virtualMachineScaleSets 资源,请将以下 Bicep 添加到模板。
resource symbolicname 'Microsoft.Compute/virtualMachineScaleSets@2022-11-01' = {
extendedLocation: {
name: 'string'
type: 'string'
}
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
location: 'string'
name: 'string'
plan: {
name: 'string'
product: 'string'
promotionCode: 'string'
publisher: 'string'
}
properties: {
additionalCapabilities: {
hibernationEnabled: bool
ultraSSDEnabled: bool
}
automaticRepairsPolicy: {
enabled: bool
gracePeriod: 'string'
repairAction: 'string'
}
constrainedMaximumCapacity: bool
doNotRunExtensionsOnOverprovisionedVMs: bool
hostGroup: {
id: 'string'
}
orchestrationMode: 'string'
overprovision: bool
platformFaultDomainCount: int
priorityMixPolicy: {
baseRegularPriorityCount: int
regularPriorityPercentageAboveBase: int
}
proximityPlacementGroup: {
id: 'string'
}
scaleInPolicy: {
forceDeletion: bool
rules: [
'string'
]
}
singlePlacementGroup: bool
spotRestorePolicy: {
enabled: bool
restoreTimeout: 'string'
}
upgradePolicy: {
automaticOSUpgradePolicy: {
disableAutomaticRollback: bool
enableAutomaticOSUpgrade: bool
useRollingUpgradePolicy: bool
}
mode: 'string'
rollingUpgradePolicy: {
enableCrossZoneUpgrade: bool
maxBatchInstancePercent: int
maxSurge: bool
maxUnhealthyInstancePercent: int
maxUnhealthyUpgradedInstancePercent: int
pauseTimeBetweenBatches: 'string'
prioritizeUnhealthyInstances: bool
rollbackFailedInstancesOnPolicyBreach: bool
}
}
virtualMachineProfile: {
applicationProfile: {
galleryApplications: [
{
configurationReference: 'string'
enableAutomaticUpgrade: bool
order: int
packageReferenceId: 'string'
tags: 'string'
treatFailureAsDeploymentFailure: bool
}
]
}
billingProfile: {
maxPrice: int
}
capacityReservation: {
capacityReservationGroup: {
id: 'string'
}
}
diagnosticsProfile: {
bootDiagnostics: {
enabled: bool
storageUri: 'string'
}
}
evictionPolicy: 'string'
extensionProfile: {
extensions: [
{
name: 'string'
properties: {
autoUpgradeMinorVersion: bool
enableAutomaticUpgrade: bool
forceUpdateTag: 'string'
protectedSettings: any(Azure.Bicep.Types.Concrete.AnyType)
protectedSettingsFromKeyVault: {
secretUrl: 'string'
sourceVault: {
id: 'string'
}
}
provisionAfterExtensions: [
'string'
]
publisher: 'string'
settings: any(Azure.Bicep.Types.Concrete.AnyType)
suppressFailures: bool
type: 'string'
typeHandlerVersion: 'string'
}
}
]
extensionsTimeBudget: 'string'
}
hardwareProfile: {
vmSizeProperties: {
vCPUsAvailable: int
vCPUsPerCore: int
}
}
licenseType: 'string'
networkProfile: {
healthProbe: {
id: 'string'
}
networkApiVersion: 'string'
networkInterfaceConfigurations: [
{
name: 'string'
properties: {
deleteOption: 'string'
disableTcpStateTracking: bool
dnsSettings: {
dnsServers: [
'string'
]
}
enableAcceleratedNetworking: bool
enableFpga: bool
enableIPForwarding: bool
ipConfigurations: [
{
name: 'string'
properties: {
applicationGatewayBackendAddressPools: [
{
id: 'string'
}
]
applicationSecurityGroups: [
{
id: 'string'
}
]
loadBalancerBackendAddressPools: [
{
id: 'string'
}
]
loadBalancerInboundNatPools: [
{
id: 'string'
}
]
primary: bool
privateIPAddressVersion: 'string'
publicIPAddressConfiguration: {
name: 'string'
properties: {
deleteOption: 'string'
dnsSettings: {
domainNameLabel: 'string'
}
idleTimeoutInMinutes: int
ipTags: [
{
ipTagType: 'string'
tag: 'string'
}
]
publicIPAddressVersion: 'string'
publicIPPrefix: {
id: 'string'
}
}
sku: {
name: 'string'
tier: 'string'
}
}
subnet: {
id: 'string'
}
}
}
]
networkSecurityGroup: {
id: 'string'
}
primary: bool
}
}
]
}
osProfile: {
adminPassword: 'string'
adminUsername: 'string'
allowExtensionOperations: bool
computerNamePrefix: 'string'
customData: 'string'
linuxConfiguration: {
disablePasswordAuthentication: bool
enableVMAgentPlatformUpdates: bool
patchSettings: {
assessmentMode: 'string'
automaticByPlatformSettings: {
rebootSetting: 'string'
}
patchMode: 'string'
}
provisionVMAgent: bool
ssh: {
publicKeys: [
{
keyData: 'string'
path: 'string'
}
]
}
}
requireGuestProvisionSignal: bool
secrets: [
{
sourceVault: {
id: 'string'
}
vaultCertificates: [
{
certificateStore: 'string'
certificateUrl: 'string'
}
]
}
]
windowsConfiguration: {
additionalUnattendContent: [
{
componentName: 'Microsoft-Windows-Shell-Setup'
content: 'string'
passName: 'OobeSystem'
settingName: 'string'
}
]
enableAutomaticUpdates: bool
enableVMAgentPlatformUpdates: bool
patchSettings: {
assessmentMode: 'string'
automaticByPlatformSettings: {
rebootSetting: 'string'
}
enableHotpatching: bool
patchMode: 'string'
}
provisionVMAgent: bool
timeZone: 'string'
winRM: {
listeners: [
{
certificateUrl: 'string'
protocol: 'string'
}
]
}
}
}
priority: 'string'
scheduledEventsProfile: {
osImageNotificationProfile: {
enable: bool
notBeforeTimeout: 'string'
}
terminateNotificationProfile: {
enable: bool
notBeforeTimeout: 'string'
}
}
securityProfile: {
encryptionAtHost: bool
securityType: 'string'
uefiSettings: {
secureBootEnabled: bool
vTpmEnabled: bool
}
}
serviceArtifactReference: {
id: 'string'
}
storageProfile: {
dataDisks: [
{
caching: 'string'
createOption: 'string'
deleteOption: 'string'
diskIOPSReadWrite: int
diskMBpsReadWrite: int
diskSizeGB: int
lun: int
managedDisk: {
diskEncryptionSet: {
id: 'string'
}
securityProfile: {
diskEncryptionSet: {
id: 'string'
}
securityEncryptionType: 'string'
}
storageAccountType: 'string'
}
name: 'string'
writeAcceleratorEnabled: bool
}
]
diskControllerType: 'string'
imageReference: {
communityGalleryImageId: 'string'
id: 'string'
offer: 'string'
publisher: 'string'
sharedGalleryImageId: 'string'
sku: 'string'
version: 'string'
}
osDisk: {
caching: 'string'
createOption: 'string'
deleteOption: 'string'
diffDiskSettings: {
option: 'string'
placement: 'string'
}
diskSizeGB: int
image: {
uri: 'string'
}
managedDisk: {
diskEncryptionSet: {
id: 'string'
}
securityProfile: {
diskEncryptionSet: {
id: 'string'
}
securityEncryptionType: 'string'
}
storageAccountType: 'string'
}
name: 'string'
osType: 'string'
vhdContainers: [
'string'
]
writeAcceleratorEnabled: bool
}
}
userData: 'string'
}
zoneBalance: bool
}
sku: {
capacity: int
name: 'string'
tier: 'string'
}
tags: {
{customized property}: 'string'
}
zones: [
'string'
]
}
属性值
AdditionalCapabilities
名字 | 描述 | 价值 |
---|---|---|
hibernationEnabled | 在 VM 上启用或禁用休眠功能的标志。 | bool |
ultraSSDEnabled | 启用或禁用在 VM 或 VMSS 上具有一个或多个具有UltraSSD_LRS存储帐户类型的托管数据磁盘的功能的标志。 仅当此属性已启用时,才能将存储帐户类型UltraSSD_LRS的托管磁盘添加到虚拟机或虚拟机规模集。 | bool |
AdditionalUnattendContent
名字 | 描述 | 价值 |
---|---|---|
componentName | 组件名称。 目前,唯一允许的值是Microsoft-Windows-Shell-Setup。 | “Microsoft-Windows-Shell-Setup” |
内容 | 指定为指定路径和组件添加到 unattend.xml 文件的 XML 格式化内容。 XML 必须小于 4KB,并且必须包含要插入的设置或功能的根元素。 | 字符串 |
passName | 传递名称。 目前,唯一允许的值是 OobeSystem。 | “OobeSystem” |
settingName | 指定内容应用到的设置的名称。 可能的值包括:FirstLogonCommands 和 AutoLogon。 | “AutoLogon” “FirstLogonCommands” |
ApiEntityReference
名字 | 描述 | 价值 |
---|---|---|
id | /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... 形式的 ARM 资源 ID | 字符串 |
ApplicationProfile
名字 | 描述 | 价值 |
---|---|---|
galleryApplications | 指定应提供给 VM/VMSS 的库应用程序 | VMGalleryApplication[] |
AutomaticOSUpgradePolicy
名字 | 描述 | 价值 |
---|---|---|
disableAutomaticRollback | 是否应禁用 OS 映像回滚功能。 默认值为 false。 | bool |
enableAutomaticOSUpgrade | 指示当较新版本的 OS 映像可用时,是否应以滚动方式自动将 OS 升级应用于规模集实例。 默认值为 false。 如果此选项设置为基于 Windows 的规模集,enableAutomaticUpdates 将自动设置为 false,并且不能设置为 true。 |
bool |
useRollingUpgradePolicy | 指示是否应在自动 OS 升级期间使用滚动升级策略。 默认值为 false。 如果未在 VMSS 上定义任何策略,则自动 OS 升级将回退到默认策略。 | bool |
AutomaticRepairsPolicy
名字 | 描述 | 价值 |
---|---|---|
启用 | 指定是否应在虚拟机规模集上启用自动修复。 默认值为 false。 | bool |
gracePeriod | 由于 VM 上的状态更改,自动修复暂停的时间。 状态更改完成后的宽限时间开始。 这有助于避免过早或意外修复。 持续时间应采用 ISO 8601 格式指定。 允许的最小宽限期为 10 分钟(PT10M),这也是默认值。 允许的最大宽限期为 90 分钟(PT90M)。 | 字符串 |
repairAction | 用于修复规模集中运行不正常的虚拟机的修复操作类型(替换、重启、重置映像)。 默认值将被替换。 | “Reimage” “Replace” “重启” |
BillingProfile
名字 | 描述 | 价值 |
---|---|---|
maxPrice | 指定愿意为 Azure 现成 VM/VMSS 付费的最高价格。 这个价格是美元。 此价格将与 VM 大小的当前 Azure 现成价格进行比较。 此外,价格是在创建/更新 Azure 现成 VM/VMSS 时进行比较的,并且仅当 maxPrice 大于当前 Azure 现成价格时,该操作才会成功。 如果当前 Azure 现成价格超出创建 VM/VMSS 后的最大价格,maxPrice 还将用于逐出 Azure 现成 VM/VMSS。 可能的值包括: - 大于零的任何十进制值。 示例:0.01538 -1 – 指示按需 up-to 的默认价格。 可以将 maxPrice 设置为 -1,以指示出于价格原因不应逐出 Azure Spot VM/VMSS。 此外,如果未提供默认最大价格,则 -1。 最低 API 版本:2019-03-01。 |
int |
BootDiagnostics
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否应在虚拟机上启用启动诊断。 | bool |
storageUri | 用于放置控制台输出和屏幕截图的存储帐户的 URI。 如果在启用启动诊断时未指定 storageUri,则会使用托管存储。 |
字符串 |
CapacityReservationProfile
名字 | 描述 | 价值 |
---|---|---|
capacityReservationGroup | 指定容量预留组资源 ID,该 ID 应用于分配已保留足够容量的虚拟机或规模集 VM 实例。 有关更多详细信息,请参阅 https://aka.ms/CapacityReservation。 | SubResource |
DiagnosticsProfile
名字 | 描述 | 价值 |
---|---|---|
bootDiagnostics | 启动诊断是一项调试功能,可用于查看控制台输出和屏幕截图来诊断 VM 状态。 注意:如果指定 storageUri,请确保存储帐户与 VM 位于同一区域和订阅中。 可以轻松查看控制台日志的输出。 通过 Azure,还可以从虚拟机监控程序查看 VM 的屏幕截图。 |
BootDiagnostics |
DiffDiskSettings
名字 | 描述 | 价值 |
---|---|---|
选择 | 指定操作系统磁盘的临时磁盘设置。 | “Local” |
放置 | 指定操作系统磁盘的临时磁盘放置。 可能的值包括: CacheDisk ResourceDisk 默认值:如果为 VM 大小配置了缓存磁盘,则 请参阅 /azure/virtual-machines/windows/size 和 /azure/virtual-machines/linux/size 上的 Windows VM 的 VM 大小文档,以检查哪些 VM 大小公开缓存磁盘。 |
“CacheDisk” “ResourceDisk” |
DiskEncryptionSetParameters
名字 | 描述 | 价值 |
---|---|---|
id | 资源 ID | 字符串 |
ExtendedLocation
名字 | 描述 | 价值 |
---|---|---|
名字 | 扩展位置的名称。 | 字符串 |
类型 | 扩展位置的类型。 | “EdgeZone” |
ImageReference
名字 | 描述 | 价值 |
---|---|---|
communityGalleryImageId | 为 vm 部署指定社区库映像唯一 ID。 这可以从社区库映像 GET 调用中提取。 | 字符串 |
id | 资源 ID | 字符串 |
提供 | 指定用于创建虚拟机的平台映像或市场映像的产品/服务。 | 字符串 |
发行人 | 映像发布者。 | 字符串 |
sharedGalleryImageId | 为 vm 部署指定共享库映像唯一 ID。 这可以从共享库映像 GET 调用中提取。 | 字符串 |
sku | 映像 SKU。 | 字符串 |
版本 | 指定用于创建虚拟机的平台映像或市场映像的版本。 允许的格式为 Major.Minor.Build 或“latest”。 主要、次要和生成是十进制数。 指定“latest”以在部署时使用可用映像的最新版本。 即使使用“最新”,即使新版本可用,VM 映像也不会在部署后自动更新。 请不要对库映像部署使用字段“version”,库映像应始终使用“id”字段进行部署,若要使用库映像的“latest”版本,只需在“id”字段中设置“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/images/{imageName}”,而不输入版本。 | 字符串 |
KeyVaultSecretReference
名字 | 描述 | 价值 |
---|---|---|
secretUrl | 引用 Key Vault 中的机密的 URL。 | string (必需) |
sourceVault | 包含机密的 Key Vault 的相对 URL。 | SubResource (必需) |
LinuxConfiguration
名字 | 描述 | 价值 |
---|---|---|
disablePasswordAuthentication | 指定是否应禁用密码身份验证。 | bool |
enableVMAgentPlatformUpdates | 指示是否为 Linux 虚拟机启用了 VMAgent 平台更新。 默认值为 false。 | bool |
patchSettings | [预览功能]指定与 Linux 上的 VM 来宾修补相关的设置。 | LinuxPatchSettings |
provisionVMAgent | 指示是否应在虚拟机上预配虚拟机代理。 如果未在请求正文中指定此属性,则默认行为是将其设置为 true。 这将确保 VM 代理安装在 VM 上,以便以后可以向 VM 添加扩展。 |
bool |
ssh | 指定 Linux OS 的 ssh 密钥配置。 | SshConfiguration |
LinuxPatchSettings
名字 | 描述 | 价值 |
---|---|---|
assessmentMode | 指定 IaaS 虚拟机的 VM 来宾修补评估模式。 可能的值包括: ImageDefault - 控制虚拟机上的修补程序评估的时间。 AutomaticByPlatform - 平台将触发定期修补评估。 属性 provisionVMAgent 必须为 true。 |
“AutomaticByPlatform” “ImageDefault” |
automaticByPlatformSettings | 指定 Linux 上的 VM 来宾修补中修补程序模式 AutomaticByPlatform 的其他设置。 | LinuxVMGuestPatchAutomaticByPlatformSettings |
patchMode | 指定 VM 来宾修补到 IaaS 虚拟机的模式,或与将 OrchestrationMode 作为灵活业务流程模式的虚拟机规模集关联的虚拟机。 可能的值包括: ImageDefault - 使用虚拟机的默认修补配置。 AutomaticByPlatform - 虚拟机将由平台自动更新。 属性 provisionVMAgent 必须为 true |
“AutomaticByPlatform” “ImageDefault” |
LinuxVMGuestPatchAutomaticByPlatformSettings
名字 | 描述 | 价值 |
---|---|---|
rebootSetting | 指定所有 AutomaticByPlatform 修补程序安装操作的重新启动设置。 | “Always” “IfRequired” “永不” “未知” |
Microsoft.Compute/virtualMachineScaleSets
名字 | 描述 | 价值 |
---|---|---|
extendedLocation | 虚拟机规模集的扩展位置。 | ExtendedLocation |
身份 | 虚拟机规模集的标识(如果已配置)。 | VirtualMachineScaleSetIdentity |
位置 | 资源位置 | string (必需) |
名字 | 资源名称 | string (必需) |
计划 | 指定有关用于创建虚拟机的市场映像的信息。 此元素仅用于市场映像。 必须先启用映像以编程方式使用映像,然后才能从 API 使用市场映像。 在 Azure 门户中,找到要使用的市场映像,然后单击 想要以编程方式部署,开始使用 ->。 输入任何必需的信息,然后单击“保存 |
计划 |
性能 | 描述虚拟机规模集的属性。 | VirtualMachineScaleSetProperties |
sku | 虚拟机规模集 SKU。 | Sku |
标签 | 资源标记 | 标记名称和值的字典。 请参阅模板 中的 |
区 | 虚拟机规模集区域。 注意:只能在创建规模集时设置可用性区域 | string[] |
OSImageNotificationProfile
名字 | 描述 | 价值 |
---|---|---|
使 | 指定是启用或禁用 OS 映像计划事件。 | bool |
notBeforeTimeout | 虚拟机重新映像或升级其 OS 的时间长度将不得不在事件自动批准(超时)之前批准 OS 映像计划事件。 配置以 ISO 8601 格式指定,该值必须为 15 分钟(PT15M) | 字符串 |
PatchSettings
名字 | 描述 | 价值 |
---|---|---|
assessmentMode | 指定 IaaS 虚拟机的 VM 来宾修补程序评估模式。 可能的值包括: ImageDefault - 控制虚拟机上的修补程序评估的时间。 AutomaticByPlatform - 平台将触发定期修补评估。 属性 provisionVMAgent 必须为 true。 |
“AutomaticByPlatform” “ImageDefault” |
automaticByPlatformSettings | 指定 Windows 上的 VM 来宾修补中修补程序模式 AutomaticByPlatform 的其他设置。 | WindowsVMGuestPatchAutomaticByPlatformSettings |
enableHotpatching | 使客户无需重新启动即可修补其 Azure VM。 对于 enableHotpatching,必须将“provisionVMAgent”设置为 true,并且“patchMode”必须设置为“AutomaticByPlatform”。 | bool |
patchMode | 指定 VM 来宾修补到 IaaS 虚拟机的模式,或与将 OrchestrationMode 作为灵活业务流程模式的虚拟机规模集关联的虚拟机。 可能的值包括: 手动 - 可以控制将修补程序应用到虚拟机。 为此,请在 VM 中手动应用修补程序。 在此模式下,自动更新处于禁用状态;属性 WindowsConfiguration.enableAutomaticUpdates 必须为 false AutomaticByOS - 虚拟机将由 OS 自动更新。 属性 WindowsConfiguration.enableAutomaticUpdates 必须为 true。 AutomaticByPlatform - 虚拟机将由平台自动更新。 属性 provisionVMAgent 和 WindowsConfiguration.enableAutomaticUpdates 必须为 true |
“AutomaticByOS” “AutomaticByPlatform” “Manual” |
计划
名字 | 描述 | 价值 |
---|---|---|
名字 | 计划 ID。 | 字符串 |
产品 | 指定来自市场的映像的产品。 此值与 imageReference 元素下的 Offer 相同。 | 字符串 |
promotionCode | 促销代码。 | 字符串 |
发行人 | 发布者 ID。 | 字符串 |
PriorityMixPolicy
名字 | 描述 | 价值 |
---|---|---|
baseRegularPriorityCount | 将在横向扩展时在此规模集中创建的常规优先级 VM 的基数。 | int 约束: 最小值 = 0 |
regularPriorityPercentageAboveBase | 达到基本常规优先级计数后,VM 实例的百分比应使用常规优先级。 | int 约束: 最小值 = 0 最大值 = 100 |
PublicIPAddressSku
名字 | 描述 | 价值 |
---|---|---|
名字 | 指定公共 IP SKU 名称 | “Basic” “Standard” |
层 | 指定公共 IP SKU 层 | “Global” “区域” |
ResourceTags
名字 | 描述 | 价值 |
---|
RollingUpgradePolicy
名字 | 描述 | 价值 |
---|---|---|
enableCrossZoneUpgrade | 允许 VMSS 在构造升级批处理时忽略 AZ 边界。 考虑 Update 域和 maxBatchInstancePercent 以确定批大小。 | bool |
maxBatchInstancePercent | 一批滚动升级同时升级的总虚拟机实例的最大百分比。 由于这是一个最大值,因此以前的或将来的批中的不正常实例可能会导致批处理中的实例百分比降低,以确保更高的可靠性。 此参数的默认值为 20%。 | int 约束: 最小值 = 5 最大值 = 100 |
maxSurge | 创建新的虚拟机来升级规模集,而不是更新现有虚拟机。 为每个批创建新虚拟机后,将删除现有虚拟机。 | bool |
maxUnhealthyInstancePercent | 规模集中可能同时运行不正常的虚拟机实例的最大百分比,无论是由于升级,还是虚拟机运行状况检查在滚动升级中止之前处于不正常状态。 在启动任何批处理之前,将检查此约束。 此参数的默认值为 20%。 | int 约束: 最小值 = 5 最大值 = 100 |
maxUnhealthyUpgradedInstancePercent | 可发现处于不正常状态的已升级虚拟机实例的最大百分比。 升级每个批处理后,将进行此检查。 如果超过此百分比,滚动更新将中止。 此参数的默认值为 20%。 | int 约束: 最小值 = 0 最大值 = 100 |
pauseTimeBetweenBatches | 完成一批中所有虚拟机的更新和开始下一批之间的等待时间。 持续时间应采用 ISO 8601 格式指定。 默认值为 0 秒(PT0S)。 | 字符串 |
prioritizeUnhealthyInstances | 在任何正常运行的实例之前,升级规模集中的所有不正常实例。 | bool |
rollbackFailedInstancesOnPolicyBreach | 如果违反滚动升级策略,回滚失败实例到以前的模型。 | bool |
ScaleInPolicy
名字 | 描述 | 价值 |
---|---|---|
forceDeletion | 此属性允许指定在虚拟机规模集进行缩减时,是否必须强制删除选择删除的虚拟机。(预览版中的功能) | bool |
规则 | 在虚拟机规模集中进行缩放时要遵循的规则。 可能的值包括: 默认 当虚拟机规模集进行缩放时,如果规模集是区域性规模集,则规模集将首先跨区域均衡。 然后,它将尽可能跨容错域进行均衡。 在每个容错域中,选择删除的虚拟机将是不受横向扩展保护的最新虚拟机。 OldestVM 当虚拟机规模集正在缩减时,将选择不从横向扩展保护的最早虚拟机进行删除。 对于区域虚拟机规模集,规模集将首先跨区域均衡。 在每个区域中,将选择不受保护的最早虚拟机进行删除。 NewestVM 当虚拟机规模集进行缩减时,将选择不受横向缩减保护的最新虚拟机以供删除。 对于区域虚拟机规模集,规模集将首先跨区域均衡。 在每个区域中,将选择不受保护的最新虚拟机进行删除。 |
包含任一项的字符串数组: “Default” “NewestVM” “OldestVM” |
ScheduledEventsProfile
名字 | 描述 | 价值 |
---|---|---|
osImageNotificationProfile | 指定 OS 映像计划事件相关配置。 | OSImageNotificationProfile |
terminateNotificationProfile | 指定终止计划事件相关配置。 | TerminateNotificationProfile |
SecurityProfile
名字 | 描述 | 价值 |
---|---|---|
encryptionAtHost | 用户可以在请求中使用此属性来启用或禁用虚拟机或虚拟机规模集的主机加密。 这将为所有磁盘启用加密,包括主机本身的资源/临时磁盘。 默认值:除非将此属性设置为 true,否则将禁用主机上的加密。 |
bool |
securityType | 指定虚拟机的 SecurityType。 必须将其设置为任何指定值才能启用 UefiSettings。 默认值:除非设置了此属性,否则不会启用 UefiSettings。 |
“ConfidentialVM” “TrustedLaunch” |
uefiSettings | 指定在创建虚拟机时使用的安全启动和 vTPM 等安全设置。 最低 API 版本:2020-12-01 |
UefiSettings |
ServiceArtifactReference
名字 | 描述 | 价值 |
---|---|---|
id | 以 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/gallerys/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} 的形式的服务项目引用 ID | 字符串 |
Sku
名字 | 描述 | 价值 |
---|---|---|
能力 | 指定规模集中的虚拟机数。 | int |
名字 | SKU 名称。 | 字符串 |
层 | 指定规模集中的虚拟机层。 可能的值: 标准 基本 |
字符串 |
SpotRestorePolicy
名字 | 描述 | 价值 |
---|---|---|
启用 | 启用现成Try-Restore 功能,其中将尝试根据容量可用性和定价约束以机会方式还原逐出的 VMSS SPOT 实例 | bool |
restoreTimeout | 超时值表示为 ISO 8601 持续时间,之后平台不会尝试还原 VMSS SPOT 实例 | 字符串 |
SshConfiguration
名字 | 描述 | 价值 |
---|---|---|
publicKeys | 用于通过基于 Linux 的 VM 进行身份验证的 SSH 公钥列表。 | SshPublicKey[] |
SshPublicKey
名字 | 描述 | 价值 |
---|---|---|
keyData | 用于通过 ssh 向 VM 进行身份验证的 SSH 公钥证书。 密钥必须至少为 2048 位且采用 ssh-rsa 格式。 有关创建 ssh 密钥,请参阅 [在 Azure 中为 Linux VM 在 Linux 和 Mac 上创建 SSH 密钥]/azure/virtual-machines/linux/create-ssh-keys-detailed。 |
字符串 |
路径 | 指定存储 ssh 公钥的已创建 VM 上的完整路径。 如果文件已存在,则指定的键将追加到该文件中。 示例:/home/user/.ssh/authorized_keys | 字符串 |
SubResource
名字 | 描述 | 价值 |
---|---|---|
id | 资源 ID | 字符串 |
TerminateNotificationProfile
名字 | 描述 | 价值 |
---|---|---|
使 | 指定是启用或禁用终止计划事件。 | bool |
notBeforeTimeout | 删除虚拟机的可配置时间长度可能需要在事件自动批准(超时)之前批准终止计划事件。 必须以 ISO 8601 格式指定配置,默认值为 5 分钟(PT5M) | 字符串 |
UefiSettings
名字 | 描述 | 价值 |
---|---|---|
secureBootEnabled | 指定是否应在虚拟机上启用安全启动。 最低 API 版本:2020-12-01 |
bool |
vTpmEnabled | 指定是否应在虚拟机上启用 vTPM。 最低 API 版本:2020-12-01 |
bool |
UpgradePolicy
名字 | 描述 | 价值 |
---|---|---|
automaticOSUpgradePolicy | 用于执行自动 OS 升级的配置参数。 | AutomaticOSUpgradePolicy |
模式 | 指定升级到规模集中虚拟机的模式。 可能的值包括: 手动 - 控制对规模集中虚拟机的更新的应用程序。 使用 manualUpgrade 操作执行此操作。 自动 - 规模集中的所有虚拟机同时自动更新。 |
“Automatic” “Manual” “滚动” |
rollingUpgradePolicy | 执行滚动升级时使用的配置参数。 | RollingUpgradePolicy |
UserAssignedIdentities
名字 | 描述 | 价值 |
---|
UserAssignedIdentitiesValue
名字 | 描述 | 价值 |
---|
VaultCertificate
名字 | 描述 | 价值 |
---|---|---|
certificateStore | 对于 Windows VM,指定应向其添加证书的虚拟机上的证书存储。 指定的证书存储隐式位于 LocalMachine 帐户中。 对于 Linux VM,证书文件位于 /var/lib/waagent 目录下,文件名为 X509 证书文件 <大写Thumbprint>.crt,<用于私钥的 uppercaseThumbprint>.prv。 这两个文件都是 .pem 格式的。 |
字符串 |
certificateUrl | 这是已作为机密上传到 Key Vault 的证书的 URL。 若要将机密添加到 Key Vault,请参阅 向密钥保管库添加密钥或机密。 在这种情况下,证书必须是以下 JSON 对象的 Base64 编码,该对象在 UTF-8 中编码: { “data”:“<Base64 编码的证书>”, “dataType”:“pfx”, “password”:“<pfx-file-password>” } 若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 Windows 的 Azure 密钥库 虚拟机扩展。 |
字符串 |
VaultSecretGroup
名字 | 描述 | 价值 |
---|---|---|
sourceVault | Key Vault 的相对 URL,其中包含 VaultCertificates 中的所有证书。 | SubResource |
vaultCertificates | SourceVault 中包含证书的密钥保管库引用列表。 | VaultCertificate[] |
VirtualHardDisk
名字 | 描述 | 价值 |
---|---|---|
uri | 指定虚拟硬盘的 URI。 | 字符串 |
VirtualMachineScaleSetDataDisk
名字 | 描述 | 价值 |
---|---|---|
缓存 | 指定缓存要求。 可能的值包括: 无 ReadOnly ReadWrite 默认值:标准存储 None。高级存储的 ReadOnly |
“None” “ReadOnly” “ReadWrite” |
createOption | 创建选项。 | “Attach” “Empty” “FromImage”(必需) |
deleteOption | 指定在 VMSS Flex 删除时是否应删除或分离数据磁盘(此功能仅适用于具有灵活 OrchestrationMode 的 VMSS)。 可能的值: 删除 如果使用此值,则删除 VMSS Flex VM 时删除数据磁盘。 分离 如果使用此值,则在删除 VMSS Flex VM 后保留数据磁盘。 默认值设置为 Delete。 |
“Delete” “Detach” |
diskIOPSReadWrite | 指定托管磁盘的 Read-Write IOPS。 仅当 StorageAccountType UltraSSD_LRS时才应使用。 如果未指定,则会根据 diskSizeGB 分配默认值。 | int |
diskMBpsReadWrite | 指定托管磁盘的带宽(以 MB/秒为单位)。 仅当 StorageAccountType UltraSSD_LRS时才应使用。 如果未指定,则会根据 diskSizeGB 分配默认值。 | int |
diskSizeGB | 指定空数据磁盘的大小(以 GB 为单位)。 此元素可用于覆盖虚拟机映像中的磁盘大小。 diskSizeGB 是磁盘的字节数 x 1024^3,该值不能大于 1023 |
int |
伦 | 指定数据磁盘的逻辑单元号。 此值用于标识 VM 中的数据磁盘,因此对于附加到 VM 的每个数据磁盘必须是唯一的。 | int (必需) |
managedDisk | 托管磁盘参数。 | VirtualMachineScaleSetManagedDiskParameters |
名字 | 磁盘名称。 | 字符串 |
writeAcceleratorEnabled | 指定是应在磁盘上启用或禁用 writeAccelerator。 | bool |
VirtualMachineScaleSetExtension
名字 | 描述 | 价值 |
---|---|---|
名字 | 扩展的名称。 | 字符串 |
性能 | 描述虚拟机规模集扩展的属性。 | VirtualMachineScaleSetExtensionProperties |
VirtualMachineScaleSetExtensionProfile
名字 | 描述 | 价值 |
---|---|---|
扩展 | 虚拟机规模集子扩展资源。 | VirtualMachineScaleSetExtension[] |
extensionsTimeBudget | 指定分配所有扩展开始的时间。 持续时间应介于 15 分钟到 120 分钟(含)之间,应采用 ISO 8601 格式指定。 默认值为 90 分钟(PT1H30M)。 最低 API 版本:2020-06-01 |
字符串 |
VirtualMachineScaleSetExtensionProperties
名字 | 描述 | 价值 |
---|---|---|
autoUpgradeMinorVersion | 指示扩展是否应在部署时使用较新的次要版本。 但是,部署后,除非重新部署,否则扩展不会升级次要版本,即使此属性设置为 true 也是如此。 | bool |
enableAutomaticUpgrade | 指示如果有较新版本的扩展可用,平台是否应自动升级扩展。 | bool |
forceUpdateTag | 如果提供值并且与上一个值不同,则即使扩展配置未更改,扩展处理程序也会强制更新。 | 字符串 |
protectedSettings | 该扩展可以包含 protectedSettings 或 protectedSettingsFromKeyVault,或者根本不包含受保护的设置。 | 任何 |
protectedSettingsFromKeyVault | 由引用传递的扩展保护的设置,并从密钥保管库使用 | KeyVaultSecretReference |
provisionAfterExtensions | 需要预配此扩展的扩展名称的集合。 | string[] |
发行人 | 扩展处理程序发布者的名称。 | 字符串 |
设置 | 扩展的 Json 格式公共设置。 | 任何 |
suppressFailures | 指示是否取消来自扩展的故障(不连接到 VM 等操作故障不会取消,而不管此值如何)。 默认值为 false。 | bool |
类型 | 指定扩展的类型;例如“CustomScriptExtension”。 | 字符串 |
typeHandlerVersion | 指定脚本处理程序的版本。 | 字符串 |
VirtualMachineScaleSetHardwareProfile
名字 | 描述 | 价值 |
---|---|---|
vmSizeProperties | 指定用于自定义虚拟机大小的属性。 最低 api 版本:2021-11-01。 有关详细信息,请按照 VM 自定义 中的说明进行操作。 |
VMSizeProperties |
VirtualMachineScaleSetIdentity
名字 | 描述 | 价值 |
---|---|---|
类型 | 用于虚拟机规模集的标识类型。 类型“SystemAssigned,UserAssigned”包括隐式创建的标识和一组用户分配的标识。 类型“None”将从虚拟机规模集中删除任何标识。 | “None” “SystemAssigned” “SystemAssigned,UserAssigned” “UserAssigned” |
userAssignedIdentities | 与虚拟机规模集关联的用户标识列表。 用户标识字典密钥引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 | UserAssignedIdentities |
VirtualMachineScaleSetIPConfiguration
名字 | 描述 | 价值 |
---|---|---|
名字 | IP 配置名称。 | string (必需) |
性能 | 描述虚拟机规模集网络配置文件的 IP 配置属性。 | VirtualMachineScaleSetIPConfigurationProperties |
VirtualMachineScaleSetIPConfigurationProperties
名字 | 描述 | 价值 |
---|---|---|
applicationGatewayBackendAddressPools | 指定对应用程序网关后端地址池的引用数组。 规模集可以引用多个应用程序网关的后端地址池。 多个规模集不能使用相同的应用程序网关。 | SubResource[] |
applicationSecurityGroups | 指定对应用程序安全组的引用数组。 | SubResource[] |
loadBalancerBackendAddressPools | 指定对负载均衡器后端地址池的引用数组。 规模集可以引用一个公共负载均衡器和一个内部负载均衡器的后端地址池。 多个规模集不能使用相同的基本 SKU 负载均衡器。 | SubResource[] |
loadBalancerInboundNatPools | 指定对负载均衡器的入站 Nat 池的引用数组。 规模集可以引用一个公共负载均衡器和一个内部负载均衡器的入站 NAT 池。 多个规模集不能使用相同的基本 SKU 负载均衡器。 | SubResource[] |
主要 | 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 | bool |
privateIPAddressVersion | 从 Api-Version 2017-03-30 开始提供,它表示特定 ipconfiguration 是 IPv4 还是 IPv6。 默认值被视为 IPv4。 可能的值为:“IPv4”和“IPv6”。 | “IPv4” “IPv6” |
publicIPAddressConfiguration | publicIPAddressConfiguration。 | VirtualMachineScaleSetPublicIPAddressConfiguration |
子 | 指定子网的标识符。 | ApiEntityReference |
VirtualMachineScaleSetIpTag
名字 | 描述 | 价值 |
---|---|---|
ipTagType | IP 标记类型。 示例:FirstPartyUsage。 | 字符串 |
标记 | 与公共 IP 关联的 IP 标记。 示例:SQL、存储等。 | 字符串 |
VirtualMachineScaleSetManagedDiskParameters
名字 | 描述 | 价值 |
---|---|---|
diskEncryptionSet | 指定托管磁盘的客户托管磁盘加密集资源 ID。 | DiskEncryptionSetParameters |
securityProfile | 指定托管磁盘的安全配置文件。 | VMDiskSecurityProfile |
storageAccountType | 指定托管磁盘的存储帐户类型。 注意:UltraSSD_LRS只能与数据磁盘一起使用,它不能与 OS 磁盘一起使用。 | “PremiumV2_LRS” “Premium_LRS” “Premium_ZRS” “StandardSSD_LRS” “StandardSSD_ZRS” “Standard_LRS” “UltraSSD_LRS” |
VirtualMachineScaleSetNetworkConfiguration
名字 | 描述 | 价值 |
---|---|---|
名字 | 网络配置名称。 | string (必需) |
性能 | 介绍虚拟机规模集网络配置文件的 IP 配置。 | VirtualMachineScaleSetNetworkConfigurationProperties |
VirtualMachineScaleSetNetworkConfigurationDnsSettings
名字 | 描述 | 价值 |
---|---|---|
dnsServers | DNS 服务器 IP 地址列表 | string[] |
VirtualMachineScaleSetNetworkConfigurationProperties
名字 | 描述 | 价值 |
---|---|---|
deleteOption | 指定删除 VM 时网络接口发生的情况 | “Delete” “Detach” |
disableTcpStateTracking | 指定是否为 tcp 状态跟踪禁用网络接口。 | bool |
dnsSettings | 要应用于网络接口的 dns 设置。 | VirtualMachineScaleSetNetworkConfigurationDnsSettings |
enableAcceleratedNetworking | 指定网络接口是否已启用加速网络。 | bool |
enableFpga | 指定网络接口是否已启用 FPGA 网络。 | bool |
enableIPForwarding | 是否在此 NIC 上启用了 IP 转发。 | bool |
ipConfigurations | 指定网络接口的 IP 配置。 | VirtualMachineScaleSetIPConfiguration[] (必需) |
networkSecurityGroup | 网络安全组。 | SubResource |
主要 | 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 | bool |
VirtualMachineScaleSetNetworkProfile
名字 | 描述 | 价值 |
---|---|---|
healthProbe | 对负载均衡器探测的引用,用于确定虚拟机规模集中实例的运行状况。 引用的格式为:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}”。 | ApiEntityReference |
networkApiVersion | 指定使用业务流程模式“灵活”在虚拟机规模集的网络接口配置中创建网络资源时使用的 Microsoft.Network API 版本 | '2020-11-01' |
networkInterfaceConfigurations | 网络配置列表。 | VirtualMachineScaleSetNetworkConfiguration[] |
VirtualMachineScaleSetOSDisk
名字 | 描述 | 价值 |
---|---|---|
缓存 | 指定缓存要求。 可能的值包括: 无 ReadOnly ReadWrite 默认值:标准存储 None。高级存储的 ReadOnly |
“None” “ReadOnly” “ReadWrite” |
createOption | 指定应如何创建规模集中的虚拟机。 唯一允许的值是:FromImage \u2013 使用映像创建虚拟机时使用此值。 如果使用平台映像,则还使用上述 imageReference 元素。 如果使用市场映像,则还会使用前面所述的计划元素。 |
“Attach” “Empty” “FromImage”(必需) |
deleteOption | 指定在 VMSS Flex 删除时是否应删除或分离 OS 磁盘(此功能仅适用于具有灵活 OrchestrationMode 的 VMSS)。 可能的值: 删除 如果使用此值,则删除 VMSS Flex VM 时会删除 OS 磁盘。 分离 如果使用此值,则会在删除 VMSS Flex VM 后保留 OS 磁盘。 默认值设置为 Delete。 对于临时 OS 磁盘,默认值设置为 删除。 用户无法更改临时 OS 磁盘的删除选项。 |
“Delete” “Detach” |
diffDiskSettings | 指定虚拟机规模集使用的操作系统磁盘的临时磁盘设置。 | DiffDiskSettings |
diskSizeGB | 指定空数据磁盘的大小(以 GB 为单位)。 此元素可用于覆盖虚拟机映像中的磁盘大小。 diskSizeGB 是磁盘的字节数 x 1024^3,该值不能大于 1023 |
int |
图像 | 指定要基于规模集的非托管用户映像的信息。 | VirtualHardDisk |
managedDisk | 托管磁盘参数。 | VirtualMachineScaleSetManagedDiskParameters |
名字 | 磁盘名称。 | 字符串 |
osType | 此属性允许指定从用户映像或专用 VHD 创建 VM 时磁盘中包含的 OS 类型。 可能的值包括: Windows Linux |
“Linux” “Windows” |
vhdContainers | 指定用于存储规模集操作系统磁盘的容器 URL。 | string[] |
writeAcceleratorEnabled | 指定是应在磁盘上启用或禁用 writeAccelerator。 | bool |
VirtualMachineScaleSetOSProfile
名字 | 描述 | 价值 |
---|---|---|
adminPassword | 指定管理员帐户的密码。 最小长度(Windows): 8 个字符 最小长度(Linux): 6 个字符 最大长度(Windows): 123 个字符 最大长度(Linux): 72 个字符 复杂性要求:需要满足以下 4 个条件中的 3 个 字符数较低 具有大写字符 包含数字 具有特殊字符(正则表达式匹配 [\W_]) 不允许的值:“abc@123”、“P@$$w 0rd”、“P@ssw0rd”、“P@ssword123”、“Pa$$word”、“pass@word1”、“Password!”、“Password1”、“Password22”、“iloveyou!” 若要重置密码,请参阅 如何在 Windows VM 中重置远程桌面服务或其登录密码 有关重置根密码,请参阅 使用 VMAccess 扩展 管理用户、SSH 并检查或修复 Azure Linux VM 上的磁盘 |
字符串 约束: 敏感值。 以安全参数的形式传入。 |
adminUsername | 指定管理员帐户的名称。 仅限 Windows 的限制: 不能以“.” 结尾。 不允许的值:“administrator”、“admin”、“user”、“user1”、“test”、“user2”、“test1”、“user3”、“admin1”、“1”, “123”、“a”、“actuser”、“adm”、“admin2”、“aspnet”、“backup”、“console”、“david”、“guest”、“john”、“owner”、“root”、“server”、“sql”、“support”、“support_388945a0”、“sys”、“test2”、“test3”、“user4”、“user5”。 最小长度(Linux): 1 个字符 最大长度(Linux): 64 个字符 最大长度(Windows): 20 个字符 |
字符串 |
allowExtensionOperations | 指定是否应在虚拟机规模集上允许扩展操作。 仅当虚拟机规模集上没有扩展时,此选项才可设置为 False。 |
bool |
computerNamePrefix | 指定规模集中所有虚拟机的计算机名称前缀。 计算机名称前缀长度必须为 1 到 15 个字符。 | 字符串 |
customData | 指定自定义数据的 base-64 编码字符串。 base-64 编码字符串将解码为作为虚拟机上的文件保存的二进制数组。 二进制数组的最大长度为 65535 字节。 有关为 VM 使用 cloud-init,请参阅 使用 cloud-init 在创建期间自定义 Linux VM |
字符串 |
linuxConfiguration | 指定虚拟机上的 Linux 操作系统设置。 有关受支持的 Linux 分发版的列表,请参阅 Azure-Endorsed 分发版上的 Linux。 |
LinuxConfiguration |
requireGuestProvisionSignal | 必须设置为 True 或省略的可选属性。 | bool |
秘密 | 指定应在规模集中的虚拟机上安装的证书集。 若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 Windows 的 Azure 密钥库 虚拟机扩展。 | VaultSecretGroup[] |
windowsConfiguration | 指定虚拟机上的 Windows 操作系统设置。 | WindowsConfiguration |
VirtualMachineScaleSetProperties
名字 | 描述 | 价值 |
---|---|---|
additionalCapabilities | 指定在虚拟机规模集中的虚拟机上启用或禁用的其他功能。 例如:虚拟机是否能够支持使用 UltraSSD_LRS 存储帐户类型附加托管数据磁盘。 | AdditionalCapabilities |
automaticRepairsPolicy | 自动修复的策略。 | AutomaticRepairsPolicy |
constrainedMaximumCapacity | 必须设置为 True 或省略的可选属性。 | bool |
doNotRunExtensionsOnOverprovisionedVMs | 启用过度预配后,仅在请求的 VM 数量上启动扩展,这些 VM 最终会保留。 因此,此属性将确保扩展不会在额外的过度预配的 VM 上运行。 | bool |
hostGroup | 指定虚拟机规模集所在的专用主机组的信息。 最低 API 版本:2020-06-01。 |
SubResource |
orchestrationMode | 指定虚拟机规模集的业务流程模式。 | “灵活” “Uniform” |
overprovision | 指定是否应过度预配虚拟机规模集。 | bool |
platformFaultDomainCount | 每个放置组的容错域计数。 | int |
priorityMixPolicy | 指定用于在同一 VMSS Flex 实例中混合现成和常规优先级 VM 的所需目标。 | PriorityMixPolicy |
proximityPlacementGroup | 指定应向其分配虚拟机规模集的邻近放置组的相关信息。 最低 api 版本:2018-04-01。 |
SubResource |
scaleInPolicy | 指定在虚拟机规模集中的虚拟机中缩放时应用的策略。 | ScaleInPolicy |
singlePlacementGroup | 如果为 true,则规模集限制为单个放置组,最大大小为 100 个虚拟机。 注意:如果 singlePlacementGroup 为 true,则可能会将其修改为 false。 但是,如果 singlePlacementGroup 为 false,则可能不会将其修改为 true。 | bool |
spotRestorePolicy | 指定虚拟机规模集的现成还原属性。 | SpotRestorePolicy |
upgradePolicy | 升级策略。 | UpgradePolicy |
virtualMachineProfile | 虚拟机配置文件。 | VirtualMachineScaleSetVMProfile |
zoneBalance | 如果发生区域中断,是否强制甚至跨 x 区域进行虚拟机分发。 仅当规模集的区域属性包含多个区域时,才能设置 zoneBalance 属性。 如果没有区域或仅指定一个区域,则不应设置 zoneBalance 属性。 | bool |
VirtualMachineScaleSetPublicIPAddressConfiguration
名字 | 描述 | 价值 |
---|---|---|
名字 | publicIP 地址配置名称。 | string (必需) |
性能 | 介绍虚拟机规模集 IP 配置的公共 IPAddress 配置 | VirtualMachineScaleSetPublicIPAddressConfigurationProperties |
sku | 描述公共 IP Sku。 只能将 OrchestrationMode 设置为灵活。 | PublicIPAddressSku |
VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings
名字 | 描述 | 价值 |
---|---|---|
domainNameLabel | 域名标签。域名标签和 vm 索引的串联将是将创建的 PublicIPAddress 资源的域名标签 | string (必需) |
VirtualMachineScaleSetPublicIPAddressConfigurationProperties
名字 | 描述 | 价值 |
---|---|---|
deleteOption | 指定删除 VM 时公共 IP 会发生什么情况 | “Delete” “Detach” |
dnsSettings | 要应用于 publicIP 地址的 dns 设置。 | VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings |
idleTimeoutInMinutes | 公共 IP 地址的空闲超时。 | int |
ipTags | 与公共 IP 地址关联的 IP 标记列表。 | VirtualMachineScaleSetIpTag[] |
publicIPAddressVersion | 从 Api-Version 2019-07-01 开始提供,它表示特定 ipconfiguration 是 IPv4 还是 IPv6。 默认值被视为 IPv4。 可能的值为:“IPv4”和“IPv6”。 | “IPv4” “IPv6” |
publicIPPrefix | 要从中分配 publicIP 地址的 PublicIPPrefix。 | SubResource |
VirtualMachineScaleSetStorageProfile
名字 | 描述 | 价值 |
---|---|---|
dataDisks | 指定用于向规模集中的虚拟机添加数据磁盘的参数。 有关磁盘的详细信息,请参阅 关于 Azure 虚拟机的磁盘和 VHD。 |
VirtualMachineScaleSetDataDisk[] |
diskControllerType | 字符串 | |
imageReference | 指定要使用的图像的信息。 可以指定有关平台映像、市场映像或虚拟机映像的信息。 若要使用平台映像、市场映像或虚拟机映像,但不在其他创建操作中使用,则需要此元素。 | ImageReference |
osDisk | 指定有关规模集中虚拟机使用的操作系统磁盘的信息。 有关磁盘的详细信息,请参阅 关于 Azure 虚拟机的磁盘和 VHD。 |
VirtualMachineScaleSetOSDisk |
VirtualMachineScaleSetVMProfile
名字 | 描述 | 价值 |
---|---|---|
applicationProfile | 指定应提供给 VM/VMSS 的库应用程序 | ApplicationProfile |
billingProfile | 指定 Azure 现成 VMSS 的计费相关详细信息。 最低 API 版本:2019-03-01。 |
BillingProfile |
capacityReservation | 指定规模集的容量预留相关详细信息。 最低 API 版本:2021-04-01。 |
CapacityReservationProfile |
diagnosticsProfile | 指定启动诊断设置状态。 最低 API 版本:2015-06-15。 |
DiagnosticsProfile |
evictionPolicy | 指定 Azure 现成虚拟机和 Azure Spot 规模集的逐出策略。 对于 Azure 现成虚拟机,支持“解除分配”和“删除”,最低 API 版本为 2019-03-01。 对于 Azure Spot 规模集,支持“Deallocate”和“Delete”,最低 API 版本为 2017-10-30-preview。 |
“Deallocate” “Delete” |
extensionProfile | 指定规模集中虚拟机上安装的扩展的设置集合。 | VirtualMachineScaleSetExtensionProfile |
hardwareProfile | 指定规模集的硬件配置文件相关详细信息。 最低 api 版本:2021-11-01。 |
VirtualMachineScaleSetHardwareProfile |
licenseType | 指定正在使用的映像或磁盘在本地获得许可。 Windows Server 操作系统的可能值为: Windows_Client Windows_Server Linux Server 操作系统的可能值为: RHEL_BYOS(适用于 RHEL) SLES_BYOS(对于 SUSE) 有关详细信息,请参阅 Windows Server 的 Azure 混合使用权益 Linux Server 的 Azure 混合使用权益 最低 API 版本:2015-06-15 |
字符串 |
networkProfile | 指定规模集中虚拟机网络接口的属性。 | VirtualMachineScaleSetNetworkProfile |
osProfile | 指定规模集中虚拟机的操作系统设置。 | VirtualMachineScaleSetOSProfile |
优先权 | 指定规模集中虚拟机的优先级。 最低 API 版本:2017-10-30-preview |
“Low” “Regular” “Spot” |
scheduledEventsProfile | 指定与计划事件相关的配置。 | ScheduledEventsProfile |
securityProfile | 指定规模集中虚拟机的安全相关配置文件设置。 | SecurityProfile |
serviceArtifactReference | 指定使用“latest”映像版本时,用于为规模集中的所有虚拟机设置相同映像版本的服务项目引用 ID。 最低 API 版本:2022-11-01 | ServiceArtifactReference |
storageProfile | 指定虚拟机磁盘的存储设置。 | VirtualMachineScaleSetStorageProfile |
userData | 规模集中虚拟机的 UserData,必须进行 base-64 编码。 客户不应在此处传递任何机密。 最低 API 版本:2021-03-01 |
字符串 |
VMDiskSecurityProfile
名字 | 描述 | 价值 |
---|---|---|
diskEncryptionSet | 指定用于客户托管密钥加密的 ConfidentialVM OS 磁盘和 VMGuest Blob 的托管磁盘的客户托管磁盘加密集资源 ID。 | DiskEncryptionSetParameters |
securityEncryptionType | 指定托管磁盘的 EncryptionType。 它设置为 DiskWithVMGuestState 以加密托管磁盘以及 VMGuestState blob,VMGuestStateOnly 仅加密 VMGuestState blob。 注意:只能为机密 VM 设置它。 |
“DiskWithVMGuestState” “VMGuestStateOnly” |
VMGalleryApplication
名字 | 描述 | 价值 |
---|---|---|
configurationReference | 可选,指定 Azure Blob 的 URI,该 URI 将替换包的默认配置(如果提供) | 字符串 |
enableAutomaticUpgrade | 如果设置为 true,当 PIR/SIG 中提供了新的库应用程序版本时,它将自动更新 VM/VMSS | bool |
次序 | 可选,指定包必须安装的顺序 | int |
packageReferenceId | 指定 /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/applications/{application}/versions/{version} 形式的 GalleryApplicationVersion 资源 ID | string (必需) |
标签 | 可选,指定更多泛型上下文的传递值。 | 字符串 |
treatFailureAsDeploymentFailure | 可选,如果为 true,则 VmApplication 中任何操作的任何失败都会使部署失败 | bool |
VMSizeProperties
名字 | 描述 | 价值 |
---|---|---|
vCPUUsAvailable | 指定可用于 VM 的 vCPU 数。 如果未在请求正文中指定此属性,则默认行为是将其设置为 api 响应中公开的 vCPU 的值,列出区域中 的所有可用虚拟机大小。 |
int |
vCPUUsPerCore | 指定 vCPU 与物理核心比率。 如果未在请求正文中指定此属性,则默认行为设置为 api 响应中公开的 vm 大小的 vCPUUsPerCore 值,列出区域中的所有可用虚拟机大小 将此属性设置为 1 也意味着禁用超线程处理。 |
int |
WindowsConfiguration
名字 | 描述 | 价值 |
---|---|---|
additionalUnattendContent | 指定其他 base-64 编码的 XML 格式信息,这些信息可以包含在 Windows 安装程序使用的 Unattend.xml 文件中。 | AdditionalUnattendContent[] |
enableAutomaticUpdates | 指示是否为 Windows 虚拟机启用自动更新。 默认值为 true。 对于虚拟机规模集,可以更新此属性,更新将对 OS 重新预配生效。 |
bool |
enableVMAgentPlatformUpdates | 指示是否为 Windows 虚拟机启用了 VMAgent 平台更新。 默认值为 false。 | bool |
patchSettings | [预览功能]指定与 Windows 上的 VM 来宾修补相关的设置。 | PatchSettings |
provisionVMAgent | 指示是否应在虚拟机上预配虚拟机代理。 如果未在请求正文中指定此属性,则默认行为是将其设置为 true。 这将确保 VM 代理安装在 VM 上,以便以后可以向 VM 添加扩展。 |
bool |
timeZone | 指定虚拟机的时区。 例如“太平洋标准时间”。 可能的值可以从 TimeZoneInfo.GetSystemTimeZones返回的时区 TimeZoneInfo.Id 值。 |
字符串 |
winRM | 指定 Windows 远程管理侦听器。 这将启用远程 Windows PowerShell。 | WinRMConfiguration |
WindowsVMGuestPatchAutomaticByPlatformSettings
名字 | 描述 | 价值 |
---|---|---|
rebootSetting | 指定所有 AutomaticByPlatform 修补程序安装操作的重新启动设置。 | “Always” “IfRequired” “永不” “未知” |
WinRMConfiguration
名字 | 描述 | 价值 |
---|---|---|
听众 | Windows 远程管理侦听器列表 | WinRMListener[] |
WinRMListener
名字 | 描述 | 价值 |
---|---|---|
certificateUrl | 这是已作为机密上传到 Key Vault 的证书的 URL。 若要将机密添加到 Key Vault,请参阅 向密钥保管库添加密钥或机密。 在这种情况下,证书必须是以下 JSON 对象的 Base64 编码,该对象在 UTF-8 中编码: { “data”:“<Base64 编码的证书>”, “dataType”:“pfx”, “password”:“<pfx-file-password>” } 若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 Windows 的 Azure 密钥库 虚拟机扩展。 |
字符串 |
协议 | 指定 WinRM 侦听器的协议。 可能的值包括: http https |
“Http” “Https” |
快速入门示例
以下快速入门示例部署此资源类型。
Bicep 文件 | 描述 |
---|---|
Azure 游戏开发人员虚拟机规模集 | Azure 游戏开发人员虚拟机规模集包括 Unreal 等授权引擎。 |
部署 5 节点安全群集 | 使用此模板,可以在Standard_D2_v2大小 VMSS 上部署运行 Windows Server 2019 Datacenter 的安全 5 节点 Service Fabric 群集。 |
部署 Nextflow 基因组学群集 | 此模板使用 Jumpbox、n 群集节点、docker 支持和共享存储部署可缩放的 Nextflow 群集。 |
部署支持受信任的启动的 Windows VM 规模集 | 使用此模板,可以使用最新修补版本的 Windows Server 2016、Windows Server 2019 或 Windows Server 2022 Azure Edition 部署支持受信任的启动的 Windows VM 规模集。 这些 VM 位于具有 RDP 连接的 NAT 规则的负载均衡器后面。 如果启用 Secureboot 和 vTPM,则会在 VMSS 上安装来宾证明扩展。 此扩展将通过云执行远程 证明。 |
使用 Windows VM 和自动缩放 部署 VM 规模集 | 使用此模板,可以使用最新修补版本的 Windows 2008-R2-SP1、2012-Datacenter 或 2012-R2-Datacenter 部署简单的 WINDOWS VM 规模集。 这些 VM 位于具有 RDP 连接的 NAT 规则的负载均衡器后面。 它们还集成了自动缩放 |
部署将每个 VM 连接到 Azure 文件共享的 VMSS | 此模板部署 Ubuntu 虚拟机规模集,并使用自定义脚本扩展将每个 VM 连接到 Azure 文件共享 |
使用 Azure 应用程序网关部署 Windows VM 规模集 | 此模板允许部署与 Azure 应用程序网关集成的简单 Windows VM 规模集,并支持最多 1000 个 VM |
使用 Python Bottle 服务器部署 VM 规模集 & 自动缩放 | 在负载均衡器/NAT 后面部署 VM 规模集 & 运行一个简单的 Python Bottle 应用的每个 VM。 使用自动缩放配置的规模集,可根据需要横向扩展 & |
运行 IIS WebApp 的自动缩放的 VM 规模集 | 部署运行 IIS 的 Windows VM 规模集和非常基本的 .NET MVC Web 应用。 VMSS PowerShell DSC 扩展用于执行 IIS 安装和 WebDeploy 包部署。 |
VMSS 灵活业务流程模式快速入门 Linux | 此模板部署一个简单的 VM 规模集,其中包含 Azure 负载均衡器后面的实例。 VM 规模集处于灵活的业务流程模式。 使用 os 参数选择 Linux(Ubuntu)或 Windows(Windows Server Datacenter 2019)部署。 注意:本快速入门模板允许从任何 Internet 地址访问 VM 管理端口(SSH、RDP),并且不应用于生产部署。 |
使用公共 IP 前缀 |
用于部署具有公共 IP 前缀的 VMSS 的模板 |
ARM 模板资源定义
可以使用目标操作部署 virtualMachineScaleSets 资源类型:
- 资源组 - 请参阅 资源组部署命令
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
资源格式
若要创建 Microsoft.Compute/virtualMachineScaleSets 资源,请将以下 JSON 添加到模板。
{
"type": "Microsoft.Compute/virtualMachineScaleSets",
"apiVersion": "2022-11-01",
"name": "string",
"extendedLocation": {
"name": "string",
"type": "string"
},
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"location": "string",
"plan": {
"name": "string",
"product": "string",
"promotionCode": "string",
"publisher": "string"
},
"properties": {
"additionalCapabilities": {
"hibernationEnabled": "bool",
"ultraSSDEnabled": "bool"
},
"automaticRepairsPolicy": {
"enabled": "bool",
"gracePeriod": "string",
"repairAction": "string"
},
"constrainedMaximumCapacity": "bool",
"doNotRunExtensionsOnOverprovisionedVMs": "bool",
"hostGroup": {
"id": "string"
},
"orchestrationMode": "string",
"overprovision": "bool",
"platformFaultDomainCount": "int",
"priorityMixPolicy": {
"baseRegularPriorityCount": "int",
"regularPriorityPercentageAboveBase": "int"
},
"proximityPlacementGroup": {
"id": "string"
},
"scaleInPolicy": {
"forceDeletion": "bool",
"rules": [ "string" ]
},
"singlePlacementGroup": "bool",
"spotRestorePolicy": {
"enabled": "bool",
"restoreTimeout": "string"
},
"upgradePolicy": {
"automaticOSUpgradePolicy": {
"disableAutomaticRollback": "bool",
"enableAutomaticOSUpgrade": "bool",
"useRollingUpgradePolicy": "bool"
},
"mode": "string",
"rollingUpgradePolicy": {
"enableCrossZoneUpgrade": "bool",
"maxBatchInstancePercent": "int",
"maxSurge": "bool",
"maxUnhealthyInstancePercent": "int",
"maxUnhealthyUpgradedInstancePercent": "int",
"pauseTimeBetweenBatches": "string",
"prioritizeUnhealthyInstances": "bool",
"rollbackFailedInstancesOnPolicyBreach": "bool"
}
},
"virtualMachineProfile": {
"applicationProfile": {
"galleryApplications": [
{
"configurationReference": "string",
"enableAutomaticUpgrade": "bool",
"order": "int",
"packageReferenceId": "string",
"tags": "string",
"treatFailureAsDeploymentFailure": "bool"
}
]
},
"billingProfile": {
"maxPrice": "int"
},
"capacityReservation": {
"capacityReservationGroup": {
"id": "string"
}
},
"diagnosticsProfile": {
"bootDiagnostics": {
"enabled": "bool",
"storageUri": "string"
}
},
"evictionPolicy": "string",
"extensionProfile": {
"extensions": [
{
"name": "string",
"properties": {
"autoUpgradeMinorVersion": "bool",
"enableAutomaticUpgrade": "bool",
"forceUpdateTag": "string",
"protectedSettings": {},
"protectedSettingsFromKeyVault": {
"secretUrl": "string",
"sourceVault": {
"id": "string"
}
},
"provisionAfterExtensions": [ "string" ],
"publisher": "string",
"settings": {},
"suppressFailures": "bool",
"type": "string",
"typeHandlerVersion": "string"
}
}
],
"extensionsTimeBudget": "string"
},
"hardwareProfile": {
"vmSizeProperties": {
"vCPUsAvailable": "int",
"vCPUsPerCore": "int"
}
},
"licenseType": "string",
"networkProfile": {
"healthProbe": {
"id": "string"
},
"networkApiVersion": "string",
"networkInterfaceConfigurations": [
{
"name": "string",
"properties": {
"deleteOption": "string",
"disableTcpStateTracking": "bool",
"dnsSettings": {
"dnsServers": [ "string" ]
},
"enableAcceleratedNetworking": "bool",
"enableFpga": "bool",
"enableIPForwarding": "bool",
"ipConfigurations": [
{
"name": "string",
"properties": {
"applicationGatewayBackendAddressPools": [
{
"id": "string"
}
],
"applicationSecurityGroups": [
{
"id": "string"
}
],
"loadBalancerBackendAddressPools": [
{
"id": "string"
}
],
"loadBalancerInboundNatPools": [
{
"id": "string"
}
],
"primary": "bool",
"privateIPAddressVersion": "string",
"publicIPAddressConfiguration": {
"name": "string",
"properties": {
"deleteOption": "string",
"dnsSettings": {
"domainNameLabel": "string"
},
"idleTimeoutInMinutes": "int",
"ipTags": [
{
"ipTagType": "string",
"tag": "string"
}
],
"publicIPAddressVersion": "string",
"publicIPPrefix": {
"id": "string"
}
},
"sku": {
"name": "string",
"tier": "string"
}
},
"subnet": {
"id": "string"
}
}
}
],
"networkSecurityGroup": {
"id": "string"
},
"primary": "bool"
}
}
]
},
"osProfile": {
"adminPassword": "string",
"adminUsername": "string",
"allowExtensionOperations": "bool",
"computerNamePrefix": "string",
"customData": "string",
"linuxConfiguration": {
"disablePasswordAuthentication": "bool",
"enableVMAgentPlatformUpdates": "bool",
"patchSettings": {
"assessmentMode": "string",
"automaticByPlatformSettings": {
"rebootSetting": "string"
},
"patchMode": "string"
},
"provisionVMAgent": "bool",
"ssh": {
"publicKeys": [
{
"keyData": "string",
"path": "string"
}
]
}
},
"requireGuestProvisionSignal": "bool",
"secrets": [
{
"sourceVault": {
"id": "string"
},
"vaultCertificates": [
{
"certificateStore": "string",
"certificateUrl": "string"
}
]
}
],
"windowsConfiguration": {
"additionalUnattendContent": [
{
"componentName": "Microsoft-Windows-Shell-Setup",
"content": "string",
"passName": "OobeSystem",
"settingName": "string"
}
],
"enableAutomaticUpdates": "bool",
"enableVMAgentPlatformUpdates": "bool",
"patchSettings": {
"assessmentMode": "string",
"automaticByPlatformSettings": {
"rebootSetting": "string"
},
"enableHotpatching": "bool",
"patchMode": "string"
},
"provisionVMAgent": "bool",
"timeZone": "string",
"winRM": {
"listeners": [
{
"certificateUrl": "string",
"protocol": "string"
}
]
}
}
},
"priority": "string",
"scheduledEventsProfile": {
"osImageNotificationProfile": {
"enable": "bool",
"notBeforeTimeout": "string"
},
"terminateNotificationProfile": {
"enable": "bool",
"notBeforeTimeout": "string"
}
},
"securityProfile": {
"encryptionAtHost": "bool",
"securityType": "string",
"uefiSettings": {
"secureBootEnabled": "bool",
"vTpmEnabled": "bool"
}
},
"serviceArtifactReference": {
"id": "string"
},
"storageProfile": {
"dataDisks": [
{
"caching": "string",
"createOption": "string",
"deleteOption": "string",
"diskIOPSReadWrite": "int",
"diskMBpsReadWrite": "int",
"diskSizeGB": "int",
"lun": "int",
"managedDisk": {
"diskEncryptionSet": {
"id": "string"
},
"securityProfile": {
"diskEncryptionSet": {
"id": "string"
},
"securityEncryptionType": "string"
},
"storageAccountType": "string"
},
"name": "string",
"writeAcceleratorEnabled": "bool"
}
],
"diskControllerType": "string",
"imageReference": {
"communityGalleryImageId": "string",
"id": "string",
"offer": "string",
"publisher": "string",
"sharedGalleryImageId": "string",
"sku": "string",
"version": "string"
},
"osDisk": {
"caching": "string",
"createOption": "string",
"deleteOption": "string",
"diffDiskSettings": {
"option": "string",
"placement": "string"
},
"diskSizeGB": "int",
"image": {
"uri": "string"
},
"managedDisk": {
"diskEncryptionSet": {
"id": "string"
},
"securityProfile": {
"diskEncryptionSet": {
"id": "string"
},
"securityEncryptionType": "string"
},
"storageAccountType": "string"
},
"name": "string",
"osType": "string",
"vhdContainers": [ "string" ],
"writeAcceleratorEnabled": "bool"
}
},
"userData": "string"
},
"zoneBalance": "bool"
},
"sku": {
"capacity": "int",
"name": "string",
"tier": "string"
},
"tags": {
"{customized property}": "string"
},
"zones": [ "string" ]
}
属性值
AdditionalCapabilities
名字 | 描述 | 价值 |
---|---|---|
hibernationEnabled | 在 VM 上启用或禁用休眠功能的标志。 | bool |
ultraSSDEnabled | 启用或禁用在 VM 或 VMSS 上具有一个或多个具有UltraSSD_LRS存储帐户类型的托管数据磁盘的功能的标志。 仅当此属性已启用时,才能将存储帐户类型UltraSSD_LRS的托管磁盘添加到虚拟机或虚拟机规模集。 | bool |
AdditionalUnattendContent
名字 | 描述 | 价值 |
---|---|---|
componentName | 组件名称。 目前,唯一允许的值是Microsoft-Windows-Shell-Setup。 | “Microsoft-Windows-Shell-Setup” |
内容 | 指定为指定路径和组件添加到 unattend.xml 文件的 XML 格式化内容。 XML 必须小于 4KB,并且必须包含要插入的设置或功能的根元素。 | 字符串 |
passName | 传递名称。 目前,唯一允许的值是 OobeSystem。 | “OobeSystem” |
settingName | 指定内容应用到的设置的名称。 可能的值包括:FirstLogonCommands 和 AutoLogon。 | “AutoLogon” “FirstLogonCommands” |
ApiEntityReference
名字 | 描述 | 价值 |
---|---|---|
id | /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... 形式的 ARM 资源 ID | 字符串 |
ApplicationProfile
名字 | 描述 | 价值 |
---|---|---|
galleryApplications | 指定应提供给 VM/VMSS 的库应用程序 | VMGalleryApplication[] |
AutomaticOSUpgradePolicy
名字 | 描述 | 价值 |
---|---|---|
disableAutomaticRollback | 是否应禁用 OS 映像回滚功能。 默认值为 false。 | bool |
enableAutomaticOSUpgrade | 指示当较新版本的 OS 映像可用时,是否应以滚动方式自动将 OS 升级应用于规模集实例。 默认值为 false。 如果此选项设置为基于 Windows 的规模集,enableAutomaticUpdates 将自动设置为 false,并且不能设置为 true。 |
bool |
useRollingUpgradePolicy | 指示是否应在自动 OS 升级期间使用滚动升级策略。 默认值为 false。 如果未在 VMSS 上定义任何策略,则自动 OS 升级将回退到默认策略。 | bool |
AutomaticRepairsPolicy
名字 | 描述 | 价值 |
---|---|---|
启用 | 指定是否应在虚拟机规模集上启用自动修复。 默认值为 false。 | bool |
gracePeriod | 由于 VM 上的状态更改,自动修复暂停的时间。 状态更改完成后的宽限时间开始。 这有助于避免过早或意外修复。 持续时间应采用 ISO 8601 格式指定。 允许的最小宽限期为 10 分钟(PT10M),这也是默认值。 允许的最大宽限期为 90 分钟(PT90M)。 | 字符串 |
repairAction | 用于修复规模集中运行不正常的虚拟机的修复操作类型(替换、重启、重置映像)。 默认值将被替换。 | “Reimage” “Replace” “重启” |
BillingProfile
名字 | 描述 | 价值 |
---|---|---|
maxPrice | 指定愿意为 Azure 现成 VM/VMSS 付费的最高价格。 这个价格是美元。 此价格将与 VM 大小的当前 Azure 现成价格进行比较。 此外,价格是在创建/更新 Azure 现成 VM/VMSS 时进行比较的,并且仅当 maxPrice 大于当前 Azure 现成价格时,该操作才会成功。 如果当前 Azure 现成价格超出创建 VM/VMSS 后的最大价格,maxPrice 还将用于逐出 Azure 现成 VM/VMSS。 可能的值包括: - 大于零的任何十进制值。 示例:0.01538 -1 – 指示按需 up-to 的默认价格。 可以将 maxPrice 设置为 -1,以指示出于价格原因不应逐出 Azure Spot VM/VMSS。 此外,如果未提供默认最大价格,则 -1。 最低 API 版本:2019-03-01。 |
int |
BootDiagnostics
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否应在虚拟机上启用启动诊断。 | bool |
storageUri | 用于放置控制台输出和屏幕截图的存储帐户的 URI。 如果在启用启动诊断时未指定 storageUri,则会使用托管存储。 |
字符串 |
CapacityReservationProfile
名字 | 描述 | 价值 |
---|---|---|
capacityReservationGroup | 指定容量预留组资源 ID,该 ID 应用于分配已保留足够容量的虚拟机或规模集 VM 实例。 有关更多详细信息,请参阅 https://aka.ms/CapacityReservation。 | SubResource |
DiagnosticsProfile
名字 | 描述 | 价值 |
---|---|---|
bootDiagnostics | 启动诊断是一项调试功能,可用于查看控制台输出和屏幕截图来诊断 VM 状态。 注意:如果指定 storageUri,请确保存储帐户与 VM 位于同一区域和订阅中。 可以轻松查看控制台日志的输出。 通过 Azure,还可以从虚拟机监控程序查看 VM 的屏幕截图。 |
BootDiagnostics |
DiffDiskSettings
名字 | 描述 | 价值 |
---|---|---|
选择 | 指定操作系统磁盘的临时磁盘设置。 | “Local” |
放置 | 指定操作系统磁盘的临时磁盘放置。 可能的值包括: CacheDisk ResourceDisk 默认值:如果为 VM 大小配置了缓存磁盘,则 请参阅 /azure/virtual-machines/windows/size 和 /azure/virtual-machines/linux/size 上的 Windows VM 的 VM 大小文档,以检查哪些 VM 大小公开缓存磁盘。 |
“CacheDisk” “ResourceDisk” |
DiskEncryptionSetParameters
名字 | 描述 | 价值 |
---|---|---|
id | 资源 ID | 字符串 |
ExtendedLocation
名字 | 描述 | 价值 |
---|---|---|
名字 | 扩展位置的名称。 | 字符串 |
类型 | 扩展位置的类型。 | “EdgeZone” |
ImageReference
名字 | 描述 | 价值 |
---|---|---|
communityGalleryImageId | 为 vm 部署指定社区库映像唯一 ID。 这可以从社区库映像 GET 调用中提取。 | 字符串 |
id | 资源 ID | 字符串 |
提供 | 指定用于创建虚拟机的平台映像或市场映像的产品/服务。 | 字符串 |
发行人 | 映像发布者。 | 字符串 |
sharedGalleryImageId | 为 vm 部署指定共享库映像唯一 ID。 这可以从共享库映像 GET 调用中提取。 | 字符串 |
sku | 映像 SKU。 | 字符串 |
版本 | 指定用于创建虚拟机的平台映像或市场映像的版本。 允许的格式为 Major.Minor.Build 或“latest”。 主要、次要和生成是十进制数。 指定“latest”以在部署时使用可用映像的最新版本。 即使使用“最新”,即使新版本可用,VM 映像也不会在部署后自动更新。 请不要对库映像部署使用字段“version”,库映像应始终使用“id”字段进行部署,若要使用库映像的“latest”版本,只需在“id”字段中设置“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/images/{imageName}”,而不输入版本。 | 字符串 |
KeyVaultSecretReference
名字 | 描述 | 价值 |
---|---|---|
secretUrl | 引用 Key Vault 中的机密的 URL。 | string (必需) |
sourceVault | 包含机密的 Key Vault 的相对 URL。 | SubResource (必需) |
LinuxConfiguration
名字 | 描述 | 价值 |
---|---|---|
disablePasswordAuthentication | 指定是否应禁用密码身份验证。 | bool |
enableVMAgentPlatformUpdates | 指示是否为 Linux 虚拟机启用了 VMAgent 平台更新。 默认值为 false。 | bool |
patchSettings | [预览功能]指定与 Linux 上的 VM 来宾修补相关的设置。 | LinuxPatchSettings |
provisionVMAgent | 指示是否应在虚拟机上预配虚拟机代理。 如果未在请求正文中指定此属性,则默认行为是将其设置为 true。 这将确保 VM 代理安装在 VM 上,以便以后可以向 VM 添加扩展。 |
bool |
ssh | 指定 Linux OS 的 ssh 密钥配置。 | SshConfiguration |
LinuxPatchSettings
名字 | 描述 | 价值 |
---|---|---|
assessmentMode | 指定 IaaS 虚拟机的 VM 来宾修补评估模式。 可能的值包括: ImageDefault - 控制虚拟机上的修补程序评估的时间。 AutomaticByPlatform - 平台将触发定期修补评估。 属性 provisionVMAgent 必须为 true。 |
“AutomaticByPlatform” “ImageDefault” |
automaticByPlatformSettings | 指定 Linux 上的 VM 来宾修补中修补程序模式 AutomaticByPlatform 的其他设置。 | LinuxVMGuestPatchAutomaticByPlatformSettings |
patchMode | 指定 VM 来宾修补到 IaaS 虚拟机的模式,或与将 OrchestrationMode 作为灵活业务流程模式的虚拟机规模集关联的虚拟机。 可能的值包括: ImageDefault - 使用虚拟机的默认修补配置。 AutomaticByPlatform - 虚拟机将由平台自动更新。 属性 provisionVMAgent 必须为 true |
“AutomaticByPlatform” “ImageDefault” |
LinuxVMGuestPatchAutomaticByPlatformSettings
名字 | 描述 | 价值 |
---|---|---|
rebootSetting | 指定所有 AutomaticByPlatform 修补程序安装操作的重新启动设置。 | “Always” “IfRequired” “永不” “未知” |
Microsoft.Compute/virtualMachineScaleSets
名字 | 描述 | 价值 |
---|---|---|
apiVersion | API 版本 | '2022-11-01' |
extendedLocation | 虚拟机规模集的扩展位置。 | ExtendedLocation |
身份 | 虚拟机规模集的标识(如果已配置)。 | VirtualMachineScaleSetIdentity |
位置 | 资源位置 | string (必需) |
名字 | 资源名称 | string (必需) |
计划 | 指定有关用于创建虚拟机的市场映像的信息。 此元素仅用于市场映像。 必须先启用映像以编程方式使用映像,然后才能从 API 使用市场映像。 在 Azure 门户中,找到要使用的市场映像,然后单击 想要以编程方式部署,开始使用 ->。 输入任何必需的信息,然后单击“保存 |
计划 |
性能 | 描述虚拟机规模集的属性。 | VirtualMachineScaleSetProperties |
sku | 虚拟机规模集 SKU。 | Sku |
标签 | 资源标记 | 标记名称和值的字典。 请参阅模板 中的 |
类型 | 资源类型 | “Microsoft.Compute/virtualMachineScaleSets” |
区 | 虚拟机规模集区域。 注意:只能在创建规模集时设置可用性区域 | string[] |
OSImageNotificationProfile
名字 | 描述 | 价值 |
---|---|---|
使 | 指定是启用或禁用 OS 映像计划事件。 | bool |
notBeforeTimeout | 虚拟机重新映像或升级其 OS 的时间长度将不得不在事件自动批准(超时)之前批准 OS 映像计划事件。 配置以 ISO 8601 格式指定,该值必须为 15 分钟(PT15M) | 字符串 |
PatchSettings
名字 | 描述 | 价值 |
---|---|---|
assessmentMode | 指定 IaaS 虚拟机的 VM 来宾修补程序评估模式。 可能的值包括: ImageDefault - 控制虚拟机上的修补程序评估的时间。 AutomaticByPlatform - 平台将触发定期修补评估。 属性 provisionVMAgent 必须为 true。 |
“AutomaticByPlatform” “ImageDefault” |
automaticByPlatformSettings | 指定 Windows 上的 VM 来宾修补中修补程序模式 AutomaticByPlatform 的其他设置。 | WindowsVMGuestPatchAutomaticByPlatformSettings |
enableHotpatching | 使客户无需重新启动即可修补其 Azure VM。 对于 enableHotpatching,必须将“provisionVMAgent”设置为 true,并且“patchMode”必须设置为“AutomaticByPlatform”。 | bool |
patchMode | 指定 VM 来宾修补到 IaaS 虚拟机的模式,或与将 OrchestrationMode 作为灵活业务流程模式的虚拟机规模集关联的虚拟机。 可能的值包括: 手动 - 可以控制将修补程序应用到虚拟机。 为此,请在 VM 中手动应用修补程序。 在此模式下,自动更新处于禁用状态;属性 WindowsConfiguration.enableAutomaticUpdates 必须为 false AutomaticByOS - 虚拟机将由 OS 自动更新。 属性 WindowsConfiguration.enableAutomaticUpdates 必须为 true。 AutomaticByPlatform - 虚拟机将由平台自动更新。 属性 provisionVMAgent 和 WindowsConfiguration.enableAutomaticUpdates 必须为 true |
“AutomaticByOS” “AutomaticByPlatform” “Manual” |
计划
名字 | 描述 | 价值 |
---|---|---|
名字 | 计划 ID。 | 字符串 |
产品 | 指定来自市场的映像的产品。 此值与 imageReference 元素下的 Offer 相同。 | 字符串 |
promotionCode | 促销代码。 | 字符串 |
发行人 | 发布者 ID。 | 字符串 |
PriorityMixPolicy
名字 | 描述 | 价值 |
---|---|---|
baseRegularPriorityCount | 将在横向扩展时在此规模集中创建的常规优先级 VM 的基数。 | int 约束: 最小值 = 0 |
regularPriorityPercentageAboveBase | 达到基本常规优先级计数后,VM 实例的百分比应使用常规优先级。 | int 约束: 最小值 = 0 最大值 = 100 |
PublicIPAddressSku
名字 | 描述 | 价值 |
---|---|---|
名字 | 指定公共 IP SKU 名称 | “Basic” “Standard” |
层 | 指定公共 IP SKU 层 | “Global” “区域” |
ResourceTags
名字 | 描述 | 价值 |
---|
RollingUpgradePolicy
名字 | 描述 | 价值 |
---|---|---|
enableCrossZoneUpgrade | 允许 VMSS 在构造升级批处理时忽略 AZ 边界。 考虑 Update 域和 maxBatchInstancePercent 以确定批大小。 | bool |
maxBatchInstancePercent | 一批滚动升级同时升级的总虚拟机实例的最大百分比。 由于这是一个最大值,因此以前的或将来的批中的不正常实例可能会导致批处理中的实例百分比降低,以确保更高的可靠性。 此参数的默认值为 20%。 | int 约束: 最小值 = 5 最大值 = 100 |
maxSurge | 创建新的虚拟机来升级规模集,而不是更新现有虚拟机。 为每个批创建新虚拟机后,将删除现有虚拟机。 | bool |
maxUnhealthyInstancePercent | 规模集中可能同时运行不正常的虚拟机实例的最大百分比,无论是由于升级,还是虚拟机运行状况检查在滚动升级中止之前处于不正常状态。 在启动任何批处理之前,将检查此约束。 此参数的默认值为 20%。 | int 约束: 最小值 = 5 最大值 = 100 |
maxUnhealthyUpgradedInstancePercent | 可发现处于不正常状态的已升级虚拟机实例的最大百分比。 升级每个批处理后,将进行此检查。 如果超过此百分比,滚动更新将中止。 此参数的默认值为 20%。 | int 约束: 最小值 = 0 最大值 = 100 |
pauseTimeBetweenBatches | 完成一批中所有虚拟机的更新和开始下一批之间的等待时间。 持续时间应采用 ISO 8601 格式指定。 默认值为 0 秒(PT0S)。 | 字符串 |
prioritizeUnhealthyInstances | 在任何正常运行的实例之前,升级规模集中的所有不正常实例。 | bool |
rollbackFailedInstancesOnPolicyBreach | 如果违反滚动升级策略,回滚失败实例到以前的模型。 | bool |
ScaleInPolicy
名字 | 描述 | 价值 |
---|---|---|
forceDeletion | 此属性允许指定在虚拟机规模集进行缩减时,是否必须强制删除选择删除的虚拟机。(预览版中的功能) | bool |
规则 | 在虚拟机规模集中进行缩放时要遵循的规则。 可能的值包括: 默认 当虚拟机规模集进行缩放时,如果规模集是区域性规模集,则规模集将首先跨区域均衡。 然后,它将尽可能跨容错域进行均衡。 在每个容错域中,选择删除的虚拟机将是不受横向扩展保护的最新虚拟机。 OldestVM 当虚拟机规模集正在缩减时,将选择不从横向扩展保护的最早虚拟机进行删除。 对于区域虚拟机规模集,规模集将首先跨区域均衡。 在每个区域中,将选择不受保护的最早虚拟机进行删除。 NewestVM 当虚拟机规模集进行缩减时,将选择不受横向缩减保护的最新虚拟机以供删除。 对于区域虚拟机规模集,规模集将首先跨区域均衡。 在每个区域中,将选择不受保护的最新虚拟机进行删除。 |
包含任一项的字符串数组: “Default” “NewestVM” “OldestVM” |
ScheduledEventsProfile
名字 | 描述 | 价值 |
---|---|---|
osImageNotificationProfile | 指定 OS 映像计划事件相关配置。 | OSImageNotificationProfile |
terminateNotificationProfile | 指定终止计划事件相关配置。 | TerminateNotificationProfile |
SecurityProfile
名字 | 描述 | 价值 |
---|---|---|
encryptionAtHost | 用户可以在请求中使用此属性来启用或禁用虚拟机或虚拟机规模集的主机加密。 这将为所有磁盘启用加密,包括主机本身的资源/临时磁盘。 默认值:除非将此属性设置为 true,否则将禁用主机上的加密。 |
bool |
securityType | 指定虚拟机的 SecurityType。 必须将其设置为任何指定值才能启用 UefiSettings。 默认值:除非设置了此属性,否则不会启用 UefiSettings。 |
“ConfidentialVM” “TrustedLaunch” |
uefiSettings | 指定在创建虚拟机时使用的安全启动和 vTPM 等安全设置。 最低 API 版本:2020-12-01 |
UefiSettings |
ServiceArtifactReference
名字 | 描述 | 价值 |
---|---|---|
id | 以 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/gallerys/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} 的形式的服务项目引用 ID | 字符串 |
Sku
名字 | 描述 | 价值 |
---|---|---|
能力 | 指定规模集中的虚拟机数。 | int |
名字 | SKU 名称。 | 字符串 |
层 | 指定规模集中的虚拟机层。 可能的值: 标准 基本 |
字符串 |
SpotRestorePolicy
名字 | 描述 | 价值 |
---|---|---|
启用 | 启用现成Try-Restore 功能,其中将尝试根据容量可用性和定价约束以机会方式还原逐出的 VMSS SPOT 实例 | bool |
restoreTimeout | 超时值表示为 ISO 8601 持续时间,之后平台不会尝试还原 VMSS SPOT 实例 | 字符串 |
SshConfiguration
名字 | 描述 | 价值 |
---|---|---|
publicKeys | 用于通过基于 Linux 的 VM 进行身份验证的 SSH 公钥列表。 | SshPublicKey[] |
SshPublicKey
名字 | 描述 | 价值 |
---|---|---|
keyData | 用于通过 ssh 向 VM 进行身份验证的 SSH 公钥证书。 密钥必须至少为 2048 位且采用 ssh-rsa 格式。 有关创建 ssh 密钥,请参阅 [在 Azure 中为 Linux VM 在 Linux 和 Mac 上创建 SSH 密钥]/azure/virtual-machines/linux/create-ssh-keys-detailed。 |
字符串 |
路径 | 指定存储 ssh 公钥的已创建 VM 上的完整路径。 如果文件已存在,则指定的键将追加到该文件中。 示例:/home/user/.ssh/authorized_keys | 字符串 |
SubResource
名字 | 描述 | 价值 |
---|---|---|
id | 资源 ID | 字符串 |
TerminateNotificationProfile
名字 | 描述 | 价值 |
---|---|---|
使 | 指定是启用或禁用终止计划事件。 | bool |
notBeforeTimeout | 删除虚拟机的可配置时间长度可能需要在事件自动批准(超时)之前批准终止计划事件。 必须以 ISO 8601 格式指定配置,默认值为 5 分钟(PT5M) | 字符串 |
UefiSettings
名字 | 描述 | 价值 |
---|---|---|
secureBootEnabled | 指定是否应在虚拟机上启用安全启动。 最低 API 版本:2020-12-01 |
bool |
vTpmEnabled | 指定是否应在虚拟机上启用 vTPM。 最低 API 版本:2020-12-01 |
bool |
UpgradePolicy
名字 | 描述 | 价值 |
---|---|---|
automaticOSUpgradePolicy | 用于执行自动 OS 升级的配置参数。 | AutomaticOSUpgradePolicy |
模式 | 指定升级到规模集中虚拟机的模式。 可能的值包括: 手动 - 控制对规模集中虚拟机的更新的应用程序。 使用 manualUpgrade 操作执行此操作。 自动 - 规模集中的所有虚拟机同时自动更新。 |
“Automatic” “Manual” “滚动” |
rollingUpgradePolicy | 执行滚动升级时使用的配置参数。 | RollingUpgradePolicy |
UserAssignedIdentities
名字 | 描述 | 价值 |
---|
UserAssignedIdentitiesValue
名字 | 描述 | 价值 |
---|
VaultCertificate
名字 | 描述 | 价值 |
---|---|---|
certificateStore | 对于 Windows VM,指定应向其添加证书的虚拟机上的证书存储。 指定的证书存储隐式位于 LocalMachine 帐户中。 对于 Linux VM,证书文件位于 /var/lib/waagent 目录下,文件名为 X509 证书文件 <大写Thumbprint>.crt,<用于私钥的 uppercaseThumbprint>.prv。 这两个文件都是 .pem 格式的。 |
字符串 |
certificateUrl | 这是已作为机密上传到 Key Vault 的证书的 URL。 若要将机密添加到 Key Vault,请参阅 向密钥保管库添加密钥或机密。 在这种情况下,证书必须是以下 JSON 对象的 Base64 编码,该对象在 UTF-8 中编码: { “data”:“<Base64 编码的证书>”, “dataType”:“pfx”, “password”:“<pfx-file-password>” } 若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 Windows 的 Azure 密钥库 虚拟机扩展。 |
字符串 |
VaultSecretGroup
名字 | 描述 | 价值 |
---|---|---|
sourceVault | Key Vault 的相对 URL,其中包含 VaultCertificates 中的所有证书。 | SubResource |
vaultCertificates | SourceVault 中包含证书的密钥保管库引用列表。 | VaultCertificate[] |
VirtualHardDisk
名字 | 描述 | 价值 |
---|---|---|
uri | 指定虚拟硬盘的 URI。 | 字符串 |
VirtualMachineScaleSetDataDisk
名字 | 描述 | 价值 |
---|---|---|
缓存 | 指定缓存要求。 可能的值包括: 无 ReadOnly ReadWrite 默认值:标准存储 None。高级存储的 ReadOnly |
“None” “ReadOnly” “ReadWrite” |
createOption | 创建选项。 | “Attach” “Empty” “FromImage”(必需) |
deleteOption | 指定在 VMSS Flex 删除时是否应删除或分离数据磁盘(此功能仅适用于具有灵活 OrchestrationMode 的 VMSS)。 可能的值: 删除 如果使用此值,则删除 VMSS Flex VM 时删除数据磁盘。 分离 如果使用此值,则在删除 VMSS Flex VM 后保留数据磁盘。 默认值设置为 Delete。 |
“Delete” “Detach” |
diskIOPSReadWrite | 指定托管磁盘的 Read-Write IOPS。 仅当 StorageAccountType UltraSSD_LRS时才应使用。 如果未指定,则会根据 diskSizeGB 分配默认值。 | int |
diskMBpsReadWrite | 指定托管磁盘的带宽(以 MB/秒为单位)。 仅当 StorageAccountType UltraSSD_LRS时才应使用。 如果未指定,则会根据 diskSizeGB 分配默认值。 | int |
diskSizeGB | 指定空数据磁盘的大小(以 GB 为单位)。 此元素可用于覆盖虚拟机映像中的磁盘大小。 diskSizeGB 是磁盘的字节数 x 1024^3,该值不能大于 1023 |
int |
伦 | 指定数据磁盘的逻辑单元号。 此值用于标识 VM 中的数据磁盘,因此对于附加到 VM 的每个数据磁盘必须是唯一的。 | int (必需) |
managedDisk | 托管磁盘参数。 | VirtualMachineScaleSetManagedDiskParameters |
名字 | 磁盘名称。 | 字符串 |
writeAcceleratorEnabled | 指定是应在磁盘上启用或禁用 writeAccelerator。 | bool |
VirtualMachineScaleSetExtension
名字 | 描述 | 价值 |
---|---|---|
名字 | 扩展的名称。 | 字符串 |
性能 | 描述虚拟机规模集扩展的属性。 | VirtualMachineScaleSetExtensionProperties |
VirtualMachineScaleSetExtensionProfile
名字 | 描述 | 价值 |
---|---|---|
扩展 | 虚拟机规模集子扩展资源。 | VirtualMachineScaleSetExtension[] |
extensionsTimeBudget | 指定分配所有扩展开始的时间。 持续时间应介于 15 分钟到 120 分钟(含)之间,应采用 ISO 8601 格式指定。 默认值为 90 分钟(PT1H30M)。 最低 API 版本:2020-06-01 |
字符串 |
VirtualMachineScaleSetExtensionProperties
名字 | 描述 | 价值 |
---|---|---|
autoUpgradeMinorVersion | 指示扩展是否应在部署时使用较新的次要版本。 但是,部署后,除非重新部署,否则扩展不会升级次要版本,即使此属性设置为 true 也是如此。 | bool |
enableAutomaticUpgrade | 指示如果有较新版本的扩展可用,平台是否应自动升级扩展。 | bool |
forceUpdateTag | 如果提供值并且与上一个值不同,则即使扩展配置未更改,扩展处理程序也会强制更新。 | 字符串 |
protectedSettings | 该扩展可以包含 protectedSettings 或 protectedSettingsFromKeyVault,或者根本不包含受保护的设置。 | 任何 |
protectedSettingsFromKeyVault | 由引用传递的扩展保护的设置,并从密钥保管库使用 | KeyVaultSecretReference |
provisionAfterExtensions | 需要预配此扩展的扩展名称的集合。 | string[] |
发行人 | 扩展处理程序发布者的名称。 | 字符串 |
设置 | 扩展的 Json 格式公共设置。 | 任何 |
suppressFailures | 指示是否取消来自扩展的故障(不连接到 VM 等操作故障不会取消,而不管此值如何)。 默认值为 false。 | bool |
类型 | 指定扩展的类型;例如“CustomScriptExtension”。 | 字符串 |
typeHandlerVersion | 指定脚本处理程序的版本。 | 字符串 |
VirtualMachineScaleSetHardwareProfile
名字 | 描述 | 价值 |
---|---|---|
vmSizeProperties | 指定用于自定义虚拟机大小的属性。 最低 api 版本:2021-11-01。 有关详细信息,请按照 VM 自定义 中的说明进行操作。 |
VMSizeProperties |
VirtualMachineScaleSetIdentity
名字 | 描述 | 价值 |
---|---|---|
类型 | 用于虚拟机规模集的标识类型。 类型“SystemAssigned,UserAssigned”包括隐式创建的标识和一组用户分配的标识。 类型“None”将从虚拟机规模集中删除任何标识。 | “None” “SystemAssigned” “SystemAssigned,UserAssigned” “UserAssigned” |
userAssignedIdentities | 与虚拟机规模集关联的用户标识列表。 用户标识字典密钥引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 | UserAssignedIdentities |
VirtualMachineScaleSetIPConfiguration
名字 | 描述 | 价值 |
---|---|---|
名字 | IP 配置名称。 | string (必需) |
性能 | 描述虚拟机规模集网络配置文件的 IP 配置属性。 | VirtualMachineScaleSetIPConfigurationProperties |
VirtualMachineScaleSetIPConfigurationProperties
名字 | 描述 | 价值 |
---|---|---|
applicationGatewayBackendAddressPools | 指定对应用程序网关后端地址池的引用数组。 规模集可以引用多个应用程序网关的后端地址池。 多个规模集不能使用相同的应用程序网关。 | SubResource[] |
applicationSecurityGroups | 指定对应用程序安全组的引用数组。 | SubResource[] |
loadBalancerBackendAddressPools | 指定对负载均衡器后端地址池的引用数组。 规模集可以引用一个公共负载均衡器和一个内部负载均衡器的后端地址池。 多个规模集不能使用相同的基本 SKU 负载均衡器。 | SubResource[] |
loadBalancerInboundNatPools | 指定对负载均衡器的入站 Nat 池的引用数组。 规模集可以引用一个公共负载均衡器和一个内部负载均衡器的入站 NAT 池。 多个规模集不能使用相同的基本 SKU 负载均衡器。 | SubResource[] |
主要 | 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 | bool |
privateIPAddressVersion | 从 Api-Version 2017-03-30 开始提供,它表示特定 ipconfiguration 是 IPv4 还是 IPv6。 默认值被视为 IPv4。 可能的值为:“IPv4”和“IPv6”。 | “IPv4” “IPv6” |
publicIPAddressConfiguration | publicIPAddressConfiguration。 | VirtualMachineScaleSetPublicIPAddressConfiguration |
子 | 指定子网的标识符。 | ApiEntityReference |
VirtualMachineScaleSetIpTag
名字 | 描述 | 价值 |
---|---|---|
ipTagType | IP 标记类型。 示例:FirstPartyUsage。 | 字符串 |
标记 | 与公共 IP 关联的 IP 标记。 示例:SQL、存储等。 | 字符串 |
VirtualMachineScaleSetManagedDiskParameters
名字 | 描述 | 价值 |
---|---|---|
diskEncryptionSet | 指定托管磁盘的客户托管磁盘加密集资源 ID。 | DiskEncryptionSetParameters |
securityProfile | 指定托管磁盘的安全配置文件。 | VMDiskSecurityProfile |
storageAccountType | 指定托管磁盘的存储帐户类型。 注意:UltraSSD_LRS只能与数据磁盘一起使用,它不能与 OS 磁盘一起使用。 | “PremiumV2_LRS” “Premium_LRS” “Premium_ZRS” “StandardSSD_LRS” “StandardSSD_ZRS” “Standard_LRS” “UltraSSD_LRS” |
VirtualMachineScaleSetNetworkConfiguration
名字 | 描述 | 价值 |
---|---|---|
名字 | 网络配置名称。 | string (必需) |
性能 | 介绍虚拟机规模集网络配置文件的 IP 配置。 | VirtualMachineScaleSetNetworkConfigurationProperties |
VirtualMachineScaleSetNetworkConfigurationDnsSettings
名字 | 描述 | 价值 |
---|---|---|
dnsServers | DNS 服务器 IP 地址列表 | string[] |
VirtualMachineScaleSetNetworkConfigurationProperties
名字 | 描述 | 价值 |
---|---|---|
deleteOption | 指定删除 VM 时网络接口发生的情况 | “Delete” “Detach” |
disableTcpStateTracking | 指定是否为 tcp 状态跟踪禁用网络接口。 | bool |
dnsSettings | 要应用于网络接口的 dns 设置。 | VirtualMachineScaleSetNetworkConfigurationDnsSettings |
enableAcceleratedNetworking | 指定网络接口是否已启用加速网络。 | bool |
enableFpga | 指定网络接口是否已启用 FPGA 网络。 | bool |
enableIPForwarding | 是否在此 NIC 上启用了 IP 转发。 | bool |
ipConfigurations | 指定网络接口的 IP 配置。 | VirtualMachineScaleSetIPConfiguration[] (必需) |
networkSecurityGroup | 网络安全组。 | SubResource |
主要 | 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 | bool |
VirtualMachineScaleSetNetworkProfile
名字 | 描述 | 价值 |
---|---|---|
healthProbe | 对负载均衡器探测的引用,用于确定虚拟机规模集中实例的运行状况。 引用的格式为:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}”。 | ApiEntityReference |
networkApiVersion | 指定使用业务流程模式“灵活”在虚拟机规模集的网络接口配置中创建网络资源时使用的 Microsoft.Network API 版本 | '2020-11-01' |
networkInterfaceConfigurations | 网络配置列表。 | VirtualMachineScaleSetNetworkConfiguration[] |
VirtualMachineScaleSetOSDisk
名字 | 描述 | 价值 |
---|---|---|
缓存 | 指定缓存要求。 可能的值包括: 无 ReadOnly ReadWrite 默认值:标准存储 None。高级存储的 ReadOnly |
“None” “ReadOnly” “ReadWrite” |
createOption | 指定应如何创建规模集中的虚拟机。 唯一允许的值是:FromImage \u2013 使用映像创建虚拟机时使用此值。 如果使用平台映像,则还使用上述 imageReference 元素。 如果使用市场映像,则还会使用前面所述的计划元素。 |
“Attach” “Empty” “FromImage”(必需) |
deleteOption | 指定在 VMSS Flex 删除时是否应删除或分离 OS 磁盘(此功能仅适用于具有灵活 OrchestrationMode 的 VMSS)。 可能的值: 删除 如果使用此值,则删除 VMSS Flex VM 时会删除 OS 磁盘。 分离 如果使用此值,则会在删除 VMSS Flex VM 后保留 OS 磁盘。 默认值设置为 Delete。 对于临时 OS 磁盘,默认值设置为 删除。 用户无法更改临时 OS 磁盘的删除选项。 |
“Delete” “Detach” |
diffDiskSettings | 指定虚拟机规模集使用的操作系统磁盘的临时磁盘设置。 | DiffDiskSettings |
diskSizeGB | 指定空数据磁盘的大小(以 GB 为单位)。 此元素可用于覆盖虚拟机映像中的磁盘大小。 diskSizeGB 是磁盘的字节数 x 1024^3,该值不能大于 1023 |
int |
图像 | 指定要基于规模集的非托管用户映像的信息。 | VirtualHardDisk |
managedDisk | 托管磁盘参数。 | VirtualMachineScaleSetManagedDiskParameters |
名字 | 磁盘名称。 | 字符串 |
osType | 此属性允许指定从用户映像或专用 VHD 创建 VM 时磁盘中包含的 OS 类型。 可能的值包括: Windows Linux |
“Linux” “Windows” |
vhdContainers | 指定用于存储规模集操作系统磁盘的容器 URL。 | string[] |
writeAcceleratorEnabled | 指定是应在磁盘上启用或禁用 writeAccelerator。 | bool |
VirtualMachineScaleSetOSProfile
名字 | 描述 | 价值 |
---|---|---|
adminPassword | 指定管理员帐户的密码。 最小长度(Windows): 8 个字符 最小长度(Linux): 6 个字符 最大长度(Windows): 123 个字符 最大长度(Linux): 72 个字符 复杂性要求:需要满足以下 4 个条件中的 3 个 字符数较低 具有大写字符 包含数字 具有特殊字符(正则表达式匹配 [\W_]) 不允许的值:“abc@123”、“P@$$w 0rd”、“P@ssw0rd”、“P@ssword123”、“Pa$$word”、“pass@word1”、“Password!”、“Password1”、“Password22”、“iloveyou!” 若要重置密码,请参阅 如何在 Windows VM 中重置远程桌面服务或其登录密码 有关重置根密码,请参阅 使用 VMAccess 扩展 管理用户、SSH 并检查或修复 Azure Linux VM 上的磁盘 |
字符串 约束: 敏感值。 以安全参数的形式传入。 |
adminUsername | 指定管理员帐户的名称。 仅限 Windows 的限制: 不能以“.” 结尾。 不允许的值:“administrator”、“admin”、“user”、“user1”、“test”、“user2”、“test1”、“user3”、“admin1”、“1”, “123”、“a”、“actuser”、“adm”、“admin2”、“aspnet”、“backup”、“console”、“david”、“guest”、“john”、“owner”、“root”、“server”、“sql”、“support”、“support_388945a0”、“sys”、“test2”、“test3”、“user4”、“user5”。 最小长度(Linux): 1 个字符 最大长度(Linux): 64 个字符 最大长度(Windows): 20 个字符 |
字符串 |
allowExtensionOperations | 指定是否应在虚拟机规模集上允许扩展操作。 仅当虚拟机规模集上没有扩展时,此选项才可设置为 False。 |
bool |
computerNamePrefix | 指定规模集中所有虚拟机的计算机名称前缀。 计算机名称前缀长度必须为 1 到 15 个字符。 | 字符串 |
customData | 指定自定义数据的 base-64 编码字符串。 base-64 编码字符串将解码为作为虚拟机上的文件保存的二进制数组。 二进制数组的最大长度为 65535 字节。 有关为 VM 使用 cloud-init,请参阅 使用 cloud-init 在创建期间自定义 Linux VM |
字符串 |
linuxConfiguration | 指定虚拟机上的 Linux 操作系统设置。 有关受支持的 Linux 分发版的列表,请参阅 Azure-Endorsed 分发版上的 Linux。 |
LinuxConfiguration |
requireGuestProvisionSignal | 必须设置为 True 或省略的可选属性。 | bool |
秘密 | 指定应在规模集中的虚拟机上安装的证书集。 若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 Windows 的 Azure 密钥库 虚拟机扩展。 | VaultSecretGroup[] |
windowsConfiguration | 指定虚拟机上的 Windows 操作系统设置。 | WindowsConfiguration |
VirtualMachineScaleSetProperties
名字 | 描述 | 价值 |
---|---|---|
additionalCapabilities | 指定在虚拟机规模集中的虚拟机上启用或禁用的其他功能。 例如:虚拟机是否能够支持使用 UltraSSD_LRS 存储帐户类型附加托管数据磁盘。 | AdditionalCapabilities |
automaticRepairsPolicy | 自动修复的策略。 | AutomaticRepairsPolicy |
constrainedMaximumCapacity | 必须设置为 True 或省略的可选属性。 | bool |
doNotRunExtensionsOnOverprovisionedVMs | 启用过度预配后,仅在请求的 VM 数量上启动扩展,这些 VM 最终会保留。 因此,此属性将确保扩展不会在额外的过度预配的 VM 上运行。 | bool |
hostGroup | 指定虚拟机规模集所在的专用主机组的信息。 最低 API 版本:2020-06-01。 |
SubResource |
orchestrationMode | 指定虚拟机规模集的业务流程模式。 | “灵活” “Uniform” |
overprovision | 指定是否应过度预配虚拟机规模集。 | bool |
platformFaultDomainCount | 每个放置组的容错域计数。 | int |
priorityMixPolicy | 指定用于在同一 VMSS Flex 实例中混合现成和常规优先级 VM 的所需目标。 | PriorityMixPolicy |
proximityPlacementGroup | 指定应向其分配虚拟机规模集的邻近放置组的相关信息。 最低 api 版本:2018-04-01。 |
SubResource |
scaleInPolicy | 指定在虚拟机规模集中的虚拟机中缩放时应用的策略。 | ScaleInPolicy |
singlePlacementGroup | 如果为 true,则规模集限制为单个放置组,最大大小为 100 个虚拟机。 注意:如果 singlePlacementGroup 为 true,则可能会将其修改为 false。 但是,如果 singlePlacementGroup 为 false,则可能不会将其修改为 true。 | bool |
spotRestorePolicy | 指定虚拟机规模集的现成还原属性。 | SpotRestorePolicy |
upgradePolicy | 升级策略。 | UpgradePolicy |
virtualMachineProfile | 虚拟机配置文件。 | VirtualMachineScaleSetVMProfile |
zoneBalance | 如果发生区域中断,是否强制甚至跨 x 区域进行虚拟机分发。 仅当规模集的区域属性包含多个区域时,才能设置 zoneBalance 属性。 如果没有区域或仅指定一个区域,则不应设置 zoneBalance 属性。 | bool |
VirtualMachineScaleSetPublicIPAddressConfiguration
名字 | 描述 | 价值 |
---|---|---|
名字 | publicIP 地址配置名称。 | string (必需) |
性能 | 介绍虚拟机规模集 IP 配置的公共 IPAddress 配置 | VirtualMachineScaleSetPublicIPAddressConfigurationProperties |
sku | 描述公共 IP Sku。 只能将 OrchestrationMode 设置为灵活。 | PublicIPAddressSku |
VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings
名字 | 描述 | 价值 |
---|---|---|
domainNameLabel | 域名标签。域名标签和 vm 索引的串联将是将创建的 PublicIPAddress 资源的域名标签 | string (必需) |
VirtualMachineScaleSetPublicIPAddressConfigurationProperties
名字 | 描述 | 价值 |
---|---|---|
deleteOption | 指定删除 VM 时公共 IP 会发生什么情况 | “Delete” “Detach” |
dnsSettings | 要应用于 publicIP 地址的 dns 设置。 | VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings |
idleTimeoutInMinutes | 公共 IP 地址的空闲超时。 | int |
ipTags | 与公共 IP 地址关联的 IP 标记列表。 | VirtualMachineScaleSetIpTag[] |
publicIPAddressVersion | 从 Api-Version 2019-07-01 开始提供,它表示特定 ipconfiguration 是 IPv4 还是 IPv6。 默认值被视为 IPv4。 可能的值为:“IPv4”和“IPv6”。 | “IPv4” “IPv6” |
publicIPPrefix | 要从中分配 publicIP 地址的 PublicIPPrefix。 | SubResource |
VirtualMachineScaleSetStorageProfile
名字 | 描述 | 价值 |
---|---|---|
dataDisks | 指定用于向规模集中的虚拟机添加数据磁盘的参数。 有关磁盘的详细信息,请参阅 关于 Azure 虚拟机的磁盘和 VHD。 |
VirtualMachineScaleSetDataDisk[] |
diskControllerType | 字符串 | |
imageReference | 指定要使用的图像的信息。 可以指定有关平台映像、市场映像或虚拟机映像的信息。 若要使用平台映像、市场映像或虚拟机映像,但不在其他创建操作中使用,则需要此元素。 | ImageReference |
osDisk | 指定有关规模集中虚拟机使用的操作系统磁盘的信息。 有关磁盘的详细信息,请参阅 关于 Azure 虚拟机的磁盘和 VHD。 |
VirtualMachineScaleSetOSDisk |
VirtualMachineScaleSetVMProfile
名字 | 描述 | 价值 |
---|---|---|
applicationProfile | 指定应提供给 VM/VMSS 的库应用程序 | ApplicationProfile |
billingProfile | 指定 Azure 现成 VMSS 的计费相关详细信息。 最低 API 版本:2019-03-01。 |
BillingProfile |
capacityReservation | 指定规模集的容量预留相关详细信息。 最低 API 版本:2021-04-01。 |
CapacityReservationProfile |
diagnosticsProfile | 指定启动诊断设置状态。 最低 API 版本:2015-06-15。 |
DiagnosticsProfile |
evictionPolicy | 指定 Azure 现成虚拟机和 Azure Spot 规模集的逐出策略。 对于 Azure 现成虚拟机,支持“解除分配”和“删除”,最低 API 版本为 2019-03-01。 对于 Azure Spot 规模集,支持“Deallocate”和“Delete”,最低 API 版本为 2017-10-30-preview。 |
“Deallocate” “Delete” |
extensionProfile | 指定规模集中虚拟机上安装的扩展的设置集合。 | VirtualMachineScaleSetExtensionProfile |
hardwareProfile | 指定规模集的硬件配置文件相关详细信息。 最低 api 版本:2021-11-01。 |
VirtualMachineScaleSetHardwareProfile |
licenseType | 指定正在使用的映像或磁盘在本地获得许可。 Windows Server 操作系统的可能值为: Windows_Client Windows_Server Linux Server 操作系统的可能值为: RHEL_BYOS(适用于 RHEL) SLES_BYOS(对于 SUSE) 有关详细信息,请参阅 Windows Server 的 Azure 混合使用权益 Linux Server 的 Azure 混合使用权益 最低 API 版本:2015-06-15 |
字符串 |
networkProfile | 指定规模集中虚拟机网络接口的属性。 | VirtualMachineScaleSetNetworkProfile |
osProfile | 指定规模集中虚拟机的操作系统设置。 | VirtualMachineScaleSetOSProfile |
优先权 | 指定规模集中虚拟机的优先级。 最低 API 版本:2017-10-30-preview |
“Low” “Regular” “Spot” |
scheduledEventsProfile | 指定与计划事件相关的配置。 | ScheduledEventsProfile |
securityProfile | 指定规模集中虚拟机的安全相关配置文件设置。 | SecurityProfile |
serviceArtifactReference | 指定使用“latest”映像版本时,用于为规模集中的所有虚拟机设置相同映像版本的服务项目引用 ID。 最低 API 版本:2022-11-01 | ServiceArtifactReference |
storageProfile | 指定虚拟机磁盘的存储设置。 | VirtualMachineScaleSetStorageProfile |
userData | 规模集中虚拟机的 UserData,必须进行 base-64 编码。 客户不应在此处传递任何机密。 最低 API 版本:2021-03-01 |
字符串 |
VMDiskSecurityProfile
名字 | 描述 | 价值 |
---|---|---|
diskEncryptionSet | 指定用于客户托管密钥加密的 ConfidentialVM OS 磁盘和 VMGuest Blob 的托管磁盘的客户托管磁盘加密集资源 ID。 | DiskEncryptionSetParameters |
securityEncryptionType | 指定托管磁盘的 EncryptionType。 它设置为 DiskWithVMGuestState 以加密托管磁盘以及 VMGuestState blob,VMGuestStateOnly 仅加密 VMGuestState blob。 注意:只能为机密 VM 设置它。 |
“DiskWithVMGuestState” “VMGuestStateOnly” |
VMGalleryApplication
名字 | 描述 | 价值 |
---|---|---|
configurationReference | 可选,指定 Azure Blob 的 URI,该 URI 将替换包的默认配置(如果提供) | 字符串 |
enableAutomaticUpgrade | 如果设置为 true,当 PIR/SIG 中提供了新的库应用程序版本时,它将自动更新 VM/VMSS | bool |
次序 | 可选,指定包必须安装的顺序 | int |
packageReferenceId | 指定 /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/applications/{application}/versions/{version} 形式的 GalleryApplicationVersion 资源 ID | string (必需) |
标签 | 可选,指定更多泛型上下文的传递值。 | 字符串 |
treatFailureAsDeploymentFailure | 可选,如果为 true,则 VmApplication 中任何操作的任何失败都会使部署失败 | bool |
VMSizeProperties
名字 | 描述 | 价值 |
---|---|---|
vCPUUsAvailable | 指定可用于 VM 的 vCPU 数。 如果未在请求正文中指定此属性,则默认行为是将其设置为 api 响应中公开的 vCPU 的值,列出区域中 的所有可用虚拟机大小。 |
int |
vCPUUsPerCore | 指定 vCPU 与物理核心比率。 如果未在请求正文中指定此属性,则默认行为设置为 api 响应中公开的 vm 大小的 vCPUUsPerCore 值,列出区域中的所有可用虚拟机大小 将此属性设置为 1 也意味着禁用超线程处理。 |
int |
WindowsConfiguration
名字 | 描述 | 价值 |
---|---|---|
additionalUnattendContent | 指定其他 base-64 编码的 XML 格式信息,这些信息可以包含在 Windows 安装程序使用的 Unattend.xml 文件中。 | AdditionalUnattendContent[] |
enableAutomaticUpdates | 指示是否为 Windows 虚拟机启用自动更新。 默认值为 true。 对于虚拟机规模集,可以更新此属性,更新将对 OS 重新预配生效。 |
bool |
enableVMAgentPlatformUpdates | 指示是否为 Windows 虚拟机启用了 VMAgent 平台更新。 默认值为 false。 | bool |
patchSettings | [预览功能]指定与 Windows 上的 VM 来宾修补相关的设置。 | PatchSettings |
provisionVMAgent | 指示是否应在虚拟机上预配虚拟机代理。 如果未在请求正文中指定此属性,则默认行为是将其设置为 true。 这将确保 VM 代理安装在 VM 上,以便以后可以向 VM 添加扩展。 |
bool |
timeZone | 指定虚拟机的时区。 例如“太平洋标准时间”。 可能的值可以从 TimeZoneInfo.GetSystemTimeZones返回的时区 TimeZoneInfo.Id 值。 |
字符串 |
winRM | 指定 Windows 远程管理侦听器。 这将启用远程 Windows PowerShell。 | WinRMConfiguration |
WindowsVMGuestPatchAutomaticByPlatformSettings
名字 | 描述 | 价值 |
---|---|---|
rebootSetting | 指定所有 AutomaticByPlatform 修补程序安装操作的重新启动设置。 | “Always” “IfRequired” “永不” “未知” |
WinRMConfiguration
名字 | 描述 | 价值 |
---|---|---|
听众 | Windows 远程管理侦听器列表 | WinRMListener[] |
WinRMListener
名字 | 描述 | 价值 |
---|---|---|
certificateUrl | 这是已作为机密上传到 Key Vault 的证书的 URL。 若要将机密添加到 Key Vault,请参阅 向密钥保管库添加密钥或机密。 在这种情况下,证书必须是以下 JSON 对象的 Base64 编码,该对象在 UTF-8 中编码: { “data”:“<Base64 编码的证书>”, “dataType”:“pfx”, “password”:“<pfx-file-password>” } 若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 Windows 的 Azure 密钥库 虚拟机扩展。 |
字符串 |
协议 | 指定 WinRM 侦听器的协议。 可能的值包括: http https |
“Http” “Https” |
快速入门模板
以下快速入门模板部署此资源类型。
模板 | 描述 |
---|---|
将多个 VM 添加到虚拟机规模集 |
此模板将使用托管磁盘、公共 IP 和网络接口创建 N 个 VM 数量。 它将在灵活业务流程模式下在虚拟机规模集中创建 VM。 它们将在虚拟网络中预配,该虚拟网络也将作为部署的一部分创建 |
使用 Azure SQL 数据库 |
该模板部署具有规模集中所需 VM 计数的 Windows VMSS,以及要安装到每个 VM 中的 LANSA MSI。 部署 VM 规模集后,将使用自定义脚本扩展安装 LANSA MSI) |
Azure 容器服务引擎 (acs-engine) - 群模式 |
Azure 容器服务引擎(acs-engine)使用你选择的 DC/OS、Kubernetes、Swarm 模式或 Swarm 业务流程协调程序,为 Microsoft Azure 上启用了 Docker 的群集生成 ARM(Azure 资源管理器)模板。 该工具的输入是群集定义。 群集定义与用于部署 Microsoft Azure 容器服务群集的 ARM 模板语法非常相似(在许多情况下相同)。 |
Azure 游戏开发人员虚拟机规模集 |
Azure 游戏开发人员虚拟机规模集包括 Unreal 等授权引擎。 |
Azure VM 规模集作为 Intel Lustre 客户端 |
此模板使用 Azure VM 规模集和 Azure 库 OpenLogic CentOS 6.6 或 7.0 映像创建一组 Intel Lustre 2.7 客户端,并装载现有的 Intel Lustre 文件系统 |
使用机密磁盘加密 机密 VM 规模集 |
使用此模板,可以使用多个 Windows 和 Linux 映像版本的最新修补版本部署启用了机密 OS 磁盘加密的机密 VM 规模集。 |
Couchbase Enterprise |
用于安装 Couchbase Enterprise 的 Azure 资源管理器 (ARM) 模板 |
使用 jumpbox 创建和加密新的 Linux VMSS |
此模板使用最新的 Linux 映像部署 Linux VMSS,添加数据卷,然后加密每个 Linux VMSS 实例的数据卷。 它还在与具有专用 IP 地址的 Linux VMSS 实例相同的虚拟网络中部署具有公共 IP 地址的 jumpbox。 这允许通过其公共 IP 地址连接到 jumpbox,然后通过专用 IP 地址连接到 Linux VMSS 实例。 |
使用 jumpbox 创建和加密新的 Windows VMSS |
使用此模板,可以使用服务器 Windows 版本的最新修补版本部署简单的 Windows VM 规模集。 此模板还会在同一虚拟网络中部署具有公共 IP 地址的 jumpbox。 可以通过此公共 IP 地址连接到 jumpbox,然后通过专用 IP 地址从那里连接到规模集中的 VM。此模板在 WINDOWS VM 的 VM 规模集上启用加密。 |
部署启用了 NSG 的 3 Nodetype 安全群集 |
此模板允许在Standard_D2大小 VM 上部署运行 Windows Server 2016 数据中心的安全 3 节点类型 Service Fabric 群集。 使用此模板,可以使用网络安全组控制入站和出站网络流量。 |
部署 5 节点安全群集 |
使用此模板,可以在Standard_D2_v2大小 VMSS 上部署运行 Windows Server 2019 Datacenter 的安全 5 节点 Service Fabric 群集。 |
部署 5 节点 Ubuntu Service Fabric 群集 |
此模板允许在Standard_D2_V2大小 VMSS 上部署运行 Ubuntu 的安全 5 节点 Service Fabric 群集。 |
部署 Linux VMSS 主要/辅助体系结构 |
使用此模板,可以在主要辅助体系结构中使用自定义脚本扩展部署 Linux VMSS |
部署 Nextflow 基因组学群集 |
此模板使用 Jumpbox、n 群集节点、docker 支持和共享存储部署可缩放的 Nextflow 群集。 |
将规模集部署到现有 vnet |
此模板将 VM 规模集部署到一个前发的 vnet 中。 |
将规模集部署到 Windows 上的现有 vnet |
此模板将 Windows 2016 Datacenter VM 规模集部署到除名资源组、vnet 和子网中。 |
使用 Linux VM 部署简单的 VM 规模集 |
使用此模板,可以使用最新修补版本的 Ubuntu Linux 14.04.4-LTS 或 16.04-LTS 部署简单的 Linux VM 规模集。 这些 VM 位于具有 SSH 连接的 NAT 规则的负载均衡器后面。 |
使用 Linux VM 和 Jumpbox 部署简单的 VM 规模集 |
使用此模板,可以使用最新修补版本的 Ubuntu Linux 15.10 或 14.04.4-LTS 部署简单的 VM 规模集。 还有一个 jumpbox,用于启用 VM 位于 VNet 外部的连接。 |
使用 Windows VM 部署简单的 VM 规模集 |
使用此模板,可以使用各种 Windows 版本的最新修补版本部署简单的 Windows VM 规模集。 这些 VM 位于负载均衡器后面,其中包含用于 rdp 连接的 NAT 规则。 |
使用 Windows VM 和 Jumpbox 部署简单的 VM 规模集 |
使用此模板,可以使用服务器 Windows 版本的最新修补版本部署简单的 Windows VM 规模集。 此模板还会在同一虚拟网络中部署具有公共 IP 地址的 jumpbox。 可以通过此公共 IP 地址连接到 jumpbox,然后通过专用 IP 地址从那里连接到规模集中的 VM。 |
部署支持受信任的启动的 Windows VM 规模集 |
使用此模板,可以使用最新修补版本的 Windows Server 2016、Windows Server 2019 或 Windows Server 2022 Azure Edition 部署支持受信任的启动的 Windows VM 规模集。 这些 VM 位于具有 RDP 连接的 NAT 规则的负载均衡器后面。 如果启用 Secureboot 和 vTPM,则会在 VMSS 上安装来宾证明扩展。 此扩展将通过云执行远程 证明。 |
从 Azure 数据科学 VM 部署 VM 规模集 |
这些模板使用 Azure 数据科学 VM 作为源映像部署 VM 规模集。 |
使用 Linux 自定义映像部署 VM 规模集 |
此模板允许在规模集中部署自定义 VM Linux 映像。 这些 VM 位于具有 HTTP 负载均衡的负载均衡器后面(默认情况下在端口 80 上)。 该示例使用自定义脚本执行应用程序部署和更新,可能需要为自己的更新过程提供自定义脚本。 必须在创建 VMSS 的同一订阅和区域中提供 VM 的通用化映像。 |
使用 Windows 自定义映像部署 VM 规模集 |
使用此模板可以部署简单的 VM 规模集,从而部署自定义 Windows 映像。 这些 VM 位于具有 HTTP 负载均衡的负载均衡器后面(默认情况下在端口 80 上) |
使用 Linux VM 和自动缩放 部署 VM 规模集 |
使用此模板,可以使用最新修补版本的 Ubuntu Linux 15.04 或 14.04.4-LTS 部署简单的 LINUX VM 规模集。 这些 VM 位于具有 SSH 连接的 NAT 规则的负载均衡器后面。它们还集成了自动缩放 |
在 ILB 后面部署具有 Linux VM 的 VM 规模集 |
使用此模板,可以使用最新修补版本的 Ubuntu Linux 15.10 或 14.04.4-LTS 部署 VM 规模集。 这些 VM 位于内部负载均衡器后面,其中包含 SSH 连接的 NAT 规则。 |
在可用性区域中部署具有 Linux VM 的 VM 规模集 |
使用此模板,可以使用最新修补版本的 Ubuntu Linux 14.04.4-LTS 或 16.04-LTS 部署简单的 Linux VM 规模集。 这些 VM 位于具有 SSH 连接的 NAT 规则的负载均衡器后面。 |
使用 Windows VM 和自动缩放 部署 VM 规模集 |
使用此模板,可以使用最新修补版本的 Windows 2008-R2-SP1、2012-Datacenter 或 2012-R2-Datacenter 部署简单的 WINDOWS VM 规模集。 这些 VM 位于具有 RDP 连接的 NAT 规则的负载均衡器后面。 它们还集成了自动缩放 |
在可用性区域中部署具有 Windows VM 的 VM 规模集 |
使用此模板,可以使用各种 Windows 版本的最新修补版本部署 Windows VM 的 VM 规模集。 这些 VM 位于负载均衡器后面,其中包含用于 rdp 连接的 NAT 规则。 |
部署将每个 VM 连接到 Azure 文件共享的 VMSS |
此模板部署 Ubuntu 虚拟机规模集,并使用自定义脚本扩展将每个 VM 连接到 Azure 文件共享 |
使用自定义脚本扩展部署 Windows VM 规模集 |
使用此模板,可以使用各种 Windows 版本的最新修补版本部署 Windows VM 的 VM 规模集。 这些 VM 具有用于自定义的自定义脚本扩展,并且位于负载均衡器后面,其中包含用于 rdp 连接的 NAT 规则。 |
使用 Azure 应用程序网关部署 Windows VM 规模集 |
此模板允许部署与 Azure 应用程序网关集成的简单 Windows VM 规模集,并支持最多 1000 个 VM |
为虚拟机 ScaleSet 部署自动缩放设置 |
此模板允许为虚拟机 ScaleSet 资源部署自动缩放策略。 |
使用 Azure 应用程序网关部署 Ubuntu VM 规模集 |
此模板允许部署与 Azure 应用程序网关集成的简单 Ubuntu VM 规模集,并支持最多 1000 个 VM |
部署 Darktrace 自动缩放 vSensors |
此模板允许你部署 Darktrace vSensors 的自动自动缩放部署 |
使用 VM 规模集、Azure 文件和 Mysql 部署 Drupal |
在负载均衡器/NAT 后面部署 VM 规模集,& 运行 Drupal(Apache/PHP)的每个 VM。 所有节点共享创建的 Azure 文件共享存储和 MySQL 数据库 |
使用 LB 探测和自动修复部署 VM 规模集 |
使用此模板,可以在配置了运行状况探测的负载均衡器后面部署一组 Linux VM 规模集。 规模集还启用了自动实例修复策略,宽限期为 30 分钟。 |
使用 Python Bottle 服务器部署 VM 规模集 & 自动缩放 |
在负载均衡器/NAT 后面部署 VM 规模集 & 运行一个简单的 Python Bottle 应用的每个 VM。 使用自动缩放配置的规模集,可根据需要横向扩展 & |
部署 Windows VMSS 配置 Windows 特征 SSL DSC |
此模板允许你部署两个 Windows VMSS,配置 WINDOWS 功能,如 IIS/Web 角色、.Net Framework 4.5、windows 身份验证、应用程序初始化、下载应用程序部署包、URL 重写 & 使用 DSC 和 Azure Key Vault 的 SSL 配置 |
在现有 Linux VMSS 上禁用加密 |
在现有 Linux VMSS 上禁用加密 |
在正在运行的 Linux VMSS 上启用数据卷加密 |
在正在运行的 Linux VMSS 上启用数据卷加密 |
在虚拟机规模集上安装 Elasticsearch 群集 |
此模板在虚拟机规模集上部署 Elasticsearch 群集。 该模板预配 3 个专用主节点,其中包含在托管磁盘上运行的可选数据节点数。 |
RHEL 上的 JBoss EAP (群集 VMSS) |
此模板允许创建运行 JBoss EAP 7.4 群集的 RHEL 8.6 VMSS 实例,并部署名为 eap-session-replication 的 Web 应用程序,可以使用部署时配置的 JBoss EAP 用户名和密码登录到管理控制台。 |
使用 VMSS 群集自动缩放程序 |
此模板部署使用 kubeadm 初始化的 vanilla kubernetes 群集。 它使用群集自动缩放程序部署配置的主节点。 预配置的虚拟机规模集(VMSS)也会部署并自动附加到群集。 然后,群集自动缩放程序可以根据群集的工作负荷自动纵向扩展/缩减群集。 |
使用 Linux VM 和每个 VM 的公共 IPv4 简单 VM 规模集 |
此模板演示如何为每个 VM 部署一个包含负载均衡器、入站 NAT 规则和公共 IP 的简单规模集。 |
已启用 SSL 的 VM 规模集 |
使用安全部署的 SSL 证书部署 Web 服务器配置 Azure Key Vault |
使用可用性区域 虚拟机规模集示例 |
此模板创建一个 VMSS,该 VMSS 放置在具有负载均衡器的单独可用性区域中。 |
运行 IIS WebApp 的自动缩放的 VM 规模集 |
部署运行 IIS 的 Windows VM 规模集和非常基本的 .NET MVC Web 应用。 VMSS PowerShell DSC 扩展用于执行 IIS 安装和 WebDeploy 包部署。 |
Azure 虚拟网络(VNET)中 IPv6 的 VMSS 部署 |
使用双堆栈 IPv4/IPv6 VNET 和 Std 负载均衡器创建 VM 规模集。 |
VMSS 灵活业务流程模式快速入门 Linux |
此模板部署一个简单的 VM 规模集,其中包含 Azure 负载均衡器后面的实例。 VM 规模集处于灵活的业务流程模式。 使用 os 参数选择 Linux(Ubuntu)或 Windows(Windows Server Datacenter 2019)部署。 注意:本快速入门模板允许从任何 Internet 地址访问 VM 管理端口(SSH、RDP),并且不应用于生产部署。 |
使用公共 IP 前缀 |
用于部署具有公共 IP 前缀的 VMSS 的模板 |
Terraform (AzAPI 提供程序)资源定义
可以使用目标操作部署 virtualMachineScaleSets 资源类型:
- 资源组
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
资源格式
若要创建 Microsoft.Compute/virtualMachineScaleSets 资源,请将以下 Terraform 添加到模板。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Compute/virtualMachineScaleSets@2022-11-01"
name = "string"
identity = {
type = "string"
userAssignedIdentities = {
{customized property} = {
}
}
}
location = "string"
plan = {
name = "string"
product = "string"
promotionCode = "string"
publisher = "string"
}
sku = {
capacity = int
name = "string"
tier = "string"
}
tags = {
{customized property} = "string"
}
zones = [
"string"
]
body = jsonencode({
extendedLocation = {
name = "string"
type = "string"
}
properties = {
additionalCapabilities = {
hibernationEnabled = bool
ultraSSDEnabled = bool
}
automaticRepairsPolicy = {
enabled = bool
gracePeriod = "string"
repairAction = "string"
}
constrainedMaximumCapacity = bool
doNotRunExtensionsOnOverprovisionedVMs = bool
hostGroup = {
id = "string"
}
orchestrationMode = "string"
overprovision = bool
platformFaultDomainCount = int
priorityMixPolicy = {
baseRegularPriorityCount = int
regularPriorityPercentageAboveBase = int
}
proximityPlacementGroup = {
id = "string"
}
scaleInPolicy = {
forceDeletion = bool
rules = [
"string"
]
}
singlePlacementGroup = bool
spotRestorePolicy = {
enabled = bool
restoreTimeout = "string"
}
upgradePolicy = {
automaticOSUpgradePolicy = {
disableAutomaticRollback = bool
enableAutomaticOSUpgrade = bool
useRollingUpgradePolicy = bool
}
mode = "string"
rollingUpgradePolicy = {
enableCrossZoneUpgrade = bool
maxBatchInstancePercent = int
maxSurge = bool
maxUnhealthyInstancePercent = int
maxUnhealthyUpgradedInstancePercent = int
pauseTimeBetweenBatches = "string"
prioritizeUnhealthyInstances = bool
rollbackFailedInstancesOnPolicyBreach = bool
}
}
virtualMachineProfile = {
applicationProfile = {
galleryApplications = [
{
configurationReference = "string"
enableAutomaticUpgrade = bool
order = int
packageReferenceId = "string"
tags = "string"
treatFailureAsDeploymentFailure = bool
}
]
}
billingProfile = {
maxPrice = int
}
capacityReservation = {
capacityReservationGroup = {
id = "string"
}
}
diagnosticsProfile = {
bootDiagnostics = {
enabled = bool
storageUri = "string"
}
}
evictionPolicy = "string"
extensionProfile = {
extensions = [
{
name = "string"
properties = {
autoUpgradeMinorVersion = bool
enableAutomaticUpgrade = bool
forceUpdateTag = "string"
protectedSettings = ?
protectedSettingsFromKeyVault = {
secretUrl = "string"
sourceVault = {
id = "string"
}
}
provisionAfterExtensions = [
"string"
]
publisher = "string"
settings = ?
suppressFailures = bool
type = "string"
typeHandlerVersion = "string"
}
}
]
extensionsTimeBudget = "string"
}
hardwareProfile = {
vmSizeProperties = {
vCPUsAvailable = int
vCPUsPerCore = int
}
}
licenseType = "string"
networkProfile = {
healthProbe = {
id = "string"
}
networkApiVersion = "string"
networkInterfaceConfigurations = [
{
name = "string"
properties = {
deleteOption = "string"
disableTcpStateTracking = bool
dnsSettings = {
dnsServers = [
"string"
]
}
enableAcceleratedNetworking = bool
enableFpga = bool
enableIPForwarding = bool
ipConfigurations = [
{
name = "string"
properties = {
applicationGatewayBackendAddressPools = [
{
id = "string"
}
]
applicationSecurityGroups = [
{
id = "string"
}
]
loadBalancerBackendAddressPools = [
{
id = "string"
}
]
loadBalancerInboundNatPools = [
{
id = "string"
}
]
primary = bool
privateIPAddressVersion = "string"
publicIPAddressConfiguration = {
name = "string"
properties = {
deleteOption = "string"
dnsSettings = {
domainNameLabel = "string"
}
idleTimeoutInMinutes = int
ipTags = [
{
ipTagType = "string"
tag = "string"
}
]
publicIPAddressVersion = "string"
publicIPPrefix = {
id = "string"
}
}
sku = {
name = "string"
tier = "string"
}
}
subnet = {
id = "string"
}
}
}
]
networkSecurityGroup = {
id = "string"
}
primary = bool
}
}
]
}
osProfile = {
adminPassword = "string"
adminUsername = "string"
allowExtensionOperations = bool
computerNamePrefix = "string"
customData = "string"
linuxConfiguration = {
disablePasswordAuthentication = bool
enableVMAgentPlatformUpdates = bool
patchSettings = {
assessmentMode = "string"
automaticByPlatformSettings = {
rebootSetting = "string"
}
patchMode = "string"
}
provisionVMAgent = bool
ssh = {
publicKeys = [
{
keyData = "string"
path = "string"
}
]
}
}
requireGuestProvisionSignal = bool
secrets = [
{
sourceVault = {
id = "string"
}
vaultCertificates = [
{
certificateStore = "string"
certificateUrl = "string"
}
]
}
]
windowsConfiguration = {
additionalUnattendContent = [
{
componentName = "Microsoft-Windows-Shell-Setup"
content = "string"
passName = "OobeSystem"
settingName = "string"
}
]
enableAutomaticUpdates = bool
enableVMAgentPlatformUpdates = bool
patchSettings = {
assessmentMode = "string"
automaticByPlatformSettings = {
rebootSetting = "string"
}
enableHotpatching = bool
patchMode = "string"
}
provisionVMAgent = bool
timeZone = "string"
winRM = {
listeners = [
{
certificateUrl = "string"
protocol = "string"
}
]
}
}
}
priority = "string"
scheduledEventsProfile = {
osImageNotificationProfile = {
enable = bool
notBeforeTimeout = "string"
}
terminateNotificationProfile = {
enable = bool
notBeforeTimeout = "string"
}
}
securityProfile = {
encryptionAtHost = bool
securityType = "string"
uefiSettings = {
secureBootEnabled = bool
vTpmEnabled = bool
}
}
serviceArtifactReference = {
id = "string"
}
storageProfile = {
dataDisks = [
{
caching = "string"
createOption = "string"
deleteOption = "string"
diskIOPSReadWrite = int
diskMBpsReadWrite = int
diskSizeGB = int
lun = int
managedDisk = {
diskEncryptionSet = {
id = "string"
}
securityProfile = {
diskEncryptionSet = {
id = "string"
}
securityEncryptionType = "string"
}
storageAccountType = "string"
}
name = "string"
writeAcceleratorEnabled = bool
}
]
diskControllerType = "string"
imageReference = {
communityGalleryImageId = "string"
id = "string"
offer = "string"
publisher = "string"
sharedGalleryImageId = "string"
sku = "string"
version = "string"
}
osDisk = {
caching = "string"
createOption = "string"
deleteOption = "string"
diffDiskSettings = {
option = "string"
placement = "string"
}
diskSizeGB = int
image = {
uri = "string"
}
managedDisk = {
diskEncryptionSet = {
id = "string"
}
securityProfile = {
diskEncryptionSet = {
id = "string"
}
securityEncryptionType = "string"
}
storageAccountType = "string"
}
name = "string"
osType = "string"
vhdContainers = [
"string"
]
writeAcceleratorEnabled = bool
}
}
userData = "string"
}
zoneBalance = bool
}
})
}
属性值
AdditionalCapabilities
名字 | 描述 | 价值 |
---|---|---|
hibernationEnabled | 在 VM 上启用或禁用休眠功能的标志。 | bool |
ultraSSDEnabled | 启用或禁用在 VM 或 VMSS 上具有一个或多个具有UltraSSD_LRS存储帐户类型的托管数据磁盘的功能的标志。 仅当此属性已启用时,才能将存储帐户类型UltraSSD_LRS的托管磁盘添加到虚拟机或虚拟机规模集。 | bool |
AdditionalUnattendContent
名字 | 描述 | 价值 |
---|---|---|
componentName | 组件名称。 目前,唯一允许的值是Microsoft-Windows-Shell-Setup。 | “Microsoft-Windows-Shell-Setup” |
内容 | 指定为指定路径和组件添加到 unattend.xml 文件的 XML 格式化内容。 XML 必须小于 4KB,并且必须包含要插入的设置或功能的根元素。 | 字符串 |
passName | 传递名称。 目前,唯一允许的值是 OobeSystem。 | “OobeSystem” |
settingName | 指定内容应用到的设置的名称。 可能的值包括:FirstLogonCommands 和 AutoLogon。 | “AutoLogon” “FirstLogonCommands” |
ApiEntityReference
名字 | 描述 | 价值 |
---|---|---|
id | /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... 形式的 ARM 资源 ID | 字符串 |
ApplicationProfile
名字 | 描述 | 价值 |
---|---|---|
galleryApplications | 指定应提供给 VM/VMSS 的库应用程序 | VMGalleryApplication[] |
AutomaticOSUpgradePolicy
名字 | 描述 | 价值 |
---|---|---|
disableAutomaticRollback | 是否应禁用 OS 映像回滚功能。 默认值为 false。 | bool |
enableAutomaticOSUpgrade | 指示当较新版本的 OS 映像可用时,是否应以滚动方式自动将 OS 升级应用于规模集实例。 默认值为 false。 如果此选项设置为基于 Windows 的规模集,enableAutomaticUpdates 将自动设置为 false,并且不能设置为 true。 |
bool |
useRollingUpgradePolicy | 指示是否应在自动 OS 升级期间使用滚动升级策略。 默认值为 false。 如果未在 VMSS 上定义任何策略,则自动 OS 升级将回退到默认策略。 | bool |
AutomaticRepairsPolicy
名字 | 描述 | 价值 |
---|---|---|
启用 | 指定是否应在虚拟机规模集上启用自动修复。 默认值为 false。 | bool |
gracePeriod | 由于 VM 上的状态更改,自动修复暂停的时间。 状态更改完成后的宽限时间开始。 这有助于避免过早或意外修复。 持续时间应采用 ISO 8601 格式指定。 允许的最小宽限期为 10 分钟(PT10M),这也是默认值。 允许的最大宽限期为 90 分钟(PT90M)。 | 字符串 |
repairAction | 用于修复规模集中运行不正常的虚拟机的修复操作类型(替换、重启、重置映像)。 默认值将被替换。 | “Reimage” “Replace” “重启” |
BillingProfile
名字 | 描述 | 价值 |
---|---|---|
maxPrice | 指定愿意为 Azure 现成 VM/VMSS 付费的最高价格。 这个价格是美元。 此价格将与 VM 大小的当前 Azure 现成价格进行比较。 此外,价格是在创建/更新 Azure 现成 VM/VMSS 时进行比较的,并且仅当 maxPrice 大于当前 Azure 现成价格时,该操作才会成功。 如果当前 Azure 现成价格超出创建 VM/VMSS 后的最大价格,maxPrice 还将用于逐出 Azure 现成 VM/VMSS。 可能的值包括: - 大于零的任何十进制值。 示例:0.01538 -1 – 指示按需 up-to 的默认价格。 可以将 maxPrice 设置为 -1,以指示出于价格原因不应逐出 Azure Spot VM/VMSS。 此外,如果未提供默认最大价格,则 -1。 最低 API 版本:2019-03-01。 |
int |
BootDiagnostics
名字 | 描述 | 价值 |
---|---|---|
启用 | 是否应在虚拟机上启用启动诊断。 | bool |
storageUri | 用于放置控制台输出和屏幕截图的存储帐户的 URI。 如果在启用启动诊断时未指定 storageUri,则会使用托管存储。 |
字符串 |
CapacityReservationProfile
名字 | 描述 | 价值 |
---|---|---|
capacityReservationGroup | 指定容量预留组资源 ID,该 ID 应用于分配已保留足够容量的虚拟机或规模集 VM 实例。 有关更多详细信息,请参阅 https://aka.ms/CapacityReservation。 | SubResource |
DiagnosticsProfile
名字 | 描述 | 价值 |
---|---|---|
bootDiagnostics | 启动诊断是一项调试功能,可用于查看控制台输出和屏幕截图来诊断 VM 状态。 注意:如果指定 storageUri,请确保存储帐户与 VM 位于同一区域和订阅中。 可以轻松查看控制台日志的输出。 通过 Azure,还可以从虚拟机监控程序查看 VM 的屏幕截图。 |
BootDiagnostics |
DiffDiskSettings
名字 | 描述 | 价值 |
---|---|---|
选择 | 指定操作系统磁盘的临时磁盘设置。 | “Local” |
放置 | 指定操作系统磁盘的临时磁盘放置。 可能的值包括: CacheDisk ResourceDisk 默认值:如果为 VM 大小配置了缓存磁盘,则 请参阅 /azure/virtual-machines/windows/size 和 /azure/virtual-machines/linux/size 上的 Windows VM 的 VM 大小文档,以检查哪些 VM 大小公开缓存磁盘。 |
“CacheDisk” “ResourceDisk” |
DiskEncryptionSetParameters
名字 | 描述 | 价值 |
---|---|---|
id | 资源 ID | 字符串 |
ExtendedLocation
名字 | 描述 | 价值 |
---|---|---|
名字 | 扩展位置的名称。 | 字符串 |
类型 | 扩展位置的类型。 | “EdgeZone” |
ImageReference
名字 | 描述 | 价值 |
---|---|---|
communityGalleryImageId | 为 vm 部署指定社区库映像唯一 ID。 这可以从社区库映像 GET 调用中提取。 | 字符串 |
id | 资源 ID | 字符串 |
提供 | 指定用于创建虚拟机的平台映像或市场映像的产品/服务。 | 字符串 |
发行人 | 映像发布者。 | 字符串 |
sharedGalleryImageId | 为 vm 部署指定共享库映像唯一 ID。 这可以从共享库映像 GET 调用中提取。 | 字符串 |
sku | 映像 SKU。 | 字符串 |
版本 | 指定用于创建虚拟机的平台映像或市场映像的版本。 允许的格式为 Major.Minor.Build 或“latest”。 主要、次要和生成是十进制数。 指定“latest”以在部署时使用可用映像的最新版本。 即使使用“最新”,即使新版本可用,VM 映像也不会在部署后自动更新。 请不要对库映像部署使用字段“version”,库映像应始终使用“id”字段进行部署,若要使用库映像的“latest”版本,只需在“id”字段中设置“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/images/{imageName}”,而不输入版本。 | 字符串 |
KeyVaultSecretReference
名字 | 描述 | 价值 |
---|---|---|
secretUrl | 引用 Key Vault 中的机密的 URL。 | string (必需) |
sourceVault | 包含机密的 Key Vault 的相对 URL。 | SubResource (必需) |
LinuxConfiguration
名字 | 描述 | 价值 |
---|---|---|
disablePasswordAuthentication | 指定是否应禁用密码身份验证。 | bool |
enableVMAgentPlatformUpdates | 指示是否为 Linux 虚拟机启用了 VMAgent 平台更新。 默认值为 false。 | bool |
patchSettings | [预览功能]指定与 Linux 上的 VM 来宾修补相关的设置。 | LinuxPatchSettings |
provisionVMAgent | 指示是否应在虚拟机上预配虚拟机代理。 如果未在请求正文中指定此属性,则默认行为是将其设置为 true。 这将确保 VM 代理安装在 VM 上,以便以后可以向 VM 添加扩展。 |
bool |
ssh | 指定 Linux OS 的 ssh 密钥配置。 | SshConfiguration |
LinuxPatchSettings
名字 | 描述 | 价值 |
---|---|---|
assessmentMode | 指定 IaaS 虚拟机的 VM 来宾修补评估模式。 可能的值包括: ImageDefault - 控制虚拟机上的修补程序评估的时间。 AutomaticByPlatform - 平台将触发定期修补评估。 属性 provisionVMAgent 必须为 true。 |
“AutomaticByPlatform” “ImageDefault” |
automaticByPlatformSettings | 指定 Linux 上的 VM 来宾修补中修补程序模式 AutomaticByPlatform 的其他设置。 | LinuxVMGuestPatchAutomaticByPlatformSettings |
patchMode | 指定 VM 来宾修补到 IaaS 虚拟机的模式,或与将 OrchestrationMode 作为灵活业务流程模式的虚拟机规模集关联的虚拟机。 可能的值包括: ImageDefault - 使用虚拟机的默认修补配置。 AutomaticByPlatform - 虚拟机将由平台自动更新。 属性 provisionVMAgent 必须为 true |
“AutomaticByPlatform” “ImageDefault” |
LinuxVMGuestPatchAutomaticByPlatformSettings
名字 | 描述 | 价值 |
---|---|---|
rebootSetting | 指定所有 AutomaticByPlatform 修补程序安装操作的重新启动设置。 | “Always” “IfRequired” “永不” “未知” |
Microsoft.Compute/virtualMachineScaleSets
名字 | 描述 | 价值 |
---|---|---|
extendedLocation | 虚拟机规模集的扩展位置。 | ExtendedLocation |
身份 | 虚拟机规模集的标识(如果已配置)。 | VirtualMachineScaleSetIdentity |
位置 | 资源位置 | string (必需) |
名字 | 资源名称 | string (必需) |
计划 | 指定有关用于创建虚拟机的市场映像的信息。 此元素仅用于市场映像。 必须先启用映像以编程方式使用映像,然后才能从 API 使用市场映像。 在 Azure 门户中,找到要使用的市场映像,然后单击 想要以编程方式部署,开始使用 ->。 输入任何必需的信息,然后单击“保存 |
计划 |
性能 | 描述虚拟机规模集的属性。 | VirtualMachineScaleSetProperties |
sku | 虚拟机规模集 SKU。 | Sku |
标签 | 资源标记 | 标记名称和值的字典。 |
类型 | 资源类型 | “Microsoft.Compute/virtualMachineScaleSets@2022-11-01” |
区 | 虚拟机规模集区域。 注意:只能在创建规模集时设置可用性区域 | string[] |
OSImageNotificationProfile
名字 | 描述 | 价值 |
---|---|---|
使 | 指定是启用或禁用 OS 映像计划事件。 | bool |
notBeforeTimeout | 虚拟机重新映像或升级其 OS 的时间长度将不得不在事件自动批准(超时)之前批准 OS 映像计划事件。 配置以 ISO 8601 格式指定,该值必须为 15 分钟(PT15M) | 字符串 |
PatchSettings
名字 | 描述 | 价值 |
---|---|---|
assessmentMode | 指定 IaaS 虚拟机的 VM 来宾修补程序评估模式。 可能的值包括: ImageDefault - 控制虚拟机上的修补程序评估的时间。 AutomaticByPlatform - 平台将触发定期修补评估。 属性 provisionVMAgent 必须为 true。 |
“AutomaticByPlatform” “ImageDefault” |
automaticByPlatformSettings | 指定 Windows 上的 VM 来宾修补中修补程序模式 AutomaticByPlatform 的其他设置。 | WindowsVMGuestPatchAutomaticByPlatformSettings |
enableHotpatching | 使客户无需重新启动即可修补其 Azure VM。 对于 enableHotpatching,必须将“provisionVMAgent”设置为 true,并且“patchMode”必须设置为“AutomaticByPlatform”。 | bool |
patchMode | 指定 VM 来宾修补到 IaaS 虚拟机的模式,或与将 OrchestrationMode 作为灵活业务流程模式的虚拟机规模集关联的虚拟机。 可能的值包括: 手动 - 可以控制将修补程序应用到虚拟机。 为此,请在 VM 中手动应用修补程序。 在此模式下,自动更新处于禁用状态;属性 WindowsConfiguration.enableAutomaticUpdates 必须为 false AutomaticByOS - 虚拟机将由 OS 自动更新。 属性 WindowsConfiguration.enableAutomaticUpdates 必须为 true。 AutomaticByPlatform - 虚拟机将由平台自动更新。 属性 provisionVMAgent 和 WindowsConfiguration.enableAutomaticUpdates 必须为 true |
“AutomaticByOS” “AutomaticByPlatform” “Manual” |
计划
名字 | 描述 | 价值 |
---|---|---|
名字 | 计划 ID。 | 字符串 |
产品 | 指定来自市场的映像的产品。 此值与 imageReference 元素下的 Offer 相同。 | 字符串 |
promotionCode | 促销代码。 | 字符串 |
发行人 | 发布者 ID。 | 字符串 |
PriorityMixPolicy
名字 | 描述 | 价值 |
---|---|---|
baseRegularPriorityCount | 将在横向扩展时在此规模集中创建的常规优先级 VM 的基数。 | int 约束: 最小值 = 0 |
regularPriorityPercentageAboveBase | 达到基本常规优先级计数后,VM 实例的百分比应使用常规优先级。 | int 约束: 最小值 = 0 最大值 = 100 |
PublicIPAddressSku
名字 | 描述 | 价值 |
---|---|---|
名字 | 指定公共 IP SKU 名称 | “Basic” “Standard” |
层 | 指定公共 IP SKU 层 | “Global” “区域” |
ResourceTags
名字 | 描述 | 价值 |
---|
RollingUpgradePolicy
名字 | 描述 | 价值 |
---|---|---|
enableCrossZoneUpgrade | 允许 VMSS 在构造升级批处理时忽略 AZ 边界。 考虑 Update 域和 maxBatchInstancePercent 以确定批大小。 | bool |
maxBatchInstancePercent | 一批滚动升级同时升级的总虚拟机实例的最大百分比。 由于这是一个最大值,因此以前的或将来的批中的不正常实例可能会导致批处理中的实例百分比降低,以确保更高的可靠性。 此参数的默认值为 20%。 | int 约束: 最小值 = 5 最大值 = 100 |
maxSurge | 创建新的虚拟机来升级规模集,而不是更新现有虚拟机。 为每个批创建新虚拟机后,将删除现有虚拟机。 | bool |
maxUnhealthyInstancePercent | 规模集中可能同时运行不正常的虚拟机实例的最大百分比,无论是由于升级,还是虚拟机运行状况检查在滚动升级中止之前处于不正常状态。 在启动任何批处理之前,将检查此约束。 此参数的默认值为 20%。 | int 约束: 最小值 = 5 最大值 = 100 |
maxUnhealthyUpgradedInstancePercent | 可发现处于不正常状态的已升级虚拟机实例的最大百分比。 升级每个批处理后,将进行此检查。 如果超过此百分比,滚动更新将中止。 此参数的默认值为 20%。 | int 约束: 最小值 = 0 最大值 = 100 |
pauseTimeBetweenBatches | 完成一批中所有虚拟机的更新和开始下一批之间的等待时间。 持续时间应采用 ISO 8601 格式指定。 默认值为 0 秒(PT0S)。 | 字符串 |
prioritizeUnhealthyInstances | 在任何正常运行的实例之前,升级规模集中的所有不正常实例。 | bool |
rollbackFailedInstancesOnPolicyBreach | 如果违反滚动升级策略,回滚失败实例到以前的模型。 | bool |
ScaleInPolicy
名字 | 描述 | 价值 |
---|---|---|
forceDeletion | 此属性允许指定在虚拟机规模集进行缩减时,是否必须强制删除选择删除的虚拟机。(预览版中的功能) | bool |
规则 | 在虚拟机规模集中进行缩放时要遵循的规则。 可能的值包括: 默认 当虚拟机规模集进行缩放时,如果规模集是区域性规模集,则规模集将首先跨区域均衡。 然后,它将尽可能跨容错域进行均衡。 在每个容错域中,选择删除的虚拟机将是不受横向扩展保护的最新虚拟机。 OldestVM 当虚拟机规模集正在缩减时,将选择不从横向扩展保护的最早虚拟机进行删除。 对于区域虚拟机规模集,规模集将首先跨区域均衡。 在每个区域中,将选择不受保护的最早虚拟机进行删除。 NewestVM 当虚拟机规模集进行缩减时,将选择不受横向缩减保护的最新虚拟机以供删除。 对于区域虚拟机规模集,规模集将首先跨区域均衡。 在每个区域中,将选择不受保护的最新虚拟机进行删除。 |
包含任一项的字符串数组: “Default” “NewestVM” “OldestVM” |
ScheduledEventsProfile
名字 | 描述 | 价值 |
---|---|---|
osImageNotificationProfile | 指定 OS 映像计划事件相关配置。 | OSImageNotificationProfile |
terminateNotificationProfile | 指定终止计划事件相关配置。 | TerminateNotificationProfile |
SecurityProfile
名字 | 描述 | 价值 |
---|---|---|
encryptionAtHost | 用户可以在请求中使用此属性来启用或禁用虚拟机或虚拟机规模集的主机加密。 这将为所有磁盘启用加密,包括主机本身的资源/临时磁盘。 默认值:除非将此属性设置为 true,否则将禁用主机上的加密。 |
bool |
securityType | 指定虚拟机的 SecurityType。 必须将其设置为任何指定值才能启用 UefiSettings。 默认值:除非设置了此属性,否则不会启用 UefiSettings。 |
“ConfidentialVM” “TrustedLaunch” |
uefiSettings | 指定在创建虚拟机时使用的安全启动和 vTPM 等安全设置。 最低 API 版本:2020-12-01 |
UefiSettings |
ServiceArtifactReference
名字 | 描述 | 价值 |
---|---|---|
id | 以 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/gallerys/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} 的形式的服务项目引用 ID | 字符串 |
Sku
名字 | 描述 | 价值 |
---|---|---|
能力 | 指定规模集中的虚拟机数。 | int |
名字 | SKU 名称。 | 字符串 |
层 | 指定规模集中的虚拟机层。 可能的值: 标准 基本 |
字符串 |
SpotRestorePolicy
名字 | 描述 | 价值 |
---|---|---|
启用 | 启用现成Try-Restore 功能,其中将尝试根据容量可用性和定价约束以机会方式还原逐出的 VMSS SPOT 实例 | bool |
restoreTimeout | 超时值表示为 ISO 8601 持续时间,之后平台不会尝试还原 VMSS SPOT 实例 | 字符串 |
SshConfiguration
名字 | 描述 | 价值 |
---|---|---|
publicKeys | 用于通过基于 Linux 的 VM 进行身份验证的 SSH 公钥列表。 | SshPublicKey[] |
SshPublicKey
名字 | 描述 | 价值 |
---|---|---|
keyData | 用于通过 ssh 向 VM 进行身份验证的 SSH 公钥证书。 密钥必须至少为 2048 位且采用 ssh-rsa 格式。 有关创建 ssh 密钥,请参阅 [在 Azure 中为 Linux VM 在 Linux 和 Mac 上创建 SSH 密钥]/azure/virtual-machines/linux/create-ssh-keys-detailed。 |
字符串 |
路径 | 指定存储 ssh 公钥的已创建 VM 上的完整路径。 如果文件已存在,则指定的键将追加到该文件中。 示例:/home/user/.ssh/authorized_keys | 字符串 |
SubResource
名字 | 描述 | 价值 |
---|---|---|
id | 资源 ID | 字符串 |
TerminateNotificationProfile
名字 | 描述 | 价值 |
---|---|---|
使 | 指定是启用或禁用终止计划事件。 | bool |
notBeforeTimeout | 删除虚拟机的可配置时间长度可能需要在事件自动批准(超时)之前批准终止计划事件。 必须以 ISO 8601 格式指定配置,默认值为 5 分钟(PT5M) | 字符串 |
UefiSettings
名字 | 描述 | 价值 |
---|---|---|
secureBootEnabled | 指定是否应在虚拟机上启用安全启动。 最低 API 版本:2020-12-01 |
bool |
vTpmEnabled | 指定是否应在虚拟机上启用 vTPM。 最低 API 版本:2020-12-01 |
bool |
UpgradePolicy
名字 | 描述 | 价值 |
---|---|---|
automaticOSUpgradePolicy | 用于执行自动 OS 升级的配置参数。 | AutomaticOSUpgradePolicy |
模式 | 指定升级到规模集中虚拟机的模式。 可能的值包括: 手动 - 控制对规模集中虚拟机的更新的应用程序。 使用 manualUpgrade 操作执行此操作。 自动 - 规模集中的所有虚拟机同时自动更新。 |
“Automatic” “Manual” “滚动” |
rollingUpgradePolicy | 执行滚动升级时使用的配置参数。 | RollingUpgradePolicy |
UserAssignedIdentities
名字 | 描述 | 价值 |
---|
UserAssignedIdentitiesValue
名字 | 描述 | 价值 |
---|
VaultCertificate
名字 | 描述 | 价值 |
---|---|---|
certificateStore | 对于 Windows VM,指定应向其添加证书的虚拟机上的证书存储。 指定的证书存储隐式位于 LocalMachine 帐户中。 对于 Linux VM,证书文件位于 /var/lib/waagent 目录下,文件名为 X509 证书文件 <大写Thumbprint>.crt,<用于私钥的 uppercaseThumbprint>.prv。 这两个文件都是 .pem 格式的。 |
字符串 |
certificateUrl | 这是已作为机密上传到 Key Vault 的证书的 URL。 若要将机密添加到 Key Vault,请参阅 向密钥保管库添加密钥或机密。 在这种情况下,证书必须是以下 JSON 对象的 Base64 编码,该对象在 UTF-8 中编码: { “data”:“<Base64 编码的证书>”, “dataType”:“pfx”, “password”:“<pfx-file-password>” } 若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 Windows 的 Azure 密钥库 虚拟机扩展。 |
字符串 |
VaultSecretGroup
名字 | 描述 | 价值 |
---|---|---|
sourceVault | Key Vault 的相对 URL,其中包含 VaultCertificates 中的所有证书。 | SubResource |
vaultCertificates | SourceVault 中包含证书的密钥保管库引用列表。 | VaultCertificate[] |
VirtualHardDisk
名字 | 描述 | 价值 |
---|---|---|
uri | 指定虚拟硬盘的 URI。 | 字符串 |
VirtualMachineScaleSetDataDisk
名字 | 描述 | 价值 |
---|---|---|
缓存 | 指定缓存要求。 可能的值包括: 无 ReadOnly ReadWrite 默认值:标准存储 None。高级存储的 ReadOnly |
“None” “ReadOnly” “ReadWrite” |
createOption | 创建选项。 | “Attach” “Empty” “FromImage”(必需) |
deleteOption | 指定在 VMSS Flex 删除时是否应删除或分离数据磁盘(此功能仅适用于具有灵活 OrchestrationMode 的 VMSS)。 可能的值: 删除 如果使用此值,则删除 VMSS Flex VM 时删除数据磁盘。 分离 如果使用此值,则在删除 VMSS Flex VM 后保留数据磁盘。 默认值设置为 Delete。 |
“Delete” “Detach” |
diskIOPSReadWrite | 指定托管磁盘的 Read-Write IOPS。 仅当 StorageAccountType UltraSSD_LRS时才应使用。 如果未指定,则会根据 diskSizeGB 分配默认值。 | int |
diskMBpsReadWrite | 指定托管磁盘的带宽(以 MB/秒为单位)。 仅当 StorageAccountType UltraSSD_LRS时才应使用。 如果未指定,则会根据 diskSizeGB 分配默认值。 | int |
diskSizeGB | 指定空数据磁盘的大小(以 GB 为单位)。 此元素可用于覆盖虚拟机映像中的磁盘大小。 diskSizeGB 是磁盘的字节数 x 1024^3,该值不能大于 1023 |
int |
伦 | 指定数据磁盘的逻辑单元号。 此值用于标识 VM 中的数据磁盘,因此对于附加到 VM 的每个数据磁盘必须是唯一的。 | int (必需) |
managedDisk | 托管磁盘参数。 | VirtualMachineScaleSetManagedDiskParameters |
名字 | 磁盘名称。 | 字符串 |
writeAcceleratorEnabled | 指定是应在磁盘上启用或禁用 writeAccelerator。 | bool |
VirtualMachineScaleSetExtension
名字 | 描述 | 价值 |
---|---|---|
名字 | 扩展的名称。 | 字符串 |
性能 | 描述虚拟机规模集扩展的属性。 | VirtualMachineScaleSetExtensionProperties |
VirtualMachineScaleSetExtensionProfile
名字 | 描述 | 价值 |
---|---|---|
扩展 | 虚拟机规模集子扩展资源。 | VirtualMachineScaleSetExtension[] |
extensionsTimeBudget | 指定分配所有扩展开始的时间。 持续时间应介于 15 分钟到 120 分钟(含)之间,应采用 ISO 8601 格式指定。 默认值为 90 分钟(PT1H30M)。 最低 API 版本:2020-06-01 |
字符串 |
VirtualMachineScaleSetExtensionProperties
名字 | 描述 | 价值 |
---|---|---|
autoUpgradeMinorVersion | 指示扩展是否应在部署时使用较新的次要版本。 但是,部署后,除非重新部署,否则扩展不会升级次要版本,即使此属性设置为 true 也是如此。 | bool |
enableAutomaticUpgrade | 指示如果有较新版本的扩展可用,平台是否应自动升级扩展。 | bool |
forceUpdateTag | 如果提供值并且与上一个值不同,则即使扩展配置未更改,扩展处理程序也会强制更新。 | 字符串 |
protectedSettings | 该扩展可以包含 protectedSettings 或 protectedSettingsFromKeyVault,或者根本不包含受保护的设置。 | 任何 |
protectedSettingsFromKeyVault | 由引用传递的扩展保护的设置,并从密钥保管库使用 | KeyVaultSecretReference |
provisionAfterExtensions | 需要预配此扩展的扩展名称的集合。 | string[] |
发行人 | 扩展处理程序发布者的名称。 | 字符串 |
设置 | 扩展的 Json 格式公共设置。 | 任何 |
suppressFailures | 指示是否取消来自扩展的故障(不连接到 VM 等操作故障不会取消,而不管此值如何)。 默认值为 false。 | bool |
类型 | 指定扩展的类型;例如“CustomScriptExtension”。 | 字符串 |
typeHandlerVersion | 指定脚本处理程序的版本。 | 字符串 |
VirtualMachineScaleSetHardwareProfile
名字 | 描述 | 价值 |
---|---|---|
vmSizeProperties | 指定用于自定义虚拟机大小的属性。 最低 api 版本:2021-11-01。 有关详细信息,请按照 VM 自定义 中的说明进行操作。 |
VMSizeProperties |
VirtualMachineScaleSetIdentity
名字 | 描述 | 价值 |
---|---|---|
类型 | 用于虚拟机规模集的标识类型。 类型“SystemAssigned,UserAssigned”包括隐式创建的标识和一组用户分配的标识。 类型“None”将从虚拟机规模集中删除任何标识。 | “None” “SystemAssigned” “SystemAssigned,UserAssigned” “UserAssigned” |
userAssignedIdentities | 与虚拟机规模集关联的用户标识列表。 用户标识字典密钥引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 | UserAssignedIdentities |
VirtualMachineScaleSetIPConfiguration
名字 | 描述 | 价值 |
---|---|---|
名字 | IP 配置名称。 | string (必需) |
性能 | 描述虚拟机规模集网络配置文件的 IP 配置属性。 | VirtualMachineScaleSetIPConfigurationProperties |
VirtualMachineScaleSetIPConfigurationProperties
名字 | 描述 | 价值 |
---|---|---|
applicationGatewayBackendAddressPools | 指定对应用程序网关后端地址池的引用数组。 规模集可以引用多个应用程序网关的后端地址池。 多个规模集不能使用相同的应用程序网关。 | SubResource[] |
applicationSecurityGroups | 指定对应用程序安全组的引用数组。 | SubResource[] |
loadBalancerBackendAddressPools | 指定对负载均衡器后端地址池的引用数组。 规模集可以引用一个公共负载均衡器和一个内部负载均衡器的后端地址池。 多个规模集不能使用相同的基本 SKU 负载均衡器。 | SubResource[] |
loadBalancerInboundNatPools | 指定对负载均衡器的入站 Nat 池的引用数组。 规模集可以引用一个公共负载均衡器和一个内部负载均衡器的入站 NAT 池。 多个规模集不能使用相同的基本 SKU 负载均衡器。 | SubResource[] |
主要 | 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 | bool |
privateIPAddressVersion | 从 Api-Version 2017-03-30 开始提供,它表示特定 ipconfiguration 是 IPv4 还是 IPv6。 默认值被视为 IPv4。 可能的值为:“IPv4”和“IPv6”。 | “IPv4” “IPv6” |
publicIPAddressConfiguration | publicIPAddressConfiguration。 | VirtualMachineScaleSetPublicIPAddressConfiguration |
子 | 指定子网的标识符。 | ApiEntityReference |
VirtualMachineScaleSetIpTag
名字 | 描述 | 价值 |
---|---|---|
ipTagType | IP 标记类型。 示例:FirstPartyUsage。 | 字符串 |
标记 | 与公共 IP 关联的 IP 标记。 示例:SQL、存储等。 | 字符串 |
VirtualMachineScaleSetManagedDiskParameters
名字 | 描述 | 价值 |
---|---|---|
diskEncryptionSet | 指定托管磁盘的客户托管磁盘加密集资源 ID。 | DiskEncryptionSetParameters |
securityProfile | 指定托管磁盘的安全配置文件。 | VMDiskSecurityProfile |
storageAccountType | 指定托管磁盘的存储帐户类型。 注意:UltraSSD_LRS只能与数据磁盘一起使用,它不能与 OS 磁盘一起使用。 | “PremiumV2_LRS” “Premium_LRS” “Premium_ZRS” “StandardSSD_LRS” “StandardSSD_ZRS” “Standard_LRS” “UltraSSD_LRS” |
VirtualMachineScaleSetNetworkConfiguration
名字 | 描述 | 价值 |
---|---|---|
名字 | 网络配置名称。 | string (必需) |
性能 | 介绍虚拟机规模集网络配置文件的 IP 配置。 | VirtualMachineScaleSetNetworkConfigurationProperties |
VirtualMachineScaleSetNetworkConfigurationDnsSettings
名字 | 描述 | 价值 |
---|---|---|
dnsServers | DNS 服务器 IP 地址列表 | string[] |
VirtualMachineScaleSetNetworkConfigurationProperties
名字 | 描述 | 价值 |
---|---|---|
deleteOption | 指定删除 VM 时网络接口发生的情况 | “Delete” “Detach” |
disableTcpStateTracking | 指定是否为 tcp 状态跟踪禁用网络接口。 | bool |
dnsSettings | 要应用于网络接口的 dns 设置。 | VirtualMachineScaleSetNetworkConfigurationDnsSettings |
enableAcceleratedNetworking | 指定网络接口是否已启用加速网络。 | bool |
enableFpga | 指定网络接口是否已启用 FPGA 网络。 | bool |
enableIPForwarding | 是否在此 NIC 上启用了 IP 转发。 | bool |
ipConfigurations | 指定网络接口的 IP 配置。 | VirtualMachineScaleSetIPConfiguration[] (必需) |
networkSecurityGroup | 网络安全组。 | SubResource |
主要 | 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 | bool |
VirtualMachineScaleSetNetworkProfile
名字 | 描述 | 价值 |
---|---|---|
healthProbe | 对负载均衡器探测的引用,用于确定虚拟机规模集中实例的运行状况。 引用的格式为:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}”。 | ApiEntityReference |
networkApiVersion | 指定使用业务流程模式“灵活”在虚拟机规模集的网络接口配置中创建网络资源时使用的 Microsoft.Network API 版本 | '2020-11-01' |
networkInterfaceConfigurations | 网络配置列表。 | VirtualMachineScaleSetNetworkConfiguration[] |
VirtualMachineScaleSetOSDisk
名字 | 描述 | 价值 |
---|---|---|
缓存 | 指定缓存要求。 可能的值包括: 无 ReadOnly ReadWrite 默认值:标准存储 None。高级存储的 ReadOnly |
“None” “ReadOnly” “ReadWrite” |
createOption | 指定应如何创建规模集中的虚拟机。 唯一允许的值是:FromImage \u2013 使用映像创建虚拟机时使用此值。 如果使用平台映像,则还使用上述 imageReference 元素。 如果使用市场映像,则还会使用前面所述的计划元素。 |
“Attach” “Empty” “FromImage”(必需) |
deleteOption | 指定在 VMSS Flex 删除时是否应删除或分离 OS 磁盘(此功能仅适用于具有灵活 OrchestrationMode 的 VMSS)。 可能的值: 删除 如果使用此值,则删除 VMSS Flex VM 时会删除 OS 磁盘。 分离 如果使用此值,则会在删除 VMSS Flex VM 后保留 OS 磁盘。 默认值设置为 Delete。 对于临时 OS 磁盘,默认值设置为 删除。 用户无法更改临时 OS 磁盘的删除选项。 |
“Delete” “Detach” |
diffDiskSettings | 指定虚拟机规模集使用的操作系统磁盘的临时磁盘设置。 | DiffDiskSettings |
diskSizeGB | 指定空数据磁盘的大小(以 GB 为单位)。 此元素可用于覆盖虚拟机映像中的磁盘大小。 diskSizeGB 是磁盘的字节数 x 1024^3,该值不能大于 1023 |
int |
图像 | 指定要基于规模集的非托管用户映像的信息。 | VirtualHardDisk |
managedDisk | 托管磁盘参数。 | VirtualMachineScaleSetManagedDiskParameters |
名字 | 磁盘名称。 | 字符串 |
osType | 此属性允许指定从用户映像或专用 VHD 创建 VM 时磁盘中包含的 OS 类型。 可能的值包括: Windows Linux |
“Linux” “Windows” |
vhdContainers | 指定用于存储规模集操作系统磁盘的容器 URL。 | string[] |
writeAcceleratorEnabled | 指定是应在磁盘上启用或禁用 writeAccelerator。 | bool |
VirtualMachineScaleSetOSProfile
名字 | 描述 | 价值 |
---|---|---|
adminPassword | 指定管理员帐户的密码。 最小长度(Windows): 8 个字符 最小长度(Linux): 6 个字符 最大长度(Windows): 123 个字符 最大长度(Linux): 72 个字符 复杂性要求:需要满足以下 4 个条件中的 3 个 字符数较低 具有大写字符 包含数字 具有特殊字符(正则表达式匹配 [\W_]) 不允许的值:“abc@123”、“P@$$w 0rd”、“P@ssw0rd”、“P@ssword123”、“Pa$$word”、“pass@word1”、“Password!”、“Password1”、“Password22”、“iloveyou!” 若要重置密码,请参阅 如何在 Windows VM 中重置远程桌面服务或其登录密码 有关重置根密码,请参阅 使用 VMAccess 扩展 管理用户、SSH 并检查或修复 Azure Linux VM 上的磁盘 |
字符串 约束: 敏感值。 以安全参数的形式传入。 |
adminUsername | 指定管理员帐户的名称。 仅限 Windows 的限制: 不能以“.” 结尾。 不允许的值:“administrator”、“admin”、“user”、“user1”、“test”、“user2”、“test1”、“user3”、“admin1”、“1”, “123”、“a”、“actuser”、“adm”、“admin2”、“aspnet”、“backup”、“console”、“david”、“guest”、“john”、“owner”、“root”、“server”、“sql”、“support”、“support_388945a0”、“sys”、“test2”、“test3”、“user4”、“user5”。 最小长度(Linux): 1 个字符 最大长度(Linux): 64 个字符 最大长度(Windows): 20 个字符 |
字符串 |
allowExtensionOperations | 指定是否应在虚拟机规模集上允许扩展操作。 仅当虚拟机规模集上没有扩展时,此选项才可设置为 False。 |
bool |
computerNamePrefix | 指定规模集中所有虚拟机的计算机名称前缀。 计算机名称前缀长度必须为 1 到 15 个字符。 | 字符串 |
customData | 指定自定义数据的 base-64 编码字符串。 base-64 编码字符串将解码为作为虚拟机上的文件保存的二进制数组。 二进制数组的最大长度为 65535 字节。 有关为 VM 使用 cloud-init,请参阅 使用 cloud-init 在创建期间自定义 Linux VM |
字符串 |
linuxConfiguration | 指定虚拟机上的 Linux 操作系统设置。 有关受支持的 Linux 分发版的列表,请参阅 Azure-Endorsed 分发版上的 Linux。 |
LinuxConfiguration |
requireGuestProvisionSignal | 必须设置为 True 或省略的可选属性。 | bool |
秘密 | 指定应在规模集中的虚拟机上安装的证书集。 若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 Windows 的 Azure 密钥库 虚拟机扩展。 | VaultSecretGroup[] |
windowsConfiguration | 指定虚拟机上的 Windows 操作系统设置。 | WindowsConfiguration |
VirtualMachineScaleSetProperties
名字 | 描述 | 价值 |
---|---|---|
additionalCapabilities | 指定在虚拟机规模集中的虚拟机上启用或禁用的其他功能。 例如:虚拟机是否能够支持使用 UltraSSD_LRS 存储帐户类型附加托管数据磁盘。 | AdditionalCapabilities |
automaticRepairsPolicy | 自动修复的策略。 | AutomaticRepairsPolicy |
constrainedMaximumCapacity | 必须设置为 True 或省略的可选属性。 | bool |
doNotRunExtensionsOnOverprovisionedVMs | 启用过度预配后,仅在请求的 VM 数量上启动扩展,这些 VM 最终会保留。 因此,此属性将确保扩展不会在额外的过度预配的 VM 上运行。 | bool |
hostGroup | 指定虚拟机规模集所在的专用主机组的信息。 最低 API 版本:2020-06-01。 |
SubResource |
orchestrationMode | 指定虚拟机规模集的业务流程模式。 | “灵活” “Uniform” |
overprovision | 指定是否应过度预配虚拟机规模集。 | bool |
platformFaultDomainCount | 每个放置组的容错域计数。 | int |
priorityMixPolicy | 指定用于在同一 VMSS Flex 实例中混合现成和常规优先级 VM 的所需目标。 | PriorityMixPolicy |
proximityPlacementGroup | 指定应向其分配虚拟机规模集的邻近放置组的相关信息。 最低 api 版本:2018-04-01。 |
SubResource |
scaleInPolicy | 指定在虚拟机规模集中的虚拟机中缩放时应用的策略。 | ScaleInPolicy |
singlePlacementGroup | 如果为 true,则规模集限制为单个放置组,最大大小为 100 个虚拟机。 注意:如果 singlePlacementGroup 为 true,则可能会将其修改为 false。 但是,如果 singlePlacementGroup 为 false,则可能不会将其修改为 true。 | bool |
spotRestorePolicy | 指定虚拟机规模集的现成还原属性。 | SpotRestorePolicy |
upgradePolicy | 升级策略。 | UpgradePolicy |
virtualMachineProfile | 虚拟机配置文件。 | VirtualMachineScaleSetVMProfile |
zoneBalance | 如果发生区域中断,是否强制甚至跨 x 区域进行虚拟机分发。 仅当规模集的区域属性包含多个区域时,才能设置 zoneBalance 属性。 如果没有区域或仅指定一个区域,则不应设置 zoneBalance 属性。 | bool |
VirtualMachineScaleSetPublicIPAddressConfiguration
名字 | 描述 | 价值 |
---|---|---|
名字 | publicIP 地址配置名称。 | string (必需) |
性能 | 介绍虚拟机规模集 IP 配置的公共 IPAddress 配置 | VirtualMachineScaleSetPublicIPAddressConfigurationProperties |
sku | 描述公共 IP Sku。 只能将 OrchestrationMode 设置为灵活。 | PublicIPAddressSku |
VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings
名字 | 描述 | 价值 |
---|---|---|
domainNameLabel | 域名标签。域名标签和 vm 索引的串联将是将创建的 PublicIPAddress 资源的域名标签 | string (必需) |
VirtualMachineScaleSetPublicIPAddressConfigurationProperties
名字 | 描述 | 价值 |
---|---|---|
deleteOption | 指定删除 VM 时公共 IP 会发生什么情况 | “Delete” “Detach” |
dnsSettings | 要应用于 publicIP 地址的 dns 设置。 | VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings |
idleTimeoutInMinutes | 公共 IP 地址的空闲超时。 | int |
ipTags | 与公共 IP 地址关联的 IP 标记列表。 | VirtualMachineScaleSetIpTag[] |
publicIPAddressVersion | 从 Api-Version 2019-07-01 开始提供,它表示特定 ipconfiguration 是 IPv4 还是 IPv6。 默认值被视为 IPv4。 可能的值为:“IPv4”和“IPv6”。 | “IPv4” “IPv6” |
publicIPPrefix | 要从中分配 publicIP 地址的 PublicIPPrefix。 | SubResource |
VirtualMachineScaleSetStorageProfile
名字 | 描述 | 价值 |
---|---|---|
dataDisks | 指定用于向规模集中的虚拟机添加数据磁盘的参数。 有关磁盘的详细信息,请参阅 关于 Azure 虚拟机的磁盘和 VHD。 |
VirtualMachineScaleSetDataDisk[] |
diskControllerType | 字符串 | |
imageReference | 指定要使用的图像的信息。 可以指定有关平台映像、市场映像或虚拟机映像的信息。 若要使用平台映像、市场映像或虚拟机映像,但不在其他创建操作中使用,则需要此元素。 | ImageReference |
osDisk | 指定有关规模集中虚拟机使用的操作系统磁盘的信息。 有关磁盘的详细信息,请参阅 关于 Azure 虚拟机的磁盘和 VHD。 |
VirtualMachineScaleSetOSDisk |
VirtualMachineScaleSetVMProfile
名字 | 描述 | 价值 |
---|---|---|
applicationProfile | 指定应提供给 VM/VMSS 的库应用程序 | ApplicationProfile |
billingProfile | 指定 Azure 现成 VMSS 的计费相关详细信息。 最低 API 版本:2019-03-01。 |
BillingProfile |
capacityReservation | 指定规模集的容量预留相关详细信息。 最低 API 版本:2021-04-01。 |
CapacityReservationProfile |
diagnosticsProfile | 指定启动诊断设置状态。 最低 API 版本:2015-06-15。 |
DiagnosticsProfile |
evictionPolicy | 指定 Azure 现成虚拟机和 Azure Spot 规模集的逐出策略。 对于 Azure 现成虚拟机,支持“解除分配”和“删除”,最低 API 版本为 2019-03-01。 对于 Azure Spot 规模集,支持“Deallocate”和“Delete”,最低 API 版本为 2017-10-30-preview。 |
“Deallocate” “Delete” |
extensionProfile | 指定规模集中虚拟机上安装的扩展的设置集合。 | VirtualMachineScaleSetExtensionProfile |
hardwareProfile | 指定规模集的硬件配置文件相关详细信息。 最低 api 版本:2021-11-01。 |
VirtualMachineScaleSetHardwareProfile |
licenseType | 指定正在使用的映像或磁盘在本地获得许可。 Windows Server 操作系统的可能值为: Windows_Client Windows_Server Linux Server 操作系统的可能值为: RHEL_BYOS(适用于 RHEL) SLES_BYOS(对于 SUSE) 有关详细信息,请参阅 Windows Server 的 Azure 混合使用权益 Linux Server 的 Azure 混合使用权益 最低 API 版本:2015-06-15 |
字符串 |
networkProfile | 指定规模集中虚拟机网络接口的属性。 | VirtualMachineScaleSetNetworkProfile |
osProfile | 指定规模集中虚拟机的操作系统设置。 | VirtualMachineScaleSetOSProfile |
优先权 | 指定规模集中虚拟机的优先级。 最低 API 版本:2017-10-30-preview |
“Low” “Regular” “Spot” |
scheduledEventsProfile | 指定与计划事件相关的配置。 | ScheduledEventsProfile |
securityProfile | 指定规模集中虚拟机的安全相关配置文件设置。 | SecurityProfile |
serviceArtifactReference | 指定使用“latest”映像版本时,用于为规模集中的所有虚拟机设置相同映像版本的服务项目引用 ID。 最低 API 版本:2022-11-01 | ServiceArtifactReference |
storageProfile | 指定虚拟机磁盘的存储设置。 | VirtualMachineScaleSetStorageProfile |
userData | 规模集中虚拟机的 UserData,必须进行 base-64 编码。 客户不应在此处传递任何机密。 最低 API 版本:2021-03-01 |
字符串 |
VMDiskSecurityProfile
名字 | 描述 | 价值 |
---|---|---|
diskEncryptionSet | 指定用于客户托管密钥加密的 ConfidentialVM OS 磁盘和 VMGuest Blob 的托管磁盘的客户托管磁盘加密集资源 ID。 | DiskEncryptionSetParameters |
securityEncryptionType | 指定托管磁盘的 EncryptionType。 它设置为 DiskWithVMGuestState 以加密托管磁盘以及 VMGuestState blob,VMGuestStateOnly 仅加密 VMGuestState blob。 注意:只能为机密 VM 设置它。 |
“DiskWithVMGuestState” “VMGuestStateOnly” |
VMGalleryApplication
名字 | 描述 | 价值 |
---|---|---|
configurationReference | 可选,指定 Azure Blob 的 URI,该 URI 将替换包的默认配置(如果提供) | 字符串 |
enableAutomaticUpgrade | 如果设置为 true,当 PIR/SIG 中提供了新的库应用程序版本时,它将自动更新 VM/VMSS | bool |
次序 | 可选,指定包必须安装的顺序 | int |
packageReferenceId | 指定 /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/applications/{application}/versions/{version} 形式的 GalleryApplicationVersion 资源 ID | string (必需) |
标签 | 可选,指定更多泛型上下文的传递值。 | 字符串 |
treatFailureAsDeploymentFailure | 可选,如果为 true,则 VmApplication 中任何操作的任何失败都会使部署失败 | bool |
VMSizeProperties
名字 | 描述 | 价值 |
---|---|---|
vCPUUsAvailable | 指定可用于 VM 的 vCPU 数。 如果未在请求正文中指定此属性,则默认行为是将其设置为 api 响应中公开的 vCPU 的值,列出区域中 的所有可用虚拟机大小。 |
int |
vCPUUsPerCore | 指定 vCPU 与物理核心比率。 如果未在请求正文中指定此属性,则默认行为设置为 api 响应中公开的 vm 大小的 vCPUUsPerCore 值,列出区域中的所有可用虚拟机大小 将此属性设置为 1 也意味着禁用超线程处理。 |
int |
WindowsConfiguration
名字 | 描述 | 价值 |
---|---|---|
additionalUnattendContent | 指定其他 base-64 编码的 XML 格式信息,这些信息可以包含在 Windows 安装程序使用的 Unattend.xml 文件中。 | AdditionalUnattendContent[] |
enableAutomaticUpdates | 指示是否为 Windows 虚拟机启用自动更新。 默认值为 true。 对于虚拟机规模集,可以更新此属性,更新将对 OS 重新预配生效。 |
bool |
enableVMAgentPlatformUpdates | 指示是否为 Windows 虚拟机启用了 VMAgent 平台更新。 默认值为 false。 | bool |
patchSettings | [预览功能]指定与 Windows 上的 VM 来宾修补相关的设置。 | PatchSettings |
provisionVMAgent | 指示是否应在虚拟机上预配虚拟机代理。 如果未在请求正文中指定此属性,则默认行为是将其设置为 true。 这将确保 VM 代理安装在 VM 上,以便以后可以向 VM 添加扩展。 |
bool |
timeZone | 指定虚拟机的时区。 例如“太平洋标准时间”。 可能的值可以从 TimeZoneInfo.GetSystemTimeZones返回的时区 TimeZoneInfo.Id 值。 |
字符串 |
winRM | 指定 Windows 远程管理侦听器。 这将启用远程 Windows PowerShell。 | WinRMConfiguration |
WindowsVMGuestPatchAutomaticByPlatformSettings
名字 | 描述 | 价值 |
---|---|---|
rebootSetting | 指定所有 AutomaticByPlatform 修补程序安装操作的重新启动设置。 | “Always” “IfRequired” “永不” “未知” |
WinRMConfiguration
名字 | 描述 | 价值 |
---|---|---|
听众 | Windows 远程管理侦听器列表 | WinRMListener[] |
WinRMListener
名字 | 描述 | 价值 |
---|---|---|
certificateUrl | 这是已作为机密上传到 Key Vault 的证书的 URL。 若要将机密添加到 Key Vault,请参阅 向密钥保管库添加密钥或机密。 在这种情况下,证书必须是以下 JSON 对象的 Base64 编码,该对象在 UTF-8 中编码: { “data”:“<Base64 编码的证书>”, “dataType”:“pfx”, “password”:“<pfx-file-password>” } 若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 Windows 的 Azure 密钥库 虚拟机扩展。 |
字符串 |
协议 | 指定 WinRM 侦听器的协议。 可能的值包括: http https |
“Http” “Https” |