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

Microsoft.Compute virtualMachines 2021-11-01

Bicep 资源定义

可以使用目标操作部署 virtualMachines 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.Compute/virtualMachines 资源,请将以下 Bicep 添加到模板。

resource symbolicname 'Microsoft.Compute/virtualMachines@2021-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
    }
    applicationProfile: {
      galleryApplications: [
        {
          configurationReference: 'string'
          order: int
          packageReferenceId: 'string'
          tags: 'string'
        }
      ]
    }
    availabilitySet: {
      id: 'string'
    }
    billingProfile: {
      maxPrice: int
    }
    capacityReservation: {
      capacityReservationGroup: {
        id: 'string'
      }
    }
    diagnosticsProfile: {
      bootDiagnostics: {
        enabled: bool
        storageUri: 'string'
      }
    }
    evictionPolicy: 'string'
    extensionsTimeBudget: 'string'
    hardwareProfile: {
      vmSize: 'string'
      vmSizeProperties: {
        vCPUsAvailable: int
        vCPUsPerCore: int
      }
    }
    host: {
      id: 'string'
    }
    hostGroup: {
      id: 'string'
    }
    licenseType: 'string'
    networkProfile: {
      networkApiVersion: 'string'
      networkInterfaceConfigurations: [
        {
          name: 'string'
          properties: {
            deleteOption: 'string'
            dnsSettings: {
              dnsServers: [
                'string'
              ]
            }
            dscpConfiguration: {
              id: 'string'
            }
            enableAcceleratedNetworking: bool
            enableFpga: bool
            enableIPForwarding: bool
            ipConfigurations: [
              {
                name: 'string'
                properties: {
                  applicationGatewayBackendAddressPools: [
                    {
                      id: 'string'
                    }
                  ]
                  applicationSecurityGroups: [
                    {
                      id: 'string'
                    }
                  ]
                  loadBalancerBackendAddressPools: [
                    {
                      id: 'string'
                    }
                  ]
                  primary: bool
                  privateIPAddressVersion: 'string'
                  publicIPAddressConfiguration: {
                    name: 'string'
                    properties: {
                      deleteOption: 'string'
                      dnsSettings: {
                        domainNameLabel: 'string'
                      }
                      idleTimeoutInMinutes: int
                      ipTags: [
                        {
                          ipTagType: 'string'
                          tag: 'string'
                        }
                      ]
                      publicIPAddressVersion: 'string'
                      publicIPAllocationMethod: 'string'
                      publicIPPrefix: {
                        id: 'string'
                      }
                    }
                    sku: {
                      name: 'string'
                      tier: 'string'
                    }
                  }
                  subnet: {
                    id: 'string'
                  }
                }
              }
            ]
            networkSecurityGroup: {
              id: 'string'
            }
            primary: bool
          }
        }
      ]
      networkInterfaces: [
        {
          id: 'string'
          properties: {
            deleteOption: 'string'
            primary: bool
          }
        }
      ]
    }
    osProfile: {
      adminPassword: 'string'
      adminUsername: 'string'
      allowExtensionOperations: bool
      computerName: 'string'
      customData: 'string'
      linuxConfiguration: {
        disablePasswordAuthentication: bool
        patchSettings: {
          assessmentMode: '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
        patchSettings: {
          assessmentMode: 'string'
          enableHotpatching: bool
          patchMode: 'string'
        }
        provisionVMAgent: bool
        timeZone: 'string'
        winRM: {
          listeners: [
            {
              certificateUrl: 'string'
              protocol: 'string'
            }
          ]
        }
      }
    }
    platformFaultDomain: int
    priority: 'string'
    proximityPlacementGroup: {
      id: 'string'
    }
    scheduledEventsProfile: {
      terminateNotificationProfile: {
        enable: bool
        notBeforeTimeout: 'string'
      }
    }
    securityProfile: {
      encryptionAtHost: bool
      securityType: 'string'
      uefiSettings: {
        secureBootEnabled: bool
        vTpmEnabled: bool
      }
    }
    storageProfile: {
      dataDisks: [
        {
          caching: 'string'
          createOption: 'string'
          deleteOption: 'string'
          detachOption: 'string'
          diskSizeGB: int
          image: {
            uri: 'string'
          }
          lun: int
          managedDisk: {
            diskEncryptionSet: {
              id: 'string'
            }
            id: 'string'
            securityProfile: {
              diskEncryptionSet: {
                id: 'string'
              }
              securityEncryptionType: 'string'
            }
            storageAccountType: 'string'
          }
          name: 'string'
          toBeDetached: bool
          vhd: {
            uri: 'string'
          }
          writeAcceleratorEnabled: bool
        }
      ]
      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
        encryptionSettings: {
          diskEncryptionKey: {
            secretUrl: 'string'
            sourceVault: {
              id: 'string'
            }
          }
          enabled: bool
          keyEncryptionKey: {
            keyUrl: 'string'
            sourceVault: {
              id: 'string'
            }
          }
        }
        image: {
          uri: 'string'
        }
        managedDisk: {
          diskEncryptionSet: {
            id: 'string'
          }
          id: 'string'
          securityProfile: {
            diskEncryptionSet: {
              id: 'string'
            }
            securityEncryptionType: 'string'
          }
          storageAccountType: 'string'
        }
        name: 'string'
        osType: 'string'
        vhd: {
          uri: 'string'
        }
        writeAcceleratorEnabled: bool
      }
    }
    userData: 'string'
    virtualMachineScaleSet: {
      id: '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”

ApplicationProfile

名字 描述 价值
galleryApplications 指定应提供给 VM/VMSS 的库应用程序 VMGalleryApplication[]

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

DataDisk

名字 描述 价值
缓存 指定缓存要求。

可能的值包括:



ReadOnly

ReadWrite

默认值:标准存储 None。高级存储的 ReadOnly
“None”
“ReadOnly”
“ReadWrite”
createOption 指定应如何创建虚拟机。

可能的值包括:

附加 \u2013 使用专用磁盘创建虚拟机时,将使用此值。

FromImage \u2013 使用映像创建虚拟机时使用此值。 如果使用平台映像,则还使用上述 imageReference 元素。 如果使用市场映像,则还会使用前面所述的计划元素。
“Attach”
“Empty”
“FromImage”(必需)
deleteOption 指定在删除 VM 时是否应删除或分离数据磁盘。

可能的值:

删除 如果使用此值,则删除 VM 时删除数据磁盘。

分离 如果使用此值,则在删除 VM 后保留数据磁盘。

默认值设置为 分离
“Delete”
“Detach”
detachOption 指定要在分离磁盘时使用的分离行为,或者已在从虚拟机分离过程中使用。 支持的值:ForceDetach

detachOption:ForceDetach 仅适用于托管数据磁盘。 如果以前由于虚拟机意外故障而未完成数据磁盘的分离尝试,并且磁盘仍未释放,则使用强制分离作为最后手段选项从 VM 强行分离磁盘。 使用此分离行为时,可能不会刷新所有写入。

此功能仍处于预览模式,VirtualMachineScaleSet 不支持此功能。 若要强制分离数据磁盘更新到BeDetached 到“true”,以及设置 detachOption:“ForceDetach”。
“ForceDetach”
diskSizeGB 指定空数据磁盘的大小(以 GB 为单位)。 此元素可用于覆盖虚拟机映像中的磁盘大小。

此值不能大于 1023 GB
int
图像 源用户映像虚拟硬盘。 在附加到虚拟机之前,将复制虚拟硬盘。 如果提供了 SourceImage,则目标虚拟硬盘驱动器不得存在。 VirtualHardDisk
指定数据磁盘的逻辑单元号。 此值用于标识 VM 中的数据磁盘,因此对于附加到 VM 的每个数据磁盘必须是唯一的。 int (必需)
managedDisk 托管磁盘参数。 ManagedDiskParameters
名字 磁盘名称。 字符串
toBeDetached 指定数据磁盘是否正在从 VirtualMachine/VirtualMachineScaleset 分离 bool
vhd 虚拟硬盘。 VirtualHardDisk
writeAcceleratorEnabled 指定是应在磁盘上启用或禁用 writeAccelerator。 bool

DiagnosticsProfile

名字 描述 价值
bootDiagnostics 启动诊断是一项调试功能,可用于查看控制台输出和屏幕截图来诊断 VM 状态。
注意:如果指定 storageUri,请确保存储帐户与 VM 位于同一区域和订阅中。

可以轻松查看控制台日志的输出。

通过 Azure,还可以从虚拟机监控程序查看 VM 的屏幕截图。
BootDiagnostics

DiffDiskSettings

名字 描述 价值
选择 指定操作系统磁盘的临时磁盘设置。 “Local”
放置 指定操作系统磁盘的临时磁盘放置。

可能的值包括:

CacheDisk

ResourceDisk

默认值:如果为 VM 大小配置了缓存磁盘,则 CacheDisk,否则使用 resourceDisk

请参阅 /azure/virtual-machines/windows/size 和 /azure/virtual-machines/linux/size 上的 Windows VM 的 VM 大小文档,以检查哪些 VM 大小公开缓存磁盘。
“CacheDisk”
“ResourceDisk”

DiskEncryptionSetParameters

名字 描述 价值
id 资源 ID 字符串

DiskEncryptionSettings

名字 描述 价值
diskEncryptionKey 指定磁盘加密密钥的位置,该密钥是 Key Vault 机密。 KeyVaultSecretReference
启用 指定是否应在虚拟机上启用磁盘加密。 bool
keyEncryptionKey 指定 Key Vault 中密钥加密密钥的位置。 KeyVaultKeyReference

ExtendedLocation

名字 描述 价值
名字 扩展位置的名称。 字符串
类型 扩展位置的类型。 “EdgeZone”

HardwareProfile

名字 描述 价值
vmSize 指定虚拟机的大小。

枚举数据类型当前已弃用,将于 2023 年 12 月 23 日删除。

获取可用大小列表的建议方法是使用以下 API:

列出可用性集中的所有可用虚拟机大小

列出区域中所有可用的虚拟机大小

列出用于调整大小的所有可用虚拟机大小。 有关虚拟机大小的详细信息,请参阅虚拟机大小。

可用的 VM 大小取决于区域和可用性集。
“Basic_A0”
“Basic_A1”
“Basic_A2”
“Basic_A3”
“Basic_A4”
“Standard_A0”
“Standard_A1”
“Standard_A10”
“Standard_A11”
“Standard_A1_v2”
“Standard_A2”
“Standard_A2m_v2”
“Standard_A2_v2”
“Standard_A3”
“Standard_A4”
“Standard_A4m_v2”
“Standard_A4_v2”
“Standard_A5”
“Standard_A6”
“Standard_A7”
“Standard_A8”
“Standard_A8m_v2”
“Standard_A8_v2”
“Standard_A9”
“Standard_B1ms”
“Standard_B1s”
“Standard_B2ms”
“Standard_B2s”
“Standard_B4ms”
“Standard_B8ms”
“Standard_D1”
“Standard_D11”
“Standard_D11_v2”
“Standard_D12”
“Standard_D12_v2”
“Standard_D13”
“Standard_D13_v2”
“Standard_D14”
“Standard_D14_v2”
“Standard_D15_v2”
“Standard_D16s_v3”
“Standard_D16_v3”
“Standard_D1_v2”
“Standard_D2”
“Standard_D2s_v3”
“Standard_D2_v2”
“Standard_D2_v3”
“Standard_D3”
“Standard_D32s_v3”
“Standard_D32_v3”
“Standard_D3_v2”
“Standard_D4”
“Standard_D4s_v3”
“Standard_D4_v2”
“Standard_D4_v3”
“Standard_D5_v2”
“Standard_D64s_v3”
“Standard_D64_v3”
“Standard_D8s_v3”
“Standard_D8_v3”
“Standard_DS1”
“Standard_DS11”
“Standard_DS11_v2”
“Standard_DS12”
“Standard_DS12_v2”
“Standard_DS13”
“Standard_DS13-2_v2”
“Standard_DS13-4_v2”
“Standard_DS13_v2”
“Standard_DS14”
“Standard_DS14-4_v2”
“Standard_DS14-8_v2”
“Standard_DS14_v2”
“Standard_DS15_v2”
“Standard_DS1_v2”
“Standard_DS2”
“Standard_DS2_v2”
“Standard_DS3”
“Standard_DS3_v2”
“Standard_DS4”
“Standard_DS4_v2”
“Standard_DS5_v2”
“Standard_E16s_v3”
“Standard_E16_v3”
“Standard_E2s_v3”
“Standard_E2_v3”
“Standard_E32-16_v3”
“Standard_E32-8s_v3”
“Standard_E32s_v3”
“Standard_E32_v3”
“Standard_E4s_v3”
“Standard_E4_v3”
“Standard_E64-16s_v3”
“Standard_E64-32s_v3”
“Standard_E64s_v3”
“Standard_E64_v3”
“Standard_E8s_v3”
“Standard_E8_v3”
“Standard_F1”
“Standard_F16”
“Standard_F16s”
“Standard_F16s_v2”
“Standard_F1s”
“Standard_F2”
“Standard_F2s”
“Standard_F2s_v2”
“Standard_F32s_v2”
“Standard_F4”
“Standard_F4s”
“Standard_F4s_v2”
“Standard_F64s_v2”
“Standard_F72s_v2”
“Standard_F8”
“Standard_F8s”
“Standard_F8s_v2”
“Standard_G1”
“Standard_G2”
“Standard_G3”
“Standard_G4”
“Standard_G5”
“Standard_GS1”
“Standard_GS2”
“Standard_GS3”
“Standard_GS4”
“Standard_GS4-4”
“Standard_GS4-8”
“Standard_GS5”
“Standard_GS5-16”
“Standard_GS5-8”
“Standard_H16”
“Standard_H16m”
“Standard_H16mr”
“Standard_H16r”
“Standard_H8”
“Standard_H8m”
“Standard_L16s”
“Standard_L32s”
“Standard_L4s”
“Standard_L8s”
“Standard_M128-32ms”
“Standard_M128-64ms”
“Standard_M128ms”
“Standard_M128s”
“Standard_M64-16ms”
“Standard_M64-32ms”
“Standard_M64ms”
“Standard_M64s”
“Standard_NC12”
“Standard_NC12s_v2”
“Standard_NC12s_v3”
“Standard_NC24”
“Standard_NC24r”
“Standard_NC24rs_v2”
“Standard_NC24rs_v3”
“Standard_NC24s_v2”
“Standard_NC24s_v3”
“Standard_NC6”
“Standard_NC6s_v2”
“Standard_NC6s_v3”
“Standard_ND12s”
“Standard_ND24rs”
“Standard_ND24s”
“Standard_ND6s”
“Standard_NV12”
“Standard_NV24”
“Standard_NV6”
vmSizeProperties 指定用于自定义虚拟机大小的属性。 最低 API 版本:2021-07-01。

此功能仍处于预览模式,VirtualMachineScaleSet 不支持此功能。

有关详细信息,请按照 VM 自定义 中的说明进行操作。
VMSizeProperties

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}”,而不输入版本。 字符串

KeyVaultKeyReference

名字 描述 价值
keyUrl 引用 Key Vault 中的密钥加密密钥的 URL。 string (必需)
sourceVault 包含密钥的 Key Vault 的相对 URL。 SubResource (必需)

KeyVaultSecretReference

名字 描述 价值
secretUrl 引用 Key Vault 中的机密的 URL。 string (必需)
sourceVault 包含机密的 Key Vault 的相对 URL。 SubResource (必需)

LinuxConfiguration

名字 描述 价值
disablePasswordAuthentication 指定是否应禁用密码身份验证。 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”
patchMode 指定 VM 来宾修补到 IaaS 虚拟机的模式,或与将 OrchestrationMode 作为灵活业务流程模式的虚拟机规模集关联的虚拟机。

可能的值包括:

ImageDefault - 使用虚拟机的默认修补配置。

AutomaticByPlatform - 虚拟机将由平台自动更新。 属性 provisionVMAgent 必须为 true
“AutomaticByPlatform”
“ImageDefault”

ManagedDiskParameters

名字 描述 价值
diskEncryptionSet 指定托管磁盘的客户托管磁盘加密集资源 ID。 DiskEncryptionSetParameters
id 资源 ID 字符串
securityProfile 指定托管磁盘的安全配置文件。 VMDiskSecurityProfile
storageAccountType 指定托管磁盘的存储帐户类型。 注意:UltraSSD_LRS只能与数据磁盘一起使用,它不能与 OS 磁盘一起使用。 “Premium_LRS”
“Premium_ZRS”
“StandardSSD_LRS”
“StandardSSD_ZRS”
“Standard_LRS”
“UltraSSD_LRS”

Microsoft.Compute/virtualMachines

名字 描述 价值
extendedLocation 虚拟机的扩展位置。 ExtendedLocation
身份 虚拟机的标识(如果已配置)。 VirtualMachineIdentity
位置 资源位置 string (必需)
名字 资源名称 string (必需)
计划 指定有关用于创建虚拟机的市场映像的信息。 此元素仅用于市场映像。 必须先启用映像以编程方式使用映像,然后才能从 API 使用市场映像。 在 Azure 门户中,找到要使用的市场映像,然后单击 想要以编程方式部署,开始使用 ->。 输入任何必需的信息,然后单击“保存 计划
性能 描述虚拟机的属性。 VirtualMachineProperties
标签 资源标记 标记名称和值的字典。 请参阅模板 中的 标记
虚拟机区域。 string[]

NetworkInterfaceReference

名字 描述 价值
id 资源 ID 字符串
性能 描述网络接口引用属性。 NetworkInterfaceReferenceProperties

NetworkInterfaceReferenceProperties

名字 描述 价值
deleteOption 指定删除 VM 时网络接口发生的情况 “Delete”
“Detach”
主要 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 bool

NetworkProfile

名字 描述 价值
networkApiVersion 指定在网络接口配置中创建网络资源时使用的 Microsoft.Network API 版本 '2020-11-01'
networkInterfaceConfigurations 指定将用于创建虚拟机网络资源的网络配置。 VirtualMachineNetworkInterfaceConfiguration[]
networkInterfaces 指定与虚拟机关联的网络接口的资源 ID 列表。 NetworkInterfaceReference[]

OSDisk

名字 描述 价值
缓存 指定缓存要求。

可能的值包括:



ReadOnly

ReadWrite

默认值:标准存储 高级存储的 ReadOnly
“None”
“ReadOnly”
“ReadWrite”
createOption 指定应如何创建虚拟机。

可能的值包括:

附加 \u2013 使用专用磁盘创建虚拟机时,将使用此值。

FromImage \u2013 使用映像创建虚拟机时使用此值。 如果使用平台映像,则还使用上述 imageReference 元素。 如果使用市场映像,则还会使用前面所述的计划元素。
“Attach”
“Empty”
“FromImage”(必需)
deleteOption 指定在删除 VM 时是否应删除或分离 OS 磁盘。

可能的值:

删除 如果使用此值,则会在删除 VM 时删除 OS 磁盘。

分离 如果使用此值,则在删除 VM 后将保留 os 磁盘。

默认值设置为 分离。 对于临时 OS 磁盘,默认值设置为 删除。 用户无法更改临时 OS 磁盘的删除选项。
“Delete”
“Detach”
diffDiskSettings 指定虚拟机使用的操作系统磁盘的临时磁盘设置。 DiffDiskSettings
diskSizeGB 指定空数据磁盘的大小(以 GB 为单位)。 此元素可用于覆盖虚拟机映像中的磁盘大小。

此值不能大于 1023 GB
int
encryptionSettings 指定 OS 磁盘的加密设置。

最低 API 版本:2015-06-15
DiskEncryptionSettings
图像 源用户映像虚拟硬盘。 在附加到虚拟机之前,将复制虚拟硬盘。 如果提供了 SourceImage,则目标虚拟硬盘驱动器不得存在。 VirtualHardDisk
managedDisk 托管磁盘参数。 ManagedDiskParameters
名字 磁盘名称。 字符串
osType 此属性允许指定从用户映像或专用 VHD 创建 VM 时磁盘中包含的 OS 类型。

可能的值包括:

Windows

Linux
“Linux”
“Windows”
vhd 虚拟硬盘。 VirtualHardDisk
writeAcceleratorEnabled 指定是应在磁盘上启用或禁用 writeAccelerator。 bool

OSProfile

名字 描述 价值
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 指定管理员帐户的名称。

创建 VM 后,无法更新此属性。

仅限 Windows 的限制: 不能以“.” 结尾。

不允许的值: “administrator”、“admin”、“user1”、“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
computerName 指定虚拟机的主机 OS 名称。

创建 VM 后,无法更新此名称。

最大长度(Windows): 15 个字符

最大长度(Linux): 64 个字符。

有关命名约定和限制,请参阅 Azure 基础结构服务实现指南
字符串
customData 指定自定义数据的 base-64 编码字符串。 base-64 编码字符串将解码为作为虚拟机上的文件保存的二进制数组。 二进制数组的最大长度为 65535 字节。

注意:不要在 customData 属性中传递任何机密或密码

创建 VM 后,无法更新此属性。

customData 将传递给要另存为文件的 VM,有关详细信息,请参阅 Azure VM 上的自定义数据

有关将 cloud-init 用于 Linux VM,请参阅 使用 cloud-init 在创建期间自定义 Linux VM
字符串
linuxConfiguration 指定虚拟机上的 Linux 操作系统设置。

有关受支持的 Linux 分发版的列表,请参阅 Azure-Endorsed 分发版上的 Linux
LinuxConfiguration
requireGuestProvisionSignal 必须设置为 True 或省略的可选属性。 bool
秘密 指定应安装在虚拟机上的证书集。 若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 WindowsAzure 密钥库 虚拟机扩展。 VaultSecretGroup[]
windowsConfiguration 指定虚拟机上的 Windows 操作系统设置。 WindowsConfiguration

PatchSettings

名字 描述 价值
assessmentMode 指定 IaaS 虚拟机的 VM 来宾修补程序评估模式。

可能的值包括:

ImageDefault - 控制虚拟机上的修补程序评估的时间。

AutomaticByPlatform - 平台将触发定期修补评估。 属性 provisionVMAgent 必须为 true。
“AutomaticByPlatform”
“ImageDefault”
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。 字符串

PublicIPAddressSku

名字 描述 价值
名字 指定公共 IP SKU 名称 “Basic”
“Standard”
指定公共 IP SKU 层 “Global”
“区域”

ResourceTags

名字 描述 价值

ScheduledEventsProfile

名字 描述 价值
terminateNotificationProfile 指定终止计划事件相关配置。 TerminateNotificationProfile

SecurityProfile

名字 描述 价值
encryptionAtHost 用户可以在请求中使用此属性来启用或禁用虚拟机或虚拟机规模集的主机加密。 这将为所有磁盘启用加密,包括主机本身的资源/临时磁盘。

默认值:除非将此属性设置为 true,否则将禁用主机上的加密。
bool
securityType 指定虚拟机的 SecurityType。 必须将其设置为任何指定值才能启用 UefiSettings。

默认值:除非设置了此属性,否则不会启用 UefiSettings。
“ConfidentialVM”
“TrustedLaunch”
uefiSettings 指定在创建虚拟机时使用的安全启动和 vTPM 等安全设置。

最低 API 版本:2020-12-01
UefiSettings

SshConfiguration

名字 描述 价值
publicKeys 用于通过基于 Linux 的 VM 进行身份验证的 SSH 公钥列表。 SshPublicKey[]

SshPublicKey

名字 描述 价值
keyData 用于通过 ssh 向 VM 进行身份验证的 SSH 公钥证书。 密钥必须至少为 2048 位且采用 ssh-rsa 格式。

有关创建 ssh 密钥,请参阅 在 Azure中的 Linux 和 Mac 上为 Linux VM 创建 SSH 密钥。
字符串
路径 指定存储 ssh 公钥的已创建 VM 上的完整路径。 如果文件已存在,则指定的键将追加到该文件中。 示例:/home/user/.ssh/authorized_keys 字符串

StorageProfile

名字 描述 价值
dataDisks 指定用于向虚拟机添加数据磁盘的参数。

有关磁盘的详细信息,请参阅 关于 Azure 虚拟机的磁盘和 VHD
DataDisk[]
imageReference 指定要使用的图像的信息。 可以指定有关平台映像、市场映像或虚拟机映像的信息。 若要使用平台映像、市场映像或虚拟机映像,但不在其他创建操作中使用,则需要此元素。 ImageReference
osDisk 指定有关虚拟机使用的操作系统磁盘的信息。

有关磁盘的详细信息,请参阅 关于 Azure 虚拟机的磁盘和 VHD
OSDisk

SubResource

名字 描述 价值
id 资源 ID 字符串

TerminateNotificationProfile

名字 描述 价值
使 指定是启用或禁用终止计划事件。 bool
notBeforeTimeout 删除虚拟机的可配置时间长度可能需要在事件自动批准(超时)之前批准终止计划事件。 必须以 ISO 8601 格式指定配置,默认值为 5 分钟(PT5M) 字符串

UefiSettings

名字 描述 价值
secureBootEnabled 指定是否应在虚拟机上启用安全启动。

最低 API 版本:2020-12-01
bool
vTpmEnabled 指定是否应在虚拟机上启用 vTPM。

最低 API 版本:2020-12-01
bool

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 密钥库 虚拟机扩展或适用于 WindowsAzure 密钥库 虚拟机扩展。
字符串

VaultSecretGroup

名字 描述 价值
sourceVault Key Vault 的相对 URL,其中包含 VaultCertificates 中的所有证书。 SubResource
vaultCertificates SourceVault 中包含证书的密钥保管库引用列表。 VaultCertificate[]

VirtualHardDisk

名字 描述 价值
uri 指定虚拟硬盘的 URI。 字符串

VirtualMachineIdentity

名字 描述 价值
类型 用于虚拟机的标识类型。 类型“SystemAssigned,UserAssigned”包括隐式创建的标识和一组用户分配的标识。 类型“None”将从虚拟机中删除任何标识。 “None”
“SystemAssigned”
“SystemAssigned,UserAssigned”
“UserAssigned”
userAssignedIdentities 与虚拟机关联的用户标识列表。 用户标识字典密钥引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 VirtualMachineIdentityUserAssignedIdentities

VirtualMachineIdentityUserAssignedIdentities

名字 描述 价值

VirtualMachineIpTag

名字 描述 价值
ipTagType IP 标记类型。 示例:FirstPartyUsage。 字符串
标记 与公共 IP 关联的 IP 标记。 示例:SQL、存储等。 字符串

VirtualMachineNetworkInterfaceConfiguration

名字 描述 价值
名字 网络接口配置名称。 string (必需)
性能 描述虚拟机网络配置文件的 IP 配置。 VirtualMachineNetworkInterfaceConfigurationProperties

VirtualMachineNetworkInterfaceConfigurationProperties

名字 描述 价值
deleteOption 指定删除 VM 时网络接口发生的情况 “Delete”
“Detach”
dnsSettings 要应用于网络接口的 dns 设置。 VirtualMachineNetworkInterfaceDnsSettingsConfiguration
dscpConfiguration SubResource
enableAcceleratedNetworking 指定网络接口是否已启用加速网络。 bool
enableFpga 指定网络接口是否已启用 FPGA 网络。 bool
enableIPForwarding 是否在此 NIC 上启用了 IP 转发。 bool
ipConfigurations 指定网络接口的 IP 配置。 VirtualMachineNetworkInterfaceIPConfiguration[] (必需)
networkSecurityGroup 网络安全组。 SubResource
主要 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 bool

VirtualMachineNetworkInterfaceDnsSettingsConfiguration

名字 描述 价值
dnsServers DNS 服务器 IP 地址列表 string[]

VirtualMachineNetworkInterfaceIPConfiguration

名字 描述 价值
名字 IP 配置名称。 string (必需)
性能 描述虚拟机网络接口 IP 配置属性。 VirtualMachineNetworkInterfaceIPConfigurationProperties

VirtualMachineNetworkInterfaceIPConfigurationProperties

名字 描述 价值
applicationGatewayBackendAddressPools 指定对应用程序网关后端地址池的引用数组。 虚拟机可以引用多个应用程序网关的后端地址池。 多个虚拟机不能使用相同的应用程序网关。 SubResource[]
applicationSecurityGroups 指定对应用程序安全组的引用数组。 SubResource[]
loadBalancerBackendAddressPools 指定对负载均衡器后端地址池的引用数组。 虚拟机可以引用一个公共负载均衡器和一个内部负载均衡器的后端地址池。 [多个虚拟机不能使用相同的基本 SKU 负载均衡器]。 SubResource[]
主要 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 bool
privateIPAddressVersion 从 Api-Version 2017-03-30 开始提供,它表示特定 ipconfiguration 是 IPv4 还是 IPv6。 默认值被视为 IPv4。 可能的值为:“IPv4”和“IPv6”。 “IPv4”
“IPv6”
publicIPAddressConfiguration publicIPAddressConfiguration。 VirtualMachinePublicIPAddressConfiguration
指定子网的标识符。 SubResource

VirtualMachineProperties

名字 描述 价值
additionalCapabilities 指定在虚拟机上启用或禁用的其他功能。 AdditionalCapabilities
applicationProfile 指定应提供给 VM/VMSS 的库应用程序 ApplicationProfile
availabilitySet 指定应将虚拟机分配到的可用性集的相关信息。 在同一可用性集中指定的虚拟机分配给不同的节点,以最大程度地提高可用性。 有关可用性集的详细信息,请参阅 可用性集概述

有关 Azure 计划内维护的详细信息,请参阅 Azure 中虚拟机的 维护和更新

目前,只能在创建时将 VM 添加到可用性集。 要向其添加 VM 的可用性集应与可用性集资源位于同一资源组下。 无法将现有 VM 添加到可用性集。

此属性不能与非 null properties.virtualMachineScaleSet 引用一起存在。
SubResource
billingProfile 指定 Azure 现成虚拟机的计费相关详细信息。

最低 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”
extensionsTimeBudget 指定分配所有扩展开始的时间。 持续时间应介于 15 分钟到 120 分钟(含)之间,应采用 ISO 8601 格式指定。 默认值为 90 分钟(PT1H30M)。

最低 API 版本:2020-06-01
字符串
hardwareProfile 指定虚拟机的硬件设置。 HardwareProfile
主机 指定虚拟机所在的专用主机的相关信息。

最低 API 版本:2018-10-01。
SubResource
hostGroup 指定有关虚拟机所在的专用主机组的信息。

最低 API 版本:2020-06-01。

注意:用户不能同时指定主机和 hostGroup 属性。
SubResource
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 指定虚拟机的网络接口。 NetworkProfile
osProfile 指定创建虚拟机时使用的操作系统设置。 预配 VM 后,无法更改某些设置。 OSProfile
platformFaultDomain 指定要在其中创建虚拟机的规模集逻辑容错域。 默认情况下,虚拟机将自动分配给容错域,该容错域最适合跨可用容错域保持平衡。
<li>仅当设置了此虚拟机的“virtualMachineScaleSet”属性时,此选项才适用。<li>引用的虚拟机规模集必须具有“platformFaultDomainCount”> 1。<li>创建虚拟机后无法更新此属性。<li>容错域分配可以在虚拟机实例视图中查看。

最低 api 版本:2020-12?01
int
优先权 指定虚拟机的优先级。

最低 API 版本:2019-03-01
“Low”
“Regular”
“Spot”
proximityPlacementGroup 指定应将虚拟机分配到的邻近放置组的相关信息。

最低 api 版本:2018-04-01。
SubResource
scheduledEventsProfile 指定与计划事件相关的配置。 ScheduledEventsProfile
securityProfile 指定虚拟机的安全相关配置文件设置。 SecurityProfile
storageProfile 指定虚拟机磁盘的存储设置。 StorageProfile
userData VM 的 UserData(必须进行 base-64 编码)。 客户不应在此处传递任何机密。

最低 API 版本:2021-03-01
字符串
virtualMachineScaleSet 指定应向其分配虚拟机规模集的信息。 在同一虚拟机规模集中指定的虚拟机分配给不同的节点,以最大程度地提高可用性。 目前,只能在创建时将 VM 添加到虚拟机规模集。 无法将现有 VM 添加到虚拟机规模集。

此属性不能与非 null properties.availabilitySet 引用一起存在。

最低 api-version: 2019-03?01
SubResource

VirtualMachinePublicIPAddressConfiguration

名字 描述 价值
名字 publicIP 地址配置名称。 string (必需)
性能 介绍虚拟机 IP 配置的公共 IPAddress 配置 VirtualMachinePublicIPAddressConfigurationProperties
sku 描述公共 IP Sku。 只能将 OrchestrationMode 设置为灵活。 PublicIPAddressSku

VirtualMachinePublicIPAddressConfigurationProperties

名字 描述 价值
deleteOption 指定删除 VM 时公共 IP 地址发生的情况 “Delete”
“Detach”
dnsSettings 要应用于 publicIP 地址的 dns 设置。 VirtualMachinePublicIPAddressDnsSettingsConfiguration
idleTimeoutInMinutes 公共 IP 地址的空闲超时。 int
ipTags 与公共 IP 地址关联的 IP 标记列表。 VirtualMachineIpTag[]
publicIPAddressVersion 从 Api-Version 2019-07-01 开始提供,它表示特定 ipconfiguration 是 IPv4 还是 IPv6。 默认值被视为 IPv4。 可能的值为:“IPv4”和“IPv6”。 “IPv4”
“IPv6”
publicIPAllocationMethod 指定公共 IP 分配类型 “Dynamic”
“Static”
publicIPPrefix 要从中分配 publicIP 地址的 PublicIPPrefix。 SubResource

VirtualMachinePublicIPAddressDnsSettingsConfiguration

名字 描述 价值
domainNameLabel 将创建的 PublicIPAddress 资源的域名标签前缀。 生成的名称标签是域名标签和 vm 网络配置文件唯一 ID 的串联。 string (必需)

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 将替换包的默认配置(如果提供) 字符串
次序 可选,指定包必须安装的顺序 int
packageReferenceId 指定 /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/applications/{application}/versions/{version} 形式的 GalleryApplicationVersion 资源 ID string (必需)
标签 可选,指定更多泛型上下文的传递值。 字符串

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
patchSettings [预览功能]指定与 Windows 上的 VM 来宾修补相关的设置。 PatchSettings
provisionVMAgent 指示是否应在虚拟机上预配虚拟机代理。

如果未在请求正文中指定此属性,则默认行为是将其设置为 true。 这将确保 VM 代理安装在 VM 上,以便以后可以向 VM 添加扩展。
bool
timeZone 指定虚拟机的时区。 例如“太平洋标准时间”。

可能的值可以从 TimeZoneInfo.GetSystemTimeZones返回的时区 TimeZoneInfo.Id 值。
字符串
winRM 指定 Windows 远程管理侦听器。 这将启用远程 Windows PowerShell。 WinRMConfiguration

WinRMConfiguration

名字 描述 价值
听众 Windows 远程管理侦听器列表 WinRMListener[]

WinRMListener

名字 描述 价值
certificateUrl 这是已作为机密上传到 Key Vault 的证书的 URL。 若要将机密添加到 Key Vault,请参阅 向密钥保管库添加密钥或机密。 在这种情况下,证书必须是以下 JSON 对象的 Base64 编码,该对象在 UTF-8 中编码:

{
“data”:“<Base64 编码的证书>”,
“dataType”:“pfx”,
“password”:“<pfx-file-password>”
}
若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 WindowsAzure 密钥库 虚拟机扩展。
字符串
协议 指定 WinRM 侦听器的协议。

可能的值包括:
http

https
“Http”
“Https”

快速入门示例

以下快速入门示例部署此资源类型。

Bicep 文件 描述
101-1vm-2nics-2subnets-1vnet 创建一个新的 VM,其中包含两个 NIC,这些 NIC 连接到同一 VNet 中的两个不同的子网。
VNET 中的 2 个 VM - 内部负载均衡器和 LB 规则 此模板允许在 VNET 和内部负载均衡器下创建 2 个虚拟机,并在端口 80 上配置负载均衡规则。 此模板还部署存储帐户、虚拟网络、公共 IP 地址、可用性集和网络接口。
使用 NAT 网关和应用程序网关 AKS 群集 此示例演示如何使用 NAT 网关部署 AKS 群集进行出站连接,以及如何为入站连接部署应用程序网关。
使用应用程序网关入口控制器 AKS 群集 此示例演示如何使用应用程序网关、应用程序网关入口控制器、Azure 容器注册表、Log Analytics 和 Key Vault 部署 AKS 群集
使用 GoAccess Azure 应用程序网关日志分析器 此模板使用 Azure Linux CustomScript 扩展通过 GoAccess 部署 Azure 应用程序网关日志分析器。 部署模板创建 Ubuntu VM,安装应用程序网关日志处理器、GoAccess、Apache WebServer 并将其配置为分析 Azure 应用程序网关访问日志。
Azure Game Developer Virtual Machine Azure 游戏开发人员虚拟机包括 Unreal 等授权引擎。
Azure 机器学习端到端安全设置 此 Bicep 模板集演示如何在安全设置中端到端设置 Azure 机器学习。 此参考实现包括工作区、计算群集、计算实例和附加的专用 AKS 群集。
Azure 机器学习端到端安全设置(旧版) 此 Bicep 模板集演示如何在安全设置中端到端设置 Azure 机器学习。 此参考实现包括工作区、计算群集、计算实例和附加的专用 AKS 群集。
Azure 流量管理器 VM 示例 此模板演示如何跨多个虚拟机创建 Azure 流量管理器配置文件负载均衡。
CentOS/UbuntuServer 自动动态磁盘 & Docker 1.12(cs) 这是用于创建单个实例 CentOS 7.2/7.1/6.5 或 Ubuntu Server 16.04.0-LTS 的常见模板,其中包含可配置的数据磁盘数(可配置大小)。 门户参数中可以提及最多 16 个磁盘,每个磁盘的最大大小应小于 1023 GB。 MDADM RAID0 阵列是自动装载的,在重启后幸存下来。 最新的 Docker 1.12(cs3) (Swarm), docker-compose 1.9.0 & docker-machine 0.8.2 可用于从用户 azure-cli 自动作为 docker 容器运行。 此单实例模板是 HPC/GPU 群集模板 @ https://github.com/azurebigcompute/BigComputeBench
创建跨区域负载均衡器 此模板创建包含两个区域负载均衡器的后端池的跨区域负载均衡器。 跨区域负载均衡器目前在有限的区域中可用。 跨区域负载均衡器后面的区域负载均衡器可以位于任何区域中。
创建专用 AKS 群集 此示例演示如何在虚拟网络中创建专用 AKS 群集以及 jumpbox 虚拟机。
使用 Linux VM 创建 Azure 防火墙的沙盒设置 此模板创建包含 3 个子网的虚拟网络(服务器子网、jumpbox 子集和 AzureFirewall 子网)、具有公共 IP 的 jumpbox VM、服务器 VM、UDR 路由以指向服务器子网的 Azure 防火墙和具有 1 个或多个公共 IP 地址的 Azure 防火墙、1 个示例应用程序规则、1 个示例网络规则和默认专用范围
使用区域 创建 Azure 防火墙的沙盒设置 此模板创建包含三个子网(服务器子网、jumpbox 子网和 Azure 防火墙子网)的虚拟网络、具有公共 IP 的 jumpbox VM、A 服务器 VM、UDR 路由以指向 ServerSubnet 的 Azure 防火墙、一个具有一个或多个公共 IP 地址的 Azure 防火墙、一个示例应用程序规则,以及可用性区域 1 中的一个示例网络规则和 Azure 防火墙, 2 和 3。
创建标准内部负载均衡器 此模板使用规则负载均衡端口 80 创建标准内部 Azure 负载均衡器
创建标准负载均衡器 此模板为后端池创建面向 Internet 的负载均衡器、负载均衡规则和三个 VM,并在冗余区域中为每个 VM 创建一个 VM。
创建具有多个空StandardSSD_LRS数据磁盘的 VM 使用此模板,可以从指定的映像创建 Windows 虚拟机。 默认情况下,它还附加多个空的 StandardSSD 数据磁盘。 请注意,可以指定空数据磁盘的大小和存储类型(Standard_LRS、StandardSSD_LRS和Premium_LRS)。
创建具有多个 NIC 和 RDP 可访问的 VM 使用此模板可以创建具有多个(2)网络接口(NIC)的虚拟机,并使用配置的负载均衡器和入站 NAT 规则创建 RDP 可连接。 可以使用此模板轻松添加更多 NIC。 此模板还部署存储帐户、虚拟网络、公共 IP 地址和 2 个网络接口(前端和后端)。
创建 Azure 应用程序网关 v2 此模板在后端池中创建包含两台 Windows Server 2016 服务器的 Azure 应用程序网关
使用 IpGroups 创建 Azure 防火墙 此模板创建一个 Azure 防火墙,其中包含引用 IP 组的应用程序和网络规则。 此外,还包括 Linux Jumpbox vm 设置
创建具有多个 IP 公共地址的 Azure 防火墙 此模板创建一个 Azure 防火墙,其中包含两个公共 IP 地址和两台要测试的 Windows Server 2019 服务器。
使用新的 AD 林创建 Azure VM 此模板创建新的 Azure VM,它将 VM 配置为新林的 AD DC
在 Azure 应用程序网关上创建 Azure WAF v2 此模板在 Azure 应用程序网关上创建一个 Azure Web 应用程序防火墙 v2,并在后端池中使用两台 Windows Server 2016 服务器
创建 Ubuntu GNOME 桌面 此模板创建 ubuntu 桌面计算机。 这非常适合用作 NAT 后面的跳转盒。
使用 Puppet 代理预填充的新 Ubuntu VM 此模板创建 Ubuntu VM,并使用 CustomScript 扩展将 Puppet 代理安装到其中。
创建 Azure 防火墙、客户端 VM 和服务器 VM 的沙盒 此模板创建一个虚拟网络,其中包含 2 个子网(服务器子网和 AzureFirewall 子网)、服务器 VM、客户端 VM、每个 VM 的公共 IP 地址,以及一个路由表,用于通过防火墙在 VM 之间发送流量。
使用 Microsoft Entra ID 联接创建 AVD 通过此模板,可以创建 Azure 虚拟桌面资源,例如主机池、应用程序组、工作区、测试会话主机及其扩展,Microsoft Entra ID 联接
在 Ubuntu VM 上 自定义脚本扩展 此模板创建 Ubuntu VM 并安装 CustomScript 扩展
在中心虚拟网络 部署 Bastion 主机 此模板创建两个具有对等互连的 vNet:中心 vNet 中的 Bastion 主机和辐射 vNet 中的 Linux VM
使用 MSI 部署 Linux 或 Windows VM 使用此模板,可以使用托管服务标识部署 Linux 或 Windows VM。
部署 Nextflow 基因组学群集 此模板使用 Jumpbox、n 群集节点、docker 支持和共享存储部署可缩放的 Nextflow 群集。
部署简单的 Ubuntu Linux VM 20.04-LTS 此模板部署一个 Ubuntu Server,其中包含一些 VM 选项。 可以提供 VM 名称、OS 版本、VM 大小以及管理员用户名和密码。 默认情况下,VM 大小为Standard_D2s_v3,OS 版本为 20.04-LTS。
部署简单的 Windows VM 使用此模板,可以使用 Windows 版本的几个不同选项(使用最新修补的版本)部署简单的 Windows VM。 这会在资源组位置部署 A2 大小的 VM,并返回 VM 的 FQDN。
部署带有标记的简单 Windows VM 此模板将部署D2_v3 Windows VM、NIC、存储帐户、虚拟网络、公共 IP 地址和网络安全组。 标记对象在变量中创建,并将应用于所有资源(如果适用)。
部署支持受信任的启动的 Linux 虚拟机 使用此模板,可以使用 Linux 版本的几个不同选项(使用最新的修补版本)部署支持受信任的启动的 Linux 虚拟机。 如果启用 Secureboot 和 vTPM,则会在 VM 上安装来宾证明扩展。 此扩展将通过云执行远程 证明。 默认情况下,这将在资源组位置部署Standard_D2_v3大小的虚拟机,并返回虚拟机的 FQDN。
部署支持受信任启动的 Windows 虚拟机 使用此模板,可以使用 Windows 版本的几个不同选项(使用最新修补的版本)部署支持受信任的启动的 Windows 虚拟机。 如果启用 Secureboot 和 vTPM,则会在 VM 上安装来宾证明扩展。 此扩展将通过云执行远程 证明。 默认情况下,这将在资源组位置部署Standard_D2_v3大小的虚拟机,并返回虚拟机的 FQDN。
部署 Ubuntu Linux DataScience VM 18.04 此模板使用一些用于数据科学的工具部署 Ubuntu Server。 可以提供用户名、密码、虚拟机名称,并在 CPU 或 GPU 计算之间进行选择。
使用自定义数据部署虚拟机 此模板允许创建一个虚拟机,其中包含传递到 VM 的自定义数据。 此模板还部署存储帐户、虚拟网络、公共 IP 地址和网络接口。
部署 Windows VM 并使用 Azure 备份 启用备份 使用此模板,可以部署使用 DefaultPolicy 进行保护配置的 Windows VM 和恢复服务保管库。
使用 Windows Admin Center 扩展部署 Windows VM 使用此模板,可以使用 Windows Admin Center 扩展部署 Windows VM,以便直接从 Azure 门户管理 VM。
部署 Anbox Cloud 此模板在 Ubuntu VM 上部署 Anbox Cloud。 完成 Anbox Cloud 的安装需要在部署后进行用户交互;有关说明,请参阅自述文件。 该模板支持从 Ubuntu Pro 映像启动 VM,以及 Ubuntu Pro 令牌与从非专业映像启动的 VM 的关联。 前者是默认行为:试图将令牌附加到从非 Pro 映像启动的 VM 的用户必须替代 ubuntuImageOffer、ubuntuImageSKU 和 ubuntuProToken 参数的默认参数。 该模板也是 VM 大小和磁盘大小的参数。 这些参数的非默认参数值必须符合 https://anbox-cloud.io/docs/reference/requirements#anbox-cloud-appliance-4
部署 Darktrace vSensors 使用此模板可以部署一个或多个独立 Darktrace vSensors
使用专用终结点部署 MySQL 灵活服务器 此模板提供了使用专用终结点部署 Azure Database for MySQL 灵活服务器的方法。
使用托管虚拟网络部署安全 Azure AI Studio 此模板创建一个安全的 Azure AI Studio 环境,其中包含可靠的网络和标识安全限制。
在 Windows 上部署 Shibboleth 标识提供者群集 此模板在群集配置中在 Windows 上部署 Shibboleth 标识提供者。 部署成功后,可以转到 https://your-domain:8443/idp/profile/status(记下端口号)检查成功。
使用 Open JDK 和 Tomcat 部署 Ubuntu VM 使用此模板,可以使用 OpenJDK 和 Tomcat 创建 Ubuntu VM。 当前,自定义脚本文件是从 raw.githubusercontent.com/snallami/templates/master/ubuntu/java-tomcat-install.sh 上的 https 链接暂时拉取的。成功预配 VM 后,可以通过访问 http 链接 [FQDN 名称或公共 IP]:8080/ 来验证 tomcat 安装
在现有 VNET & AD 上部署 SQL Server 2014 AG 此模板在现有 VNET 上创建三个新的 Azure VM:两个 VM 配置为 SQL Server 2014 可用性组副本节点,一个 VM 配置为用于自动群集故障转移的文件共享见证。 除了这些 VM,还配置了以下其他 Azure 资源:内部负载均衡器、存储帐户。 若要在每个 VM 中配置群集、SQL Server 和可用性组,将利用 PowerShell DSC。 对于 Active Directory 支持,应已在现有 VNET 上部署现有的 Active Directory 域控制器。
Dokku 实例 Dokku 是单个 VM 上的迷你式 PaaS。
使用 VM 和专用链接服务 Front Door Premium 此模板创建 Front Door Premium 和配置为 Web 服务器的虚拟机。 Front Door 使用专用终结点和专用链接服务将流量发送到 VM。
GitLab Omnibus 此模板简化了使用公共 DNS 在虚拟机上部署 GitLab Omnibus,并利用公共 IP 的 DNS。 它利用Standard_F8s_v2实例大小,该大小与参考体系结构保持一致,支持多达 1000 个用户(20 RPS)。 该实例已预先配置为将 HTTPS 与 Let's Encrypt 证书配合使用,以便进行安全连接。
Hazelcast 群集 Hazelcast 是一个内存中数据平台,可用于各种数据应用程序。 此模板将部署任意数量的 Hazelcast 节点,它们将自动发现彼此。
Hyper-V 包含嵌套 VM 的主机虚拟机 将虚拟机部署到 Hyper-V 主机和所有依赖资源,包括虚拟网络、公共 IP 地址和路由表。
在 Windows VM 上使用 DSC 扩展 IIS Server 此模板创建 Windows VM,并使用 DSC 扩展设置 IIS 服务器。 请注意,如果使用的是 Azure 存储,DSC 配置模块需要传入 SAS 令牌。 对于 GitHub 中的 DSC 模块链接(此模板中的默认值),无需这样做。
SQL Server 2014 VM & IIS VM 在 VNET 中创建 1 或 2 个 IIS Windows 2012 R2 Web 服务器和一个后端 SQL Server 2014。
RHEL 上的 JBoss EAP (群集、多 VM) 此模板允许创建多个运行 JBoss EAP 7.4 群集的 RHEL 8.6 VM,并部署名为 eap-session-replication 的 Web 应用程序,可以使用部署时配置的 JBoss EAP 用户名和密码登录到管理控制台。
将 VM 加入现有域 此模板演示在云中加入专用 AD 域。
使用 Gnome 桌面 RDP VSCode 和 Azure CLI Linux VM 此模板部署 Ubuntu Server VM,然后使用 Linux CustomScript 扩展(通过 xrdp)安装 Ubuntu Gnome 桌面和远程桌面支持。 最终预配的 Ubuntu VM 支持通过 RDP 进行远程连接。
使用 MSI 访问存储 Linux VM 此模板部署具有系统分配的托管标识的 Linux VM,该标识有权访问其他资源组中的存储帐户。
使用托管磁盘 多 VM 模板 此模板将使用托管磁盘、公共 IP 和网络接口创建 N 个 VM 数量。 它将在单个可用性集中创建 VM。 它们将在虚拟网络中预配,该虚拟网络也将作为部署的一部分创建
OpenScholar 此模板将 OpenScholar 部署到 ubuntu VM 16.04
专用终结点示例 此模板演示如何创建指向 Azure SQL Server 的专用终结点
专用链接服务示例 此模板演示如何创建专用链接服务
链接到网关负载均衡器的公共负载均衡器 此模板允许你将链接的公共标准负载均衡器部署到网关负载均衡器。 从 Internet 传入的流量通过后端池中的 linux VM(NVA)路由到网关负载均衡器。
将证书推送到 Windows VM 将证书推送到 Windows VM。 使用模板在 http://azure.microsoft.com/en-us/documentation/templates/101-create-key-vault 创建 Key Vault
SAP 2 层 S/4HANA 完全激活的设备 此模板部署 SAP S/4HANA 完全激活的设备系统。
安全虚拟中心 此模板使用 Azure 防火墙创建安全的虚拟中心,以保护发往 Internet 的云网络流量。
Azure VM 上的自承载集成运行时 此模板创建自承载集成运行时并在 Azure 虚拟机上注册它
SharePoint 订阅/ 2019 / 2016 完全配置 创建 DC、SQL Server 2022 和从 1 到 5 个服务器(s)托管 SharePoint 订阅/2019 / 2016 场,其中包含大量配置,包括受信任的身份验证、具有个人网站的用户配置文件、OAuth 信任(使用证书)、用于托管高信任外接程序的专用 IIS 站点,等等。已安装最新版本的密钥软件(包括 Fiddler、vscode、np++、7zip、ULS 查看器)。 SharePoint 计算机具有其他微调功能,使它们立即可用(远程管理工具、Edge 和 Chrome 的自定义策略、快捷方式等)。
使用具有 BGP 的主动-主动 VPN 网关 站点到站点 VPN 通过此模板,可以使用 BGP 在配置主动-主动的两个 VNet 之间部署站点到站点 VPN VPN。 每个 Azure VPN 网关解析远程对等方的 FQDN,以确定远程 VPN 网关的公共 IP。 模板在具有可用性区域的 Azure 区域中按预期运行。
具有性能优化存储设置的 SQL Server VM 在 PremiumSSD 上创建具有性能优化存储设置的 SQL Server 虚拟机
Azure 防火墙高级版 的 测试环境 此模板创建具有高级功能(例如入侵检查检测(IDPS)、TLS 检查和 Web 类别筛选等高级功能的 Azure 防火墙高级和防火墙策略
使用 VSCode Ubuntu Mate 桌面 VM 使用此模板,可以使用 Ubuntu 版本的几个不同选项(使用最新修补的版本)部署简单的 Linux VM。 这会在资源组位置部署 A1 大小的 VM,并返回 VM 的 FQDN。
使用 Azure 防火墙作为中心 & 辐射型拓扑中的 DNS 代理 此示例演示如何使用 Azure 防火墙在 Azure 中部署中心辐射型拓扑。 中心虚拟网络充当通过虚拟网络对等互连连接到中心虚拟网络的许多辐射虚拟网络的中心点。
使用 RDP 端口 虚拟机 创建虚拟机,并为负载均衡器中的 VM 创建 RDP 的 NAT 规则
使用条件资源 虚拟机 此模板允许使用虚拟网络、存储和公共 IP 地址的新资源或现有资源部署 Linux VM。 它还允许在 SSH 和密码身份验证之间进行选择。 模板使用条件和逻辑函数来消除对嵌套部署的需求。
使用 VM 虚拟网络 NAT 部署 NAT 网关和虚拟机
使用用于项目下载的托管标识 VM 此模板演示如何使用托管标识为虚拟机的自定义脚本扩展下载项目。
使用负载均衡器和 NAT 在可用性区域中 VM 使用此模板,可以使用负载均衡器创建跨可用性区域分布的虚拟机,并通过负载均衡器配置 NAT 规则。 此模板还部署虚拟网络、公共 IP 地址和网络接口。 在此模板中,我们使用资源循环功能创建网络接口和虚拟机
安装了 Portainer 和 Traefik 的 Windows Docker 主机 预安装了 Portainer 和 Traefik 的 Windows Docker 主机
使用 SSH Windows Server VM 部署启用了开放 SSH 的单个 Windows VM,以便可以使用基于密钥的身份验证通过 SSH 进行连接。
使用 Azure 安全基线 Windows VM 该模板使用公共 IP 地址在新虚拟网络中创建运行 Windows Server 的虚拟机。 部署计算机后,将安装来宾配置扩展,并应用 Windows Server 的 Azure 安全基线。 如果计算机配置偏移,可以通过再次部署模板来重新应用设置。
预装了 O365 的 Windows VM 此模板创建基于 Windows 的 VM。 它使用新的计算堆栈在新 vnet、存储帐户、nic 和公共 IP 中创建 VM。

ARM 模板资源定义

可以使用目标操作部署 virtualMachines 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.Compute/virtualMachines 资源,请将以下 JSON 添加到模板。

{
  "type": "Microsoft.Compute/virtualMachines",
  "apiVersion": "2021-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"
    },
    "applicationProfile": {
      "galleryApplications": [
        {
          "configurationReference": "string",
          "order": "int",
          "packageReferenceId": "string",
          "tags": "string"
        }
      ]
    },
    "availabilitySet": {
      "id": "string"
    },
    "billingProfile": {
      "maxPrice": "int"
    },
    "capacityReservation": {
      "capacityReservationGroup": {
        "id": "string"
      }
    },
    "diagnosticsProfile": {
      "bootDiagnostics": {
        "enabled": "bool",
        "storageUri": "string"
      }
    },
    "evictionPolicy": "string",
    "extensionsTimeBudget": "string",
    "hardwareProfile": {
      "vmSize": "string",
      "vmSizeProperties": {
        "vCPUsAvailable": "int",
        "vCPUsPerCore": "int"
      }
    },
    "host": {
      "id": "string"
    },
    "hostGroup": {
      "id": "string"
    },
    "licenseType": "string",
    "networkProfile": {
      "networkApiVersion": "string",
      "networkInterfaceConfigurations": [
        {
          "name": "string",
          "properties": {
            "deleteOption": "string",
            "dnsSettings": {
              "dnsServers": [ "string" ]
            },
            "dscpConfiguration": {
              "id": "string"
            },
            "enableAcceleratedNetworking": "bool",
            "enableFpga": "bool",
            "enableIPForwarding": "bool",
            "ipConfigurations": [
              {
                "name": "string",
                "properties": {
                  "applicationGatewayBackendAddressPools": [
                    {
                      "id": "string"
                    }
                  ],
                  "applicationSecurityGroups": [
                    {
                      "id": "string"
                    }
                  ],
                  "loadBalancerBackendAddressPools": [
                    {
                      "id": "string"
                    }
                  ],
                  "primary": "bool",
                  "privateIPAddressVersion": "string",
                  "publicIPAddressConfiguration": {
                    "name": "string",
                    "properties": {
                      "deleteOption": "string",
                      "dnsSettings": {
                        "domainNameLabel": "string"
                      },
                      "idleTimeoutInMinutes": "int",
                      "ipTags": [
                        {
                          "ipTagType": "string",
                          "tag": "string"
                        }
                      ],
                      "publicIPAddressVersion": "string",
                      "publicIPAllocationMethod": "string",
                      "publicIPPrefix": {
                        "id": "string"
                      }
                    },
                    "sku": {
                      "name": "string",
                      "tier": "string"
                    }
                  },
                  "subnet": {
                    "id": "string"
                  }
                }
              }
            ],
            "networkSecurityGroup": {
              "id": "string"
            },
            "primary": "bool"
          }
        }
      ],
      "networkInterfaces": [
        {
          "id": "string",
          "properties": {
            "deleteOption": "string",
            "primary": "bool"
          }
        }
      ]
    },
    "osProfile": {
      "adminPassword": "string",
      "adminUsername": "string",
      "allowExtensionOperations": "bool",
      "computerName": "string",
      "customData": "string",
      "linuxConfiguration": {
        "disablePasswordAuthentication": "bool",
        "patchSettings": {
          "assessmentMode": "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",
        "patchSettings": {
          "assessmentMode": "string",
          "enableHotpatching": "bool",
          "patchMode": "string"
        },
        "provisionVMAgent": "bool",
        "timeZone": "string",
        "winRM": {
          "listeners": [
            {
              "certificateUrl": "string",
              "protocol": "string"
            }
          ]
        }
      }
    },
    "platformFaultDomain": "int",
    "priority": "string",
    "proximityPlacementGroup": {
      "id": "string"
    },
    "scheduledEventsProfile": {
      "terminateNotificationProfile": {
        "enable": "bool",
        "notBeforeTimeout": "string"
      }
    },
    "securityProfile": {
      "encryptionAtHost": "bool",
      "securityType": "string",
      "uefiSettings": {
        "secureBootEnabled": "bool",
        "vTpmEnabled": "bool"
      }
    },
    "storageProfile": {
      "dataDisks": [
        {
          "caching": "string",
          "createOption": "string",
          "deleteOption": "string",
          "detachOption": "string",
          "diskSizeGB": "int",
          "image": {
            "uri": "string"
          },
          "lun": "int",
          "managedDisk": {
            "diskEncryptionSet": {
              "id": "string"
            },
            "id": "string",
            "securityProfile": {
              "diskEncryptionSet": {
                "id": "string"
              },
              "securityEncryptionType": "string"
            },
            "storageAccountType": "string"
          },
          "name": "string",
          "toBeDetached": "bool",
          "vhd": {
            "uri": "string"
          },
          "writeAcceleratorEnabled": "bool"
        }
      ],
      "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",
        "encryptionSettings": {
          "diskEncryptionKey": {
            "secretUrl": "string",
            "sourceVault": {
              "id": "string"
            }
          },
          "enabled": "bool",
          "keyEncryptionKey": {
            "keyUrl": "string",
            "sourceVault": {
              "id": "string"
            }
          }
        },
        "image": {
          "uri": "string"
        },
        "managedDisk": {
          "diskEncryptionSet": {
            "id": "string"
          },
          "id": "string",
          "securityProfile": {
            "diskEncryptionSet": {
              "id": "string"
            },
            "securityEncryptionType": "string"
          },
          "storageAccountType": "string"
        },
        "name": "string",
        "osType": "string",
        "vhd": {
          "uri": "string"
        },
        "writeAcceleratorEnabled": "bool"
      }
    },
    "userData": "string",
    "virtualMachineScaleSet": {
      "id": "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”

ApplicationProfile

名字 描述 价值
galleryApplications 指定应提供给 VM/VMSS 的库应用程序 VMGalleryApplication[]

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

DataDisk

名字 描述 价值
缓存 指定缓存要求。

可能的值包括:



ReadOnly

ReadWrite

默认值:标准存储 None。高级存储的 ReadOnly
“None”
“ReadOnly”
“ReadWrite”
createOption 指定应如何创建虚拟机。

可能的值包括:

附加 \u2013 使用专用磁盘创建虚拟机时,将使用此值。

FromImage \u2013 使用映像创建虚拟机时使用此值。 如果使用平台映像,则还使用上述 imageReference 元素。 如果使用市场映像,则还会使用前面所述的计划元素。
“Attach”
“Empty”
“FromImage”(必需)
deleteOption 指定在删除 VM 时是否应删除或分离数据磁盘。

可能的值:

删除 如果使用此值,则删除 VM 时删除数据磁盘。

分离 如果使用此值,则在删除 VM 后保留数据磁盘。

默认值设置为 分离
“Delete”
“Detach”
detachOption 指定要在分离磁盘时使用的分离行为,或者已在从虚拟机分离过程中使用。 支持的值:ForceDetach

detachOption:ForceDetach 仅适用于托管数据磁盘。 如果以前由于虚拟机意外故障而未完成数据磁盘的分离尝试,并且磁盘仍未释放,则使用强制分离作为最后手段选项从 VM 强行分离磁盘。 使用此分离行为时,可能不会刷新所有写入。

此功能仍处于预览模式,VirtualMachineScaleSet 不支持此功能。 若要强制分离数据磁盘更新到BeDetached 到“true”,以及设置 detachOption:“ForceDetach”。
“ForceDetach”
diskSizeGB 指定空数据磁盘的大小(以 GB 为单位)。 此元素可用于覆盖虚拟机映像中的磁盘大小。

此值不能大于 1023 GB
int
图像 源用户映像虚拟硬盘。 在附加到虚拟机之前,将复制虚拟硬盘。 如果提供了 SourceImage,则目标虚拟硬盘驱动器不得存在。 VirtualHardDisk
指定数据磁盘的逻辑单元号。 此值用于标识 VM 中的数据磁盘,因此对于附加到 VM 的每个数据磁盘必须是唯一的。 int (必需)
managedDisk 托管磁盘参数。 ManagedDiskParameters
名字 磁盘名称。 字符串
toBeDetached 指定数据磁盘是否正在从 VirtualMachine/VirtualMachineScaleset 分离 bool
vhd 虚拟硬盘。 VirtualHardDisk
writeAcceleratorEnabled 指定是应在磁盘上启用或禁用 writeAccelerator。 bool

DiagnosticsProfile

名字 描述 价值
bootDiagnostics 启动诊断是一项调试功能,可用于查看控制台输出和屏幕截图来诊断 VM 状态。
注意:如果指定 storageUri,请确保存储帐户与 VM 位于同一区域和订阅中。

可以轻松查看控制台日志的输出。

通过 Azure,还可以从虚拟机监控程序查看 VM 的屏幕截图。
BootDiagnostics

DiffDiskSettings

名字 描述 价值
选择 指定操作系统磁盘的临时磁盘设置。 “Local”
放置 指定操作系统磁盘的临时磁盘放置。

可能的值包括:

CacheDisk

ResourceDisk

默认值:如果为 VM 大小配置了缓存磁盘,则 CacheDisk,否则使用 resourceDisk

请参阅 /azure/virtual-machines/windows/size 和 /azure/virtual-machines/linux/size 上的 Windows VM 的 VM 大小文档,以检查哪些 VM 大小公开缓存磁盘。
“CacheDisk”
“ResourceDisk”

DiskEncryptionSetParameters

名字 描述 价值
id 资源 ID 字符串

DiskEncryptionSettings

名字 描述 价值
diskEncryptionKey 指定磁盘加密密钥的位置,该密钥是 Key Vault 机密。 KeyVaultSecretReference
启用 指定是否应在虚拟机上启用磁盘加密。 bool
keyEncryptionKey 指定 Key Vault 中密钥加密密钥的位置。 KeyVaultKeyReference

ExtendedLocation

名字 描述 价值
名字 扩展位置的名称。 字符串
类型 扩展位置的类型。 “EdgeZone”

HardwareProfile

名字 描述 价值
vmSize 指定虚拟机的大小。

枚举数据类型当前已弃用,将于 2023 年 12 月 23 日删除。

获取可用大小列表的建议方法是使用以下 API:

列出可用性集中的所有可用虚拟机大小

列出区域中所有可用的虚拟机大小

列出用于调整大小的所有可用虚拟机大小。 有关虚拟机大小的详细信息,请参阅虚拟机大小。

可用的 VM 大小取决于区域和可用性集。
“Basic_A0”
“Basic_A1”
“Basic_A2”
“Basic_A3”
“Basic_A4”
“Standard_A0”
“Standard_A1”
“Standard_A10”
“Standard_A11”
“Standard_A1_v2”
“Standard_A2”
“Standard_A2m_v2”
“Standard_A2_v2”
“Standard_A3”
“Standard_A4”
“Standard_A4m_v2”
“Standard_A4_v2”
“Standard_A5”
“Standard_A6”
“Standard_A7”
“Standard_A8”
“Standard_A8m_v2”
“Standard_A8_v2”
“Standard_A9”
“Standard_B1ms”
“Standard_B1s”
“Standard_B2ms”
“Standard_B2s”
“Standard_B4ms”
“Standard_B8ms”
“Standard_D1”
“Standard_D11”
“Standard_D11_v2”
“Standard_D12”
“Standard_D12_v2”
“Standard_D13”
“Standard_D13_v2”
“Standard_D14”
“Standard_D14_v2”
“Standard_D15_v2”
“Standard_D16s_v3”
“Standard_D16_v3”
“Standard_D1_v2”
“Standard_D2”
“Standard_D2s_v3”
“Standard_D2_v2”
“Standard_D2_v3”
“Standard_D3”
“Standard_D32s_v3”
“Standard_D32_v3”
“Standard_D3_v2”
“Standard_D4”
“Standard_D4s_v3”
“Standard_D4_v2”
“Standard_D4_v3”
“Standard_D5_v2”
“Standard_D64s_v3”
“Standard_D64_v3”
“Standard_D8s_v3”
“Standard_D8_v3”
“Standard_DS1”
“Standard_DS11”
“Standard_DS11_v2”
“Standard_DS12”
“Standard_DS12_v2”
“Standard_DS13”
“Standard_DS13-2_v2”
“Standard_DS13-4_v2”
“Standard_DS13_v2”
“Standard_DS14”
“Standard_DS14-4_v2”
“Standard_DS14-8_v2”
“Standard_DS14_v2”
“Standard_DS15_v2”
“Standard_DS1_v2”
“Standard_DS2”
“Standard_DS2_v2”
“Standard_DS3”
“Standard_DS3_v2”
“Standard_DS4”
“Standard_DS4_v2”
“Standard_DS5_v2”
“Standard_E16s_v3”
“Standard_E16_v3”
“Standard_E2s_v3”
“Standard_E2_v3”
“Standard_E32-16_v3”
“Standard_E32-8s_v3”
“Standard_E32s_v3”
“Standard_E32_v3”
“Standard_E4s_v3”
“Standard_E4_v3”
“Standard_E64-16s_v3”
“Standard_E64-32s_v3”
“Standard_E64s_v3”
“Standard_E64_v3”
“Standard_E8s_v3”
“Standard_E8_v3”
“Standard_F1”
“Standard_F16”
“Standard_F16s”
“Standard_F16s_v2”
“Standard_F1s”
“Standard_F2”
“Standard_F2s”
“Standard_F2s_v2”
“Standard_F32s_v2”
“Standard_F4”
“Standard_F4s”
“Standard_F4s_v2”
“Standard_F64s_v2”
“Standard_F72s_v2”
“Standard_F8”
“Standard_F8s”
“Standard_F8s_v2”
“Standard_G1”
“Standard_G2”
“Standard_G3”
“Standard_G4”
“Standard_G5”
“Standard_GS1”
“Standard_GS2”
“Standard_GS3”
“Standard_GS4”
“Standard_GS4-4”
“Standard_GS4-8”
“Standard_GS5”
“Standard_GS5-16”
“Standard_GS5-8”
“Standard_H16”
“Standard_H16m”
“Standard_H16mr”
“Standard_H16r”
“Standard_H8”
“Standard_H8m”
“Standard_L16s”
“Standard_L32s”
“Standard_L4s”
“Standard_L8s”
“Standard_M128-32ms”
“Standard_M128-64ms”
“Standard_M128ms”
“Standard_M128s”
“Standard_M64-16ms”
“Standard_M64-32ms”
“Standard_M64ms”
“Standard_M64s”
“Standard_NC12”
“Standard_NC12s_v2”
“Standard_NC12s_v3”
“Standard_NC24”
“Standard_NC24r”
“Standard_NC24rs_v2”
“Standard_NC24rs_v3”
“Standard_NC24s_v2”
“Standard_NC24s_v3”
“Standard_NC6”
“Standard_NC6s_v2”
“Standard_NC6s_v3”
“Standard_ND12s”
“Standard_ND24rs”
“Standard_ND24s”
“Standard_ND6s”
“Standard_NV12”
“Standard_NV24”
“Standard_NV6”
vmSizeProperties 指定用于自定义虚拟机大小的属性。 最低 API 版本:2021-07-01。

此功能仍处于预览模式,VirtualMachineScaleSet 不支持此功能。

有关详细信息,请按照 VM 自定义 中的说明进行操作。
VMSizeProperties

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}”,而不输入版本。 字符串

KeyVaultKeyReference

名字 描述 价值
keyUrl 引用 Key Vault 中的密钥加密密钥的 URL。 string (必需)
sourceVault 包含密钥的 Key Vault 的相对 URL。 SubResource (必需)

KeyVaultSecretReference

名字 描述 价值
secretUrl 引用 Key Vault 中的机密的 URL。 string (必需)
sourceVault 包含机密的 Key Vault 的相对 URL。 SubResource (必需)

LinuxConfiguration

名字 描述 价值
disablePasswordAuthentication 指定是否应禁用密码身份验证。 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”
patchMode 指定 VM 来宾修补到 IaaS 虚拟机的模式,或与将 OrchestrationMode 作为灵活业务流程模式的虚拟机规模集关联的虚拟机。

可能的值包括:

ImageDefault - 使用虚拟机的默认修补配置。

AutomaticByPlatform - 虚拟机将由平台自动更新。 属性 provisionVMAgent 必须为 true
“AutomaticByPlatform”
“ImageDefault”

ManagedDiskParameters

名字 描述 价值
diskEncryptionSet 指定托管磁盘的客户托管磁盘加密集资源 ID。 DiskEncryptionSetParameters
id 资源 ID 字符串
securityProfile 指定托管磁盘的安全配置文件。 VMDiskSecurityProfile
storageAccountType 指定托管磁盘的存储帐户类型。 注意:UltraSSD_LRS只能与数据磁盘一起使用,它不能与 OS 磁盘一起使用。 “Premium_LRS”
“Premium_ZRS”
“StandardSSD_LRS”
“StandardSSD_ZRS”
“Standard_LRS”
“UltraSSD_LRS”

Microsoft.Compute/virtualMachines

名字 描述 价值
apiVersion API 版本 '2021-11-01'
extendedLocation 虚拟机的扩展位置。 ExtendedLocation
身份 虚拟机的标识(如果已配置)。 VirtualMachineIdentity
位置 资源位置 string (必需)
名字 资源名称 string (必需)
计划 指定有关用于创建虚拟机的市场映像的信息。 此元素仅用于市场映像。 必须先启用映像以编程方式使用映像,然后才能从 API 使用市场映像。 在 Azure 门户中,找到要使用的市场映像,然后单击 想要以编程方式部署,开始使用 ->。 输入任何必需的信息,然后单击“保存 计划
性能 描述虚拟机的属性。 VirtualMachineProperties
标签 资源标记 标记名称和值的字典。 请参阅模板 中的 标记
类型 资源类型 “Microsoft.Compute/virtualMachines”
虚拟机区域。 string[]

NetworkInterfaceReference

名字 描述 价值
id 资源 ID 字符串
性能 描述网络接口引用属性。 NetworkInterfaceReferenceProperties

NetworkInterfaceReferenceProperties

名字 描述 价值
deleteOption 指定删除 VM 时网络接口发生的情况 “Delete”
“Detach”
主要 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 bool

NetworkProfile

名字 描述 价值
networkApiVersion 指定在网络接口配置中创建网络资源时使用的 Microsoft.Network API 版本 '2020-11-01'
networkInterfaceConfigurations 指定将用于创建虚拟机网络资源的网络配置。 VirtualMachineNetworkInterfaceConfiguration[]
networkInterfaces 指定与虚拟机关联的网络接口的资源 ID 列表。 NetworkInterfaceReference[]

OSDisk

名字 描述 价值
缓存 指定缓存要求。

可能的值包括:



ReadOnly

ReadWrite

默认值:标准存储 高级存储的 ReadOnly
“None”
“ReadOnly”
“ReadWrite”
createOption 指定应如何创建虚拟机。

可能的值包括:

附加 \u2013 使用专用磁盘创建虚拟机时,将使用此值。

FromImage \u2013 使用映像创建虚拟机时使用此值。 如果使用平台映像,则还使用上述 imageReference 元素。 如果使用市场映像,则还会使用前面所述的计划元素。
“Attach”
“Empty”
“FromImage”(必需)
deleteOption 指定在删除 VM 时是否应删除或分离 OS 磁盘。

可能的值:

删除 如果使用此值,则会在删除 VM 时删除 OS 磁盘。

分离 如果使用此值,则在删除 VM 后将保留 os 磁盘。

默认值设置为 分离。 对于临时 OS 磁盘,默认值设置为 删除。 用户无法更改临时 OS 磁盘的删除选项。
“Delete”
“Detach”
diffDiskSettings 指定虚拟机使用的操作系统磁盘的临时磁盘设置。 DiffDiskSettings
diskSizeGB 指定空数据磁盘的大小(以 GB 为单位)。 此元素可用于覆盖虚拟机映像中的磁盘大小。

此值不能大于 1023 GB
int
encryptionSettings 指定 OS 磁盘的加密设置。

最低 API 版本:2015-06-15
DiskEncryptionSettings
图像 源用户映像虚拟硬盘。 在附加到虚拟机之前,将复制虚拟硬盘。 如果提供了 SourceImage,则目标虚拟硬盘驱动器不得存在。 VirtualHardDisk
managedDisk 托管磁盘参数。 ManagedDiskParameters
名字 磁盘名称。 字符串
osType 此属性允许指定从用户映像或专用 VHD 创建 VM 时磁盘中包含的 OS 类型。

可能的值包括:

Windows

Linux
“Linux”
“Windows”
vhd 虚拟硬盘。 VirtualHardDisk
writeAcceleratorEnabled 指定是应在磁盘上启用或禁用 writeAccelerator。 bool

OSProfile

名字 描述 价值
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 指定管理员帐户的名称。

创建 VM 后,无法更新此属性。

仅限 Windows 的限制: 不能以“.” 结尾。

不允许的值: “administrator”、“admin”、“user1”、“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
computerName 指定虚拟机的主机 OS 名称。

创建 VM 后,无法更新此名称。

最大长度(Windows): 15 个字符

最大长度(Linux): 64 个字符。

有关命名约定和限制,请参阅 Azure 基础结构服务实现指南
字符串
customData 指定自定义数据的 base-64 编码字符串。 base-64 编码字符串将解码为作为虚拟机上的文件保存的二进制数组。 二进制数组的最大长度为 65535 字节。

注意:不要在 customData 属性中传递任何机密或密码

创建 VM 后,无法更新此属性。

customData 将传递给要另存为文件的 VM,有关详细信息,请参阅 Azure VM 上的自定义数据

有关将 cloud-init 用于 Linux VM,请参阅 使用 cloud-init 在创建期间自定义 Linux VM
字符串
linuxConfiguration 指定虚拟机上的 Linux 操作系统设置。

有关受支持的 Linux 分发版的列表,请参阅 Azure-Endorsed 分发版上的 Linux
LinuxConfiguration
requireGuestProvisionSignal 必须设置为 True 或省略的可选属性。 bool
秘密 指定应安装在虚拟机上的证书集。 若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 WindowsAzure 密钥库 虚拟机扩展。 VaultSecretGroup[]
windowsConfiguration 指定虚拟机上的 Windows 操作系统设置。 WindowsConfiguration

PatchSettings

名字 描述 价值
assessmentMode 指定 IaaS 虚拟机的 VM 来宾修补程序评估模式。

可能的值包括:

ImageDefault - 控制虚拟机上的修补程序评估的时间。

AutomaticByPlatform - 平台将触发定期修补评估。 属性 provisionVMAgent 必须为 true。
“AutomaticByPlatform”
“ImageDefault”
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。 字符串

PublicIPAddressSku

名字 描述 价值
名字 指定公共 IP SKU 名称 “Basic”
“Standard”
指定公共 IP SKU 层 “Global”
“区域”

ResourceTags

名字 描述 价值

ScheduledEventsProfile

名字 描述 价值
terminateNotificationProfile 指定终止计划事件相关配置。 TerminateNotificationProfile

SecurityProfile

名字 描述 价值
encryptionAtHost 用户可以在请求中使用此属性来启用或禁用虚拟机或虚拟机规模集的主机加密。 这将为所有磁盘启用加密,包括主机本身的资源/临时磁盘。

默认值:除非将此属性设置为 true,否则将禁用主机上的加密。
bool
securityType 指定虚拟机的 SecurityType。 必须将其设置为任何指定值才能启用 UefiSettings。

默认值:除非设置了此属性,否则不会启用 UefiSettings。
“ConfidentialVM”
“TrustedLaunch”
uefiSettings 指定在创建虚拟机时使用的安全启动和 vTPM 等安全设置。

最低 API 版本:2020-12-01
UefiSettings

SshConfiguration

名字 描述 价值
publicKeys 用于通过基于 Linux 的 VM 进行身份验证的 SSH 公钥列表。 SshPublicKey[]

SshPublicKey

名字 描述 价值
keyData 用于通过 ssh 向 VM 进行身份验证的 SSH 公钥证书。 密钥必须至少为 2048 位且采用 ssh-rsa 格式。

有关创建 ssh 密钥,请参阅 在 Azure中的 Linux 和 Mac 上为 Linux VM 创建 SSH 密钥。
字符串
路径 指定存储 ssh 公钥的已创建 VM 上的完整路径。 如果文件已存在,则指定的键将追加到该文件中。 示例:/home/user/.ssh/authorized_keys 字符串

StorageProfile

名字 描述 价值
dataDisks 指定用于向虚拟机添加数据磁盘的参数。

有关磁盘的详细信息,请参阅 关于 Azure 虚拟机的磁盘和 VHD
DataDisk[]
imageReference 指定要使用的图像的信息。 可以指定有关平台映像、市场映像或虚拟机映像的信息。 若要使用平台映像、市场映像或虚拟机映像,但不在其他创建操作中使用,则需要此元素。 ImageReference
osDisk 指定有关虚拟机使用的操作系统磁盘的信息。

有关磁盘的详细信息,请参阅 关于 Azure 虚拟机的磁盘和 VHD
OSDisk

SubResource

名字 描述 价值
id 资源 ID 字符串

TerminateNotificationProfile

名字 描述 价值
使 指定是启用或禁用终止计划事件。 bool
notBeforeTimeout 删除虚拟机的可配置时间长度可能需要在事件自动批准(超时)之前批准终止计划事件。 必须以 ISO 8601 格式指定配置,默认值为 5 分钟(PT5M) 字符串

UefiSettings

名字 描述 价值
secureBootEnabled 指定是否应在虚拟机上启用安全启动。

最低 API 版本:2020-12-01
bool
vTpmEnabled 指定是否应在虚拟机上启用 vTPM。

最低 API 版本:2020-12-01
bool

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 密钥库 虚拟机扩展或适用于 WindowsAzure 密钥库 虚拟机扩展。
字符串

VaultSecretGroup

名字 描述 价值
sourceVault Key Vault 的相对 URL,其中包含 VaultCertificates 中的所有证书。 SubResource
vaultCertificates SourceVault 中包含证书的密钥保管库引用列表。 VaultCertificate[]

VirtualHardDisk

名字 描述 价值
uri 指定虚拟硬盘的 URI。 字符串

VirtualMachineIdentity

名字 描述 价值
类型 用于虚拟机的标识类型。 类型“SystemAssigned,UserAssigned”包括隐式创建的标识和一组用户分配的标识。 类型“None”将从虚拟机中删除任何标识。 “None”
“SystemAssigned”
“SystemAssigned,UserAssigned”
“UserAssigned”
userAssignedIdentities 与虚拟机关联的用户标识列表。 用户标识字典密钥引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 VirtualMachineIdentityUserAssignedIdentities

VirtualMachineIdentityUserAssignedIdentities

名字 描述 价值

VirtualMachineIpTag

名字 描述 价值
ipTagType IP 标记类型。 示例:FirstPartyUsage。 字符串
标记 与公共 IP 关联的 IP 标记。 示例:SQL、存储等。 字符串

VirtualMachineNetworkInterfaceConfiguration

名字 描述 价值
名字 网络接口配置名称。 string (必需)
性能 描述虚拟机网络配置文件的 IP 配置。 VirtualMachineNetworkInterfaceConfigurationProperties

VirtualMachineNetworkInterfaceConfigurationProperties

名字 描述 价值
deleteOption 指定删除 VM 时网络接口发生的情况 “Delete”
“Detach”
dnsSettings 要应用于网络接口的 dns 设置。 VirtualMachineNetworkInterfaceDnsSettingsConfiguration
dscpConfiguration SubResource
enableAcceleratedNetworking 指定网络接口是否已启用加速网络。 bool
enableFpga 指定网络接口是否已启用 FPGA 网络。 bool
enableIPForwarding 是否在此 NIC 上启用了 IP 转发。 bool
ipConfigurations 指定网络接口的 IP 配置。 VirtualMachineNetworkInterfaceIPConfiguration[] (必需)
networkSecurityGroup 网络安全组。 SubResource
主要 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 bool

VirtualMachineNetworkInterfaceDnsSettingsConfiguration

名字 描述 价值
dnsServers DNS 服务器 IP 地址列表 string[]

VirtualMachineNetworkInterfaceIPConfiguration

名字 描述 价值
名字 IP 配置名称。 string (必需)
性能 描述虚拟机网络接口 IP 配置属性。 VirtualMachineNetworkInterfaceIPConfigurationProperties

VirtualMachineNetworkInterfaceIPConfigurationProperties

名字 描述 价值
applicationGatewayBackendAddressPools 指定对应用程序网关后端地址池的引用数组。 虚拟机可以引用多个应用程序网关的后端地址池。 多个虚拟机不能使用相同的应用程序网关。 SubResource[]
applicationSecurityGroups 指定对应用程序安全组的引用数组。 SubResource[]
loadBalancerBackendAddressPools 指定对负载均衡器后端地址池的引用数组。 虚拟机可以引用一个公共负载均衡器和一个内部负载均衡器的后端地址池。 [多个虚拟机不能使用相同的基本 SKU 负载均衡器]。 SubResource[]
主要 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 bool
privateIPAddressVersion 从 Api-Version 2017-03-30 开始提供,它表示特定 ipconfiguration 是 IPv4 还是 IPv6。 默认值被视为 IPv4。 可能的值为:“IPv4”和“IPv6”。 “IPv4”
“IPv6”
publicIPAddressConfiguration publicIPAddressConfiguration。 VirtualMachinePublicIPAddressConfiguration
指定子网的标识符。 SubResource

VirtualMachineProperties

名字 描述 价值
additionalCapabilities 指定在虚拟机上启用或禁用的其他功能。 AdditionalCapabilities
applicationProfile 指定应提供给 VM/VMSS 的库应用程序 ApplicationProfile
availabilitySet 指定应将虚拟机分配到的可用性集的相关信息。 在同一可用性集中指定的虚拟机分配给不同的节点,以最大程度地提高可用性。 有关可用性集的详细信息,请参阅 可用性集概述

有关 Azure 计划内维护的详细信息,请参阅 Azure 中虚拟机的 维护和更新

目前,只能在创建时将 VM 添加到可用性集。 要向其添加 VM 的可用性集应与可用性集资源位于同一资源组下。 无法将现有 VM 添加到可用性集。

此属性不能与非 null properties.virtualMachineScaleSet 引用一起存在。
SubResource
billingProfile 指定 Azure 现成虚拟机的计费相关详细信息。

最低 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”
extensionsTimeBudget 指定分配所有扩展开始的时间。 持续时间应介于 15 分钟到 120 分钟(含)之间,应采用 ISO 8601 格式指定。 默认值为 90 分钟(PT1H30M)。

最低 API 版本:2020-06-01
字符串
hardwareProfile 指定虚拟机的硬件设置。 HardwareProfile
主机 指定虚拟机所在的专用主机的相关信息。

最低 API 版本:2018-10-01。
SubResource
hostGroup 指定有关虚拟机所在的专用主机组的信息。

最低 API 版本:2020-06-01。

注意:用户不能同时指定主机和 hostGroup 属性。
SubResource
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 指定虚拟机的网络接口。 NetworkProfile
osProfile 指定创建虚拟机时使用的操作系统设置。 预配 VM 后,无法更改某些设置。 OSProfile
platformFaultDomain 指定要在其中创建虚拟机的规模集逻辑容错域。 默认情况下,虚拟机将自动分配给容错域,该容错域最适合跨可用容错域保持平衡。
<li>仅当设置了此虚拟机的“virtualMachineScaleSet”属性时,此选项才适用。<li>引用的虚拟机规模集必须具有“platformFaultDomainCount”> 1。<li>创建虚拟机后无法更新此属性。<li>容错域分配可以在虚拟机实例视图中查看。

最低 api 版本:2020-12?01
int
优先权 指定虚拟机的优先级。

最低 API 版本:2019-03-01
“Low”
“Regular”
“Spot”
proximityPlacementGroup 指定应将虚拟机分配到的邻近放置组的相关信息。

最低 api 版本:2018-04-01。
SubResource
scheduledEventsProfile 指定与计划事件相关的配置。 ScheduledEventsProfile
securityProfile 指定虚拟机的安全相关配置文件设置。 SecurityProfile
storageProfile 指定虚拟机磁盘的存储设置。 StorageProfile
userData VM 的 UserData(必须进行 base-64 编码)。 客户不应在此处传递任何机密。

最低 API 版本:2021-03-01
字符串
virtualMachineScaleSet 指定应向其分配虚拟机规模集的信息。 在同一虚拟机规模集中指定的虚拟机分配给不同的节点,以最大程度地提高可用性。 目前,只能在创建时将 VM 添加到虚拟机规模集。 无法将现有 VM 添加到虚拟机规模集。

此属性不能与非 null properties.availabilitySet 引用一起存在。

最低 api-version: 2019-03?01
SubResource

VirtualMachinePublicIPAddressConfiguration

名字 描述 价值
名字 publicIP 地址配置名称。 string (必需)
性能 介绍虚拟机 IP 配置的公共 IPAddress 配置 VirtualMachinePublicIPAddressConfigurationProperties
sku 描述公共 IP Sku。 只能将 OrchestrationMode 设置为灵活。 PublicIPAddressSku

VirtualMachinePublicIPAddressConfigurationProperties

名字 描述 价值
deleteOption 指定删除 VM 时公共 IP 地址发生的情况 “Delete”
“Detach”
dnsSettings 要应用于 publicIP 地址的 dns 设置。 VirtualMachinePublicIPAddressDnsSettingsConfiguration
idleTimeoutInMinutes 公共 IP 地址的空闲超时。 int
ipTags 与公共 IP 地址关联的 IP 标记列表。 VirtualMachineIpTag[]
publicIPAddressVersion 从 Api-Version 2019-07-01 开始提供,它表示特定 ipconfiguration 是 IPv4 还是 IPv6。 默认值被视为 IPv4。 可能的值为:“IPv4”和“IPv6”。 “IPv4”
“IPv6”
publicIPAllocationMethod 指定公共 IP 分配类型 “Dynamic”
“Static”
publicIPPrefix 要从中分配 publicIP 地址的 PublicIPPrefix。 SubResource

VirtualMachinePublicIPAddressDnsSettingsConfiguration

名字 描述 价值
domainNameLabel 将创建的 PublicIPAddress 资源的域名标签前缀。 生成的名称标签是域名标签和 vm 网络配置文件唯一 ID 的串联。 string (必需)

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 将替换包的默认配置(如果提供) 字符串
次序 可选,指定包必须安装的顺序 int
packageReferenceId 指定 /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/applications/{application}/versions/{version} 形式的 GalleryApplicationVersion 资源 ID string (必需)
标签 可选,指定更多泛型上下文的传递值。 字符串

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
patchSettings [预览功能]指定与 Windows 上的 VM 来宾修补相关的设置。 PatchSettings
provisionVMAgent 指示是否应在虚拟机上预配虚拟机代理。

如果未在请求正文中指定此属性,则默认行为是将其设置为 true。 这将确保 VM 代理安装在 VM 上,以便以后可以向 VM 添加扩展。
bool
timeZone 指定虚拟机的时区。 例如“太平洋标准时间”。

可能的值可以从 TimeZoneInfo.GetSystemTimeZones返回的时区 TimeZoneInfo.Id 值。
字符串
winRM 指定 Windows 远程管理侦听器。 这将启用远程 Windows PowerShell。 WinRMConfiguration

WinRMConfiguration

名字 描述 价值
听众 Windows 远程管理侦听器列表 WinRMListener[]

WinRMListener

名字 描述 价值
certificateUrl 这是已作为机密上传到 Key Vault 的证书的 URL。 若要将机密添加到 Key Vault,请参阅 向密钥保管库添加密钥或机密。 在这种情况下,证书必须是以下 JSON 对象的 Base64 编码,该对象在 UTF-8 中编码:

{
“data”:“<Base64 编码的证书>”,
“dataType”:“pfx”,
“password”:“<pfx-file-password>”
}
若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 WindowsAzure 密钥库 虚拟机扩展。
字符串
协议 指定 WinRM 侦听器的协议。

可能的值包括:
http

https
“Http”
“Https”

快速入门模板

以下快速入门模板部署此资源类型。

模板 描述
Ubuntu 上的 (++)Ethereum

部署到 Azure
此模板在 Ubuntu 虚拟机上部署 Ethereum 客户端
在 vNet 中 1 个 VM - 多个数据磁盘

部署到 Azure
此模板创建一个运行 Windows Server 2016 且附加了多个数据磁盘的 VM。
101-1vm-2nics-2subnets-1vnet

部署到 Azure
创建一个新的 VM,其中包含两个 NIC,这些 NIC 连接到同一 VNet 中的两个不同的子网。
在负载均衡器中 2 个 VM,并在 LB 上配置 NAT 规则

部署到 Azure
此模板允许在可用性集中创建 2 个虚拟机,并通过负载均衡器配置 NAT 规则。 此模板还部署存储帐户、虚拟网络、公共 IP 地址和网络接口。 在此模板中,我们使用资源循环功能创建网络接口和虚拟机
负载均衡器中的 2 个 VM 和负载均衡规则

部署到 Azure
此模板允许在负载均衡器下创建 2 个虚拟机,并在端口 80 上配置负载均衡规则。 此模板还部署存储帐户、虚拟网络、公共 IP 地址、可用性集和网络接口。 在此模板中,我们使用资源循环功能创建网络接口和虚拟机
VNET 中的 2 个 VM - 内部负载均衡器和 LB 规则

部署到 Azure
此模板允许在 VNET 和内部负载均衡器下创建 2 个虚拟机,并在端口 80 上配置负载均衡规则。 此模板还部署存储帐户、虚拟网络、公共 IP 地址、可用性集和网络接口。
201-vnet-2subnets-service-endpoints-storage-integration

部署到 Azure
在同一 VNet 中的两个不同的子网中,分别创建 2 个具有 NIC 的新 VM。 在某个子网上设置服务终结点,并将存储帐户安全到该子网。
将多个 VM 添加到虚拟机规模集

部署到 Azure
此模板将使用托管磁盘、公共 IP 和网络接口创建 N 个 VM 数量。 它将在灵活业务流程模式下在虚拟机规模集中创建 VM。 它们将在虚拟网络中预配,该虚拟网络也将作为部署的一部分创建
使用 NAT 网关和应用程序网关 AKS 群集

部署到 Azure
此示例演示如何使用 NAT 网关部署 AKS 群集进行出站连接,以及如何为入站连接部署应用程序网关。
使用应用程序网关入口控制器 AKS 群集

部署到 Azure
此示例演示如何使用应用程序网关、应用程序网关入口控制器、Azure 容器注册表、Log Analytics 和 Key Vault 部署 AKS 群集
Alsid Syslog/Sentinel 代理

部署到 Azure
此模板使用已载入的 Azure Sentinel 代理为指定的工作区创建和配置 Syslog 服务器。
Ubuntu VM 上的 Apache Webserver

部署到 Azure
此模板使用 Azure Linux CustomScript 扩展部署 Apache Web 服务器。 部署模板创建 Ubuntu VM,安装 Apache2 并创建一个简单的 HTML 文件。 转到。。/demo.html 查看已部署的页面。
使用 VM 应用配置

部署到 Azure
此模板引用现有配置存储中的现有键值配置,并使用检索的值设置模板创建的资源的属性。
使用 WAF、SSL、IIS 和 HTTPS 重定向 应用网关

部署到 Azure
此模板使用 WAF 部署应用程序网关、端到端 SSL 和 HTTP 到 IIS 服务器上的 HTTPS 重定向。
使用 Azure SQL 后端 应用服务环境

部署到 Azure
此模板创建具有 Azure SQL 后端的应用服务环境以及专用终结点以及通常用于专用/隔离环境中的关联资源。
应用程序安全组

部署到 Azure
此模板演示如何组合使用 NSG 和应用程序安全组来保护工作负荷。 它将部署运行 NGINX 的 Linux VM,并通过在网络安全组中使用应用程序安全组,允许访问分配给名为 webServersAsg 的应用程序安全组的 VM 的端口 22 和 80。
使用 GoAccess Azure 应用程序网关日志分析器

部署到 Azure
此模板使用 Azure Linux CustomScript 扩展通过 GoAccess 部署 Azure 应用程序网关日志分析器。 部署模板创建 Ubuntu VM,安装应用程序网关日志处理器、GoAccess、Apache WebServer 并将其配置为分析 Azure 应用程序网关访问日志。
Azure 容器服务引擎 (acs-engine) - 群模式

部署到 Azure
Azure 容器服务引擎(acs-engine)使用你选择的 DC/OS、Kubernetes、Swarm 模式或 Swarm 业务流程协调程序,为 Microsoft Azure 上启用了 Docker 的群集生成 ARM(Azure 资源管理器)模板。 该工具的输入是群集定义。 群集定义与用于部署 Microsoft Azure 容器服务群集的 ARM 模板语法非常相似(在许多情况下相同)。
Azure 数据磁盘性能计量

部署到 Azure
使用此模板,可以使用 fio 实用工具针对不同的工作负荷类型运行数据磁盘性能测试。
Azure Game Developer Virtual Machine

部署到 Azure
Azure 游戏开发人员虚拟机包括 Unreal 等授权引擎。
Azure 机器学习端到端安全设置

部署到 Azure
此 Bicep 模板集演示如何在安全设置中端到端设置 Azure 机器学习。 此参考实现包括工作区、计算群集、计算实例和附加的专用 AKS 群集。
Azure 机器学习端到端安全设置(旧版)

部署到 Azure
此 Bicep 模板集演示如何在安全设置中端到端设置 Azure 机器学习。 此参考实现包括工作区、计算群集、计算实例和附加的专用 AKS 群集。
Azure 托管磁盘性能计量

部署到 Azure
使用此模板,可以使用 fio 实用工具针对不同的工作负荷类型运行托管磁盘性能测试。
Azure 托管磁盘 RAID 性能计量

部署到 Azure
使用此模板,可以使用 fio 实用工具针对不同的工作负荷类型运行托管磁盘 RAID 性能测试。
使用 Quagga 在 BGP 对等互连中 Azure 路由服务器

部署到 Azure
此模板使用 Quagga 部署路由器服务器和 Ubuntu VM。 路由器服务器和 Quagga 之间建立了两个外部 BGP 会话。 Quagga 的安装和配置由适用于 linux 的 Azure 自定义脚本扩展执行
Azure sysbench CPU 性能计量

部署到 Azure
使用此模板,可以使用 sysbench 实用工具运行 CPU 性能测试。
Azure 流量管理器 VM 示例

部署到 Azure
此模板演示如何跨多个虚拟机创建 Azure 流量管理器配置文件负载均衡。
使用可用性区域 Azure 流量管理器 VM 示例

部署到 Azure
此模板演示如何跨位于可用性区域中的多个虚拟机创建 Azure 流量管理器配置文件负载均衡。
Azure VM-to-VM 带宽计量

部署到 Azure
使用此模板,可以使用 PsPing 实用工具运行 VM-to-VM 带宽测试。
Azure VM-to-VM 多线程吞吐量计量

部署到 Azure
使用此模板,可以使用 NTttcp 实用工具运行 VM-to-VM 吞吐量测试。
使用后端 IIS 服务器 Barracuda Web 应用程序防火墙

部署到 Azure
此 Azure 快速入门模板在 Azure 上部署一个 Barracuda Web 应用程序防火墙解决方案,其中包含所需的后端 Windows 2012 基于 IIS 的 IIS Web Server.Templates 包括最新的 Barracuda WAF,其中包含即用即付许可证和最新的 Windows 2012 R2 Azure 映像 for IIS。Barracuda Web 应用程序防火墙检查入站 Web 流量并阻止 SQL 注入、跨站点脚本、恶意软件上传 & 应用程序 DDoS 和其他针对 Web 应用程序的攻击。 使用 NAT 规则部署了一个外部 LB,使远程桌面能够访问后端 Web 服务器。 请遵循 GitHub 模板目录中提供的部署后配置指南,详细了解与 Barracuda Web 应用程序防火墙和 Web 应用程序发布相关的部署后步骤。
基本 RDS 场部署

部署到 Azure
此模板创建基本的 RDS 场部署
在 CentOS VM 上为比特币 Bitcore 节点和实用工具

部署到 Azure
此模板使用 Azure Linux CustomScript 扩展通过完整的比特币实用工具集部署 Bitcore Node 实例。 部署模板创建 CentOS VM,安装 Bitcore 并提供简单的比特可执行文件。 使用此模板,你将在比特币网络上运行一个完整的节点,以及一个名为 Insight 的块资源管理器。
区块链模板

部署到 Azure
部署安装了 Groestl 毫升核心的 VM。
BOSH CF 跨区域

部署到 Azure
此模板可帮助你设置在 Azure 上跨两个区域部署 BOSH 和 Cloud Foundry 所需的资源。
BOSH 设置

部署到 Azure
此模板可帮助你设置可在其中部署 BOSH 和 Cloud Foundry 的开发环境。
BrowserBox Azure Edition

部署到 Azure
此模板在 Azure Ubuntu Server 22.04 LTS、Debian 11 或 RHEL 8.7 LVM VM 上部署 BrowserBox。
CentOS/UbuntuServer 自动动态磁盘 & Docker 1.12(cs)

部署到 Azure
这是用于创建单个实例 CentOS 7.2/7.1/6.5 或 Ubuntu Server 16.04.0-LTS 的常见模板,其中包含可配置的数据磁盘数(可配置大小)。 门户参数中可以提及最多 16 个磁盘,每个磁盘的最大大小应小于 1023 GB。 MDADM RAID0 阵列是自动装载的,在重启后幸存下来。 最新的 Docker 1.12(cs3) (Swarm), docker-compose 1.9.0 & docker-machine 0.8.2 可用于从用户 azure-cli 自动作为 docker 容器运行。 此单实例模板是 HPC/GPU 群集模板 @ https://github.com/azurebigcompute/BigComputeBench
Chef 后端 High-Availability 群集

部署到 Azure
此模板创建附加了前端节点的 chef-backend 群集
在 Ubuntu/Centos 上使用 JSON 参数 Chef

部署到 Azure
使用 JSON 参数部署 Ubuntu/Centos VM
Classroom Linux JupyterHub

部署到 Azure
此模板为最多 100 个用户的教室部署 Jupyter 服务器。 可以提供用户名、密码、虚拟机名称,并在 CPU 或 GPU 计算之间进行选择。
使用 Moloch 示例 CloudLens

部署到 Azure
此模板演示如何使用 CloudLens 代理在 Azure 公有云中设置网络可见性,以点击一个 VM 上的流量,并将其转发到存储 & 索引工具的网络数据包,在本例中为 Moloch。
使用 Suricata IDS 示例 CloudLens

部署到 Azure
此模板演示如何使用 CloudLens 代理在公有云中设置网络可见性,以点击一个 VM 上的流量并将其转发到 IDS,在本例中为 Suricata。
Concourse CI

部署到 Azure
Concourse 是由简单的工具和想法组成的 CI 系统。 它可以表示整个管道,与任意资源集成,或者可用于在本地或另一个 CI 系统中执行一次性任务。 此模板可帮助准备必要的 Azure 资源来设置此类 CI 系统,并使设置更加简单。
通过专用终结点连接到事件中心命名空间

部署到 Azure
此示例演示如何使用配置虚拟网络和专用 DNS 区域通过专用终结点访问事件中心命名空间。
通过专用终结点连接到 Key Vault

部署到 Azure
此示例演示如何使用配置虚拟网络和专用 DNS 区域通过专用终结点访问 Key Vault。
通过专用终结点连接到服务总线命名空间

部署到 Azure
此示例演示如何使用配置虚拟网络和专用 DNS 区域通过专用终结点访问服务总线命名空间。
通过专用终结点从 VM 连接到存储帐户

部署到 Azure
此示例演示如何使用连接虚拟网络通过专用终结点访问 Blob 存储帐户。
通过专用终结点连接到 Azure 文件共享

部署到 Azure
此示例演示如何使用配置虚拟网络和专用 DNS 区域通过专用终结点访问 Azure 文件共享。
使用 NSG 在 LB 中创建 2 个 VM 和 SQL Server VM

部署到 Azure
此模板在可用性集中创建 2 个 Windows VM(可用作 Web FE),并使用端口 80 打开的负载均衡器。 可以在端口 6001 和 6002 上使用 RDP 访问这两个 VM。 此模板还会创建可以通过网络安全组中定义的 RDP 连接访问的 SQL Server 2014 VM。
使用 LB 和具有 SSD 的 SQL Server VM 创建 2 个 VM

部署到 Azure
此模板在可用性集中创建 2 个 Linux VM(可用作 Web FE),并使用端口 80 打开的负载均衡器。 可以使用端口 6001 和 6002 上的 SSH 访问这两个 VM。 此模板还会创建可以通过网络安全组中定义的 RDP 连接访问的 SQL Server 2014 VM。 所有 VM 存储都可以使用高级存储(SSD),可以选择创建具有所有 DS 大小的 VM
创建跨区域负载均衡器

部署到 Azure
此模板创建包含两个区域负载均衡器的后端池的跨区域负载均衡器。 跨区域负载均衡器目前在有限的区域中可用。 跨区域负载均衡器后面的区域负载均衡器可以位于任何区域中。
创建数据管理网关并在 Azure VM 上安装

部署到 Azure
此模板部署虚拟机并创建可行的数据管理网关
使用 P2S VPN 和 IIS 创建开发测试环境

部署到 Azure
此模板在 Windows 服务器上创建具有点到站点 VPN 和 IIS 的简单开发测试环境,这是入门的好方法。
使用 FirewallPolicy 和 IpGroups 创建防火墙

部署到 Azure
此模板创建一个包含 FirewalllPolicy 的 Azure 防火墙,该防火墙引用了 IpGroups 的网络规则。 此外,还包括 Linux Jumpbox vm 设置
使用显式代理创建防火墙、FirewallPolicy

部署到 Azure
此模板使用 IpGroups 的显式代理和网络规则创建 Azure 防火墙、FirewalllPolicy。 此外,还包括 Linux Jumpbox vm 设置
创建具有公共 IPv6 地址的负载均衡器

部署到 Azure
此模板为后端池创建一个面向 Internet 的负载均衡器,其中包含公共 IPv6 地址、负载均衡规则和两个 VM。
使用可用性区域创建包含 2 个 DC 的新 AD 域

部署到 Azure
此模板在单独的可用性区域中创建 2 个 VM,作为新林和域的 AD DC(主 VM 和备份)
从库映像 创建新的加密 Windows vm

部署到 Azure
此模板使用服务器 2k12 库映像创建新的加密 Windows VM。
创建专用 AKS 群集

部署到 Azure
此示例演示如何在虚拟网络中创建专用 AKS 群集以及 jumpbox 虚拟机。
使用公共 DNS 区域创建专用 AKS 群集

部署到 Azure
此示例演示如何使用公共 DNS 区域部署专用 AKS 群集。
使用 Linux VM 创建 Azure 防火墙的沙盒设置

部署到 Azure
此模板创建包含 3 个子网的虚拟网络(服务器子网、jumpbox 子集和 AzureFirewall 子网)、具有公共 IP 的 jumpbox VM、服务器 VM、UDR 路由以指向服务器子网的 Azure 防火墙和具有 1 个或多个公共 IP 地址的 Azure 防火墙、1 个示例应用程序规则、1 个示例网络规则和默认专用范围
使用区域 创建 Azure 防火墙的沙盒设置

部署到 Azure
此模板创建包含三个子网(服务器子网、jumpbox 子网和 Azure 防火墙子网)的虚拟网络、具有公共 IP 的 jumpbox VM、A 服务器 VM、UDR 路由以指向 ServerSubnet 的 Azure 防火墙、一个具有一个或多个公共 IP 地址的 Azure 防火墙、一个示例应用程序规则,以及可用性区域 1 中的一个示例网络规则和 Azure 防火墙, 2 和 3。
使用防火墙策略 创建沙盒设置

部署到 Azure
此模板创建包含 3 个子网(服务器子网、jumpbox 子集和 AzureFirewall 子网)的虚拟网络、具有公共 IP 的 jumpbox VM、服务器 VM、UDR 路由,以指向服务器子网的 Azure 防火墙以及具有 1 个或多个公共 IP 地址的 Azure 防火墙。 此外,还创建包含 1 个示例应用程序规则、1 个示例网络规则和默认专用范围的防火墙策略
使用 VM 创建站点到站点 VPN 连接

部署到 Azure
使用此模板,可以使用虚拟网络网关创建站点到站点 VPN 连接
创建标准内部负载均衡器

部署到 Azure
此模板使用规则负载均衡端口 80 创建标准内部 Azure 负载均衡器
创建标准负载均衡器

部署到 Azure
此模板为后端池创建面向 Internet 的负载均衡器、负载均衡规则和三个 VM,并在冗余区域中为每个 VM 创建一个 VM。
创建两个 VM SQL Server Reporting Services 部署

部署到 Azure
此模板创建两个新的 Azure VM,每个 VM 都有一个公共 IP 地址,它将一个 VM 配置为 SSRS 服务器,一个 VM 与 SQL 代理启动的 SSRS 目录使用 SQL Server 混合身份验证。 所有 VM 都启用了面向公众的 RDP 和诊断,诊断存储在与 VM 磁盘不同的合并诊断存储帐户中
在扩展区域中创建虚拟机

部署到 Azure
此模板在扩展区域中创建虚拟机
从 EfficientIP VHD 创建 VM

部署到 Azure
此模板从 EfficientIP VHD 创建 VM,并允许将其连接到可以驻留在另一个资源组中的现有 VNET,然后连接到虚拟机
使用 4 个空数据磁盘的 Windows 映像创建 VM

部署到 Azure
使用此模板,可以从指定的映像创建 Windows 虚拟机。 它还附加 4 个空数据磁盘。 请注意,可以指定空数据磁盘的大小。
从用户映像 创建 VM

部署到 Azure
使用此模板,可以从用户映像创建虚拟机。 此模板还部署虚拟网络、公共 IP 地址和网络接口。
从自定义 VHD 在新的或现有 vnet 中创建 VM

部署到 Azure
此模板从专用 VHD 创建一个 VM,并使你能够将其连接到一个新的或现有的 VNET,该 VNET 可以驻留在另一个资源组中,而不是虚拟机
从通用 VHD 在新的或现有 vnet 中创建 VM

部署到 Azure
此模板从通用 VHD 创建一个 VM,并使你能够将其连接到可以驻留在另一个资源组中的新 VNET 或现有 VNET,而不是虚拟机
在不同资源组的 VNET 中创建 VM

部署到 Azure
此模板在 VNET 中创建位于不同资源组中的 VM
创建具有动态选择的数据磁盘的 VM

部署到 Azure
此模板允许用户选择要添加到 VM 的数据磁盘数。
创建具有多个空StandardSSD_LRS数据磁盘的 VM

部署到 Azure
使用此模板,可以从指定的映像创建 Windows 虚拟机。 默认情况下,它还附加多个空的 StandardSSD 数据磁盘。 请注意,可以指定空数据磁盘的大小和存储类型(Standard_LRS、StandardSSD_LRS和Premium_LRS)。
创建具有多个 NIC 和 RDP 可访问的 VM

部署到 Azure
使用此模板可以创建具有多个(2)网络接口(NIC)的虚拟机,并使用配置的负载均衡器和入站 NAT 规则创建 RDP 可连接。 可以使用此模板轻松添加更多 NIC。 此模板还部署存储帐户、虚拟网络、公共 IP 地址和 2 个网络接口(前端和后端)。
创建启用了反恶意软件扩展的 Windows VM

部署到 Azure
此模板创建 Windows VM 并设置反恶意软件防护
创建 Azure 应用程序网关 v2

部署到 Azure
此模板在后端池中创建包含两台 Windows Server 2016 服务器的 Azure 应用程序网关
创建具有强制隧道 的 Azure 防火墙沙盒

部署到 Azure
此模板创建一个 Azure 防火墙沙盒(Linux),其中一个防火墙强制通过对等互连 VNET 中的另一个防火墙进行隧道传输
使用 IpGroups 创建 Azure 防火墙

部署到 Azure
此模板创建一个 Azure 防火墙,其中包含引用 IP 组的应用程序和网络规则。 此外,还包括 Linux Jumpbox vm 设置
创建具有多个 IP 公共地址的 Azure 防火墙

部署到 Azure
此模板创建一个 Azure 防火墙,其中包含两个公共 IP 地址和两台要测试的 Windows Server 2019 服务器。
使用新的 Active Directory 林 创建 Azure VM

部署到 Azure
此模板创建新的 Azure VM,它将 VM 配置为新林的 Active Directory 域控制器
使用新的 AD 林创建 Azure VM

部署到 Azure
此模板创建新的 Azure VM,它将 VM 配置为新林的 AD DC
在 Azure 应用程序网关上创建 Azure WAF v2

部署到 Azure
此模板在 Azure 应用程序网关上创建一个 Azure Web 应用程序防火墙 v2,并在后端池中使用两台 Windows Server 2016 服务器
创建 IOT 中心和 Ubuntu 边缘模拟器

部署到 Azure
此模板创建 IOT 中心和虚拟机 Ubuntu 边缘模拟器。
创建 IPv6 应用程序网关

部署到 Azure
此模板在双堆栈虚拟网络中创建具有 IPv6 前端的应用程序网关。
创建具有 2 个域控制器的新 AD 域

部署到 Azure
此模板为新的林和域创建 2 个新 VM 作为 AD DC(主 VM 和备份)
创建 Ubuntu GNOME 桌面

部署到 Azure
此模板创建 ubuntu 桌面计算机。 这非常适合用作 NAT 后面的跳转盒。
使用 jumpbox 创建和加密新的 Linux VMSS

部署到 Azure
此模板使用最新的 Linux 映像部署 Linux VMSS,添加数据卷,然后加密每个 Linux VMSS 实例的数据卷。 它还在与具有专用 IP 地址的 Linux VMSS 实例相同的虚拟网络中部署具有公共 IP 地址的 jumpbox。 这允许通过其公共 IP 地址连接到 jumpbox,然后通过专用 IP 地址连接到 Linux VMSS 实例。
使用 jumpbox 创建和加密新的 Windows VMSS

部署到 Azure
使用此模板,可以使用服务器 Windows 版本的最新修补版本部署简单的 Windows VM 规模集。 此模板还会在同一虚拟网络中部署具有公共 IP 地址的 jumpbox。 可以通过此公共 IP 地址连接到 jumpbox,然后通过专用 IP 地址从那里连接到规模集中的 VM。此模板在 WINDOWS VM 的 VM 规模集上启用加密。
从库映像创建新的加密托管磁盘 win-vm

部署到 Azure
此模板使用服务器 2k12 库映像创建新的加密托管磁盘 Windows VM。
使用 Puppet 代理预填充的新 Ubuntu VM

部署到 Azure
此模板创建 Ubuntu VM,并使用 CustomScript 扩展将 Puppet 代理安装到其中。
创建 Azure 防火墙、客户端 VM 和服务器 VM 的沙盒

部署到 Azure
此模板创建一个虚拟网络,其中包含 2 个子网(服务器子网和 AzureFirewall 子网)、服务器 VM、客户端 VM、每个 VM 的公共 IP 地址,以及一个路由表,用于通过防火墙在 VM 之间发送流量。
在新虚拟网络中创建包含 jumpbox 的 SQL MI

部署到 Azure
在新虚拟网络中使用 SSMS 部署 Azure Sql 数据库托管实例(SQL MI)和 JumpBox。
创建 Ubuntu vm 数据磁盘 raid0

部署到 Azure
此模板创建附加了多个磁盘的虚拟机。 脚本对 raid0 数组中的磁盘进行分区和格式化。
从现有 VHD 创建 VM 并将其连接到现有 VNET

部署到 Azure
此模板从 VHD(OS + 数据磁盘)创建 VM,并让你将其连接到可以驻留在另一个资源组中的现有 VNET,然后虚拟机
使用资源循环在可用性集中创建 VM

部署到 Azure
使用资源循环在可用性集中创建 2-5 个 VM。 VM 可以是 Unbuntu 或 Windows,最多包含 5 个 VM,因为此示例使用单个 storageAccount
创建、配置 Web 应用程序并将其部署到 Azure VM

部署到 Azure
使用 SQL Azure 数据库创建和配置 Windows VM,并使用 PowerShell DSC 将 Web 应用程序部署到环境
使用 Microsoft Entra ID 联接创建 AVD

部署到 Azure
通过此模板,可以创建 Azure 虚拟桌面资源,例如主机池、应用程序组、工作区、测试会话主机及其扩展,Microsoft Entra ID 联接
在 Ubuntu VM 上 自定义脚本扩展

部署到 Azure
此模板创建 Ubuntu VM 并安装 CustomScript 扩展
在可用性区域中部署 3 节点 Percona XtraDB 群集

部署到 Azure
此模板在 CentOS 6.5 或 Ubuntu 12.04 上部署 3 节点 MySQL 高可用性群集
在中心虚拟网络 部署 Bastion 主机

部署到 Azure
此模板创建两个具有对等互连的 vNet:中心 vNet 中的 Bastion 主机和辐射 vNet 中的 Linux VM
部署 Django 应用

部署到 Azure
此模板使用 Azure Linux CustomScript 扩展部署应用程序。 此示例创建 Ubuntu VM,执行 Python、Django 和 Apache 的无提示安装,然后创建简单的 Django 应用
部署中心辐射型拓扑沙盒

部署到 Azure
此模板创建基本的中心辐射型拓扑设置。 它创建包含外围网络、管理、共享和网关(可选)子网的中心 VNet,其中两个辐射 VNet(开发和生产)包含每个子网的工作负荷子网。 它还在 HUB 的管理子网上部署 Windows Jump-Host,并在中心与两个辐射之间建立 VNet 对等互连。
使用 Docker 部署 Kibana 仪表板

部署到 Azure
使用此模板,可以部署安装了 Docker 的 Ubuntu VM(使用 Docker 扩展)和创建并配置为提供分析仪表板的 Kibana/Elasticsearch 容器。
部署 LAMP 应用

部署到 Azure
此模板使用 Azure Linux CustomScript 扩展部署应用程序。 它创建 Ubuntu VM,执行 MySQL、Apache 和 PHP 的无提示安装,然后创建一个简单的 PHP 脚本。
使用 MSI 部署 Linux 或 Windows VM

部署到 Azure
使用此模板,可以使用托管服务标识部署 Linux 或 Windows VM。
部署具有多个 NIC 的 Linux VM (Ubuntu),

部署到 Azure
此模板创建包含多个子网的 VNet,并部署具有多个 NIC 的 Ubuntu VM
使用 Azul Zulu OpenJDK JVM 部署 Linux VM

部署到 Azure
使用此模板,可以使用 Azul Zulu OpenJDK JVM 创建 Linux VM。
部署 MySQL 服务器

部署到 Azure
此模板使用 Azure Linux CustomScript 扩展部署 MySQL 服务器。 它创建 Ubuntu VM,执行 MySQL 服务器的无提示安装版本:5.6
部署 Nextflow 基因组学群集

部署到 Azure
此模板使用 Jumpbox、n 群集节点、docker 支持和共享存储部署可缩放的 Nextflow 群集。
在 Ubuntu 虚拟机上部署 PostgreSQL 服务器

部署到 Azure
此模板使用 Azure Linux CustomScript 扩展部署 postgresql 服务器。 它创建 Ubuntu VM,执行 MySQL 服务器的无提示安装版本:9.3.5
部署高级 Windows VM

部署到 Azure
使用此模板,可以使用 Windows 版本的几个不同选项(使用最新修补的版本)部署高级 Windows VM。
使用诊断 部署高级 Windows VM

部署到 Azure
使用此模板,可以使用 Windows 版本的几个不同选项(使用最新修补的版本)部署高级 Windows VM。
在资源组位置部署简单的 FreeBSD VM

部署到 Azure
通过此模板,可以使用几个不同选项(使用最新修补的版本)部署简单的 FreeBSD VM。 这将部署在 D1 VM 大小的资源组位置。
部署简单的 Linux VM 并将专用 IP 更新为静态

部署到 Azure
通过此模板,可以从市场使用 Ubuntu 部署简单的 Linux VM。 这会在资源组位置部署 VNET、子网和 A1 大小的 VM,该 VM 具有动态分配的 IP 地址,然后将其转换为静态 IP。
使用加速网络 部署简单的 Linux VM

部署到 Azure
使用此模板,可以使用具有最新修补版本的 Ubuntu 版本 18.04-LTS 部署具有加速网络的简单 Linux VM。 这会在资源组位置部署D3_v2大小的 VM,并返回 VM 的 FQDN。
部署简单的 Ubuntu Linux VM 20.04-LTS

部署到 Azure
此模板部署一个 Ubuntu Server,其中包含一些 VM 选项。 可以提供 VM 名称、OS 版本、VM 大小以及管理员用户名和密码。 默认情况下,VM 大小为Standard_D2s_v3,OS 版本为 20.04-LTS。
使用 Linux VM 和 Jumpbox 部署简单的 VM 规模集

部署到 Azure
使用此模板,可以使用最新修补版本的 Ubuntu Linux 15.10 或 14.04.4-LTS 部署简单的 VM 规模集。 还有一个 jumpbox,用于启用 VM 位于 VNet 外部的连接。
使用 Windows VM 和 Jumpbox 部署简单的 VM 规模集

部署到 Azure
使用此模板,可以使用服务器 Windows 版本的最新修补版本部署简单的 Windows VM 规模集。 此模板还会在同一虚拟网络中部署具有公共 IP 地址的 jumpbox。 可以通过此公共 IP 地址连接到 jumpbox,然后通过专用 IP 地址从那里连接到规模集中的 VM。
部署简单的 Windows VM

部署到 Azure
使用此模板,可以使用 Windows 版本的几个不同选项(使用最新修补的版本)部署简单的 Windows VM。 这会在资源组位置部署 A2 大小的 VM,并返回 VM 的 FQDN。
部署具有监视和诊断 的简单 Windows VM

部署到 Azure
使用此模板可以部署简单的 Windows VM 以及诊断扩展,以便为 VM 启用监视和诊断
部署带有标记的简单 Windows VM

部署到 Azure
此模板将部署D2_v3 Windows VM、NIC、存储帐户、虚拟网络、公共 IP 地址和网络安全组。 标记对象在变量中创建,并将应用于所有资源(如果适用)。
将单 VM WordPress 部署到 Azure

部署到 Azure
此模板部署完整的 LAMP 堆栈,然后安装和初始化 WordPress。 部署完成后,需要转到 http://fqdn.of.your.vm/wordpress/ 完成配置、创建帐户以及开始使用 WordPress。
部署支持受信任的启动的 Linux 虚拟机

部署到 Azure
使用此模板,可以使用 Linux 版本的几个不同选项(使用最新的修补版本)部署支持受信任的启动的 Linux 虚拟机。 如果启用 Secureboot 和 vTPM,则会在 VM 上安装来宾证明扩展。 此扩展将通过云执行远程 证明。 默认情况下,这将在资源组位置部署Standard_D2_v3大小的虚拟机,并返回虚拟机的 FQDN。
部署支持受信任启动的 Windows 虚拟机

部署到 Azure
使用此模板,可以使用 Windows 版本的几个不同选项(使用最新修补的版本)部署支持受信任的启动的 Windows 虚拟机。 如果启用 Secureboot 和 vTPM,则会在 VM 上安装来宾证明扩展。 此扩展将通过云执行远程 证明。 默认情况下,这将在资源组位置部署Standard_D2_v3大小的虚拟机,并返回虚拟机的 FQDN。
部署 Ubuntu Linux DataScience VM 18.04

部署到 Azure
此模板使用一些用于数据科学的工具部署 Ubuntu Server。 可以提供用户名、密码、虚拟机名称,并在 CPU 或 GPU 计算之间进行选择。
使用 OMS 扩展 部署 Ubuntu VM

部署到 Azure
使用此模板,可以部署安装了 OMS 扩展并载入到指定工作区的 Ubuntu VM
使用自定义数据部署虚拟机

部署到 Azure
此模板允许创建一个虚拟机,其中包含传递到 VM 的自定义数据。 此模板还部署存储帐户、虚拟网络、公共 IP 地址和网络接口。
使用 SSH rsa 公钥部署虚拟机

部署到 Azure
使用此模板,可以使用 SSH rsa 公钥创建虚拟机
使用用户数据 部署虚拟机

部署到 Azure
使用此模板可以创建一个虚拟机,其中用户数据传递到 VM。 此模板还部署虚拟网络、公共 IP 地址和网络接口。
将 VM 部署到可用性区域

部署到 Azure
使用此模板,可以使用最新的修补版本部署简单的 VM(Windows 或 Ubuntu)。 这将在指定的位置部署A2_v2大小的 VM,并返回 VM 的 FQDN。
在 ILB 后面部署具有 Linux VM 的 VM 规模集

部署到 Azure
使用此模板,可以使用最新修补版本的 Ubuntu Linux 15.10 或 14.04.4-LTS 部署 VM 规模集。 这些 VM 位于内部负载均衡器后面,其中包含 SSH 连接的 NAT 规则。
部署具有多个 IP 的 VM

部署到 Azure
此模板允许部署具有 3 个 IP 配置的 VM。 此模板将部署名为 myVM1 的 Linux/Windows VM,其中包含 3 个 IP 配置:IPConfig-1IPConfig-2IPConfig-3
使用 Visual Studio 部署 Windows Server VM

部署到 Azure
此模板使用 Visual Code Studio Community 2019 部署 Windows Server VM,并提供了一些 VM 选项。 可以提供 VM 的名称、管理员用户名和密码。
部署 Windows VM 并配置 WinRM https 侦听器

部署到 Azure
使用此模板,可以使用 Windows 版本的几个不同选项部署简单的 Windows VM。 然后,这将配置 WinRM https 侦听器。 用户需要提供参数“hostNameScriptArgument”的值,该参数是 VM 的 fqdn。 示例:testvm.westus.cloupdapp.azure.com 或 *.westus.cloupdapp.azure.com
部署 Windows VM 并使用 Azure 备份 启用备份

部署到 Azure
使用此模板,可以部署使用 DefaultPolicy 进行保护配置的 Windows VM 和恢复服务保管库。
部署具有可变数据磁盘数的 Windows VM

部署到 Azure
使用此模板可以部署简单的 VM,并使用参数在部署时指定数据磁盘数。 请注意,数据磁盘的数量和大小受 VM 大小的约束。 此示例的 VM 大小Standard_DS4_v2默认为 16 个数据磁盘。
使用 Azul Zulu OpenJDK JVM 部署 Windows VM

部署到 Azure
使用此模板,可以使用 Azul Zulu OpenJDK JVM 创建 Windows VM
使用 OMS 扩展 部署 Windows VM

部署到 Azure
使用此模板,可以部署安装了 OMS 扩展并载入到指定工作区的 Windows VM
使用 Windows Admin Center 扩展部署 Windows VM

部署到 Azure
使用此模板,可以使用 Windows Admin Center 扩展部署 Windows VM,以便直接从 Azure 门户管理 VM。
使用 Docker 部署 WordPress 博客

部署到 Azure
使用此模板,可以部署安装了 Docker 的 Ubuntu VM(使用 Docker 扩展)和创建并配置为提供博客服务器的 WordPress/MySQL 容器。
使用 Docker 部署 Open-Source 分析服务器

部署到 Azure
使用此模板,可以部署已安装 Docker 的 Ubuntu VM(使用 Docker 扩展)和已创建并配置为替换(现在日落)分析服务的开放源代码分析服务器容器。
部署 Openvpn Access Server

部署到 Azure
此模板使用 Azure Linux CustomScript 扩展部署 openvpn 访问服务器。 它创建 Ubuntu VM,执行 openvpn 访问服务器的无提示安装,然后进行基本服务器网络设置:将 VPN 服务器主机名定义为 VM 的公共 IP 的 DNS 名称
使用 Docker 引擎 部署 Ubuntu VM

部署到 Azure
此模板允许使用 Docker 部署 Ubuntu VM(使用 Docker 扩展)。 以后可以通过 SSH 连接到 VM 并运行 Docker 容器。
部署 Anbox Cloud

部署到 Azure
此模板在 Ubuntu VM 上部署 Anbox Cloud。 完成 Anbox Cloud 的安装需要在部署后进行用户交互;有关说明,请参阅自述文件。 该模板支持从 Ubuntu Pro 映像启动 VM,以及 Ubuntu Pro 令牌与从非专业映像启动的 VM 的关联。 前者是默认行为:试图将令牌附加到从非 Pro 映像启动的 VM 的用户必须替代 ubuntuImageOffer、ubuntuImageSKU 和 ubuntuProToken 参数的默认参数。 该模板也是 VM 大小和磁盘大小的参数。 这些参数的非默认参数值必须符合 https://anbox-cloud.io/docs/reference/requirements#anbox-cloud-appliance-4
部署 CKAN

部署到 Azure
此模板使用 Apache Solr(搜索)和 PostgreSQL(数据库)在 Ubuntu VM 上部署 CKAN。 CKAN、Solr 和 PostgreSQL 部署为 VM 上的单个 Docker 容器。
部署 Darktrace vSensors

部署到 Azure
使用此模板可以部署一个或多个独立 Darktrace vSensors
部署 HBase 异地复制

部署到 Azure
通过此模板,可以使用 VPN vnet 到 vnet 连接跨两个不同的区域配置用于 HBase 复制的 Azure 环境。
在 Ubuntu 上部署 IOMAD 群集

部署到 Azure
此模板将 IOMAD 部署为 Ubuntu 上的 LAMP 应用程序。 它为前端创建一个或多个 Ubuntu VM,并为后端创建单个 VM。 它在后端 VM 上的前端 VM 和 MySQL 上执行 Apache 和 PHP 的无提示安装。 然后,它会在群集上部署 IOMAD。 它将负载均衡器配置为将请求定向到前端 VM。 它还配置 NAT 规则,以允许管理员访问每个 VM。 它还使用在 VM 之间共享的文件存储来设置 moodledata 数据目录。 部署成功后,可以转到每个前端 VM 上的 /iomad(使用 Web 管理员访问权限)开始配置 IOMAD。
单个 VM 上的 Ubuntu 上部署 IOMAD

部署到 Azure
此模板将 IOMAD 部署为 Ubuntu 上的 LAMP 应用程序。 它创建单个 Ubuntu VM,在它上执行 MySQL、Apache 和 PHP 的无提示安装,然后在该 VM 上部署 IOMAD。 部署成功后,可以转到 /iomad 开始连接 IOMAD。
使用专用终结点部署 MySQL 灵活服务器

部署到 Azure
此模板提供了使用专用终结点部署 Azure Database for MySQL 灵活服务器的方法。
在 Docker 中部署 Neo4J,并在外部磁盘上部署数据

部署到 Azure
此模板允许部署安装了 Docker 的 Ubuntu VM(使用 Docker 扩展)和 Neo4J 容器,该容器使用外部磁盘来存储其数据。
在 Ubuntu VM 中部署 Neo4J

部署到 Azure
此模板允许使用 Neo4J 二进制文件部署 Ubuntu VM,并在指定的端口上运行 Neo4J。
针对 Ubuntu 部署 Net Disk

部署到 Azure
此模板允许在 Azure Ubuntu VM 上部署 seafile 服务器 6.1.1
使用试用许可证部署 Octopus Deploy 3.0

部署到 Azure
使用此模板,可以使用试用许可证部署单个 Octopus Deploy 3.0 服务器。 这将在单个 Windows Server 2012R2 VM(标准 D2)和 SQL DB (S1 层)上部署到为资源组指定的位置。
通过导师 部署 Open edX(lilac 版本)

部署到 Azure
此模板创建单个 Ubuntu VM,并通过导师部署 Open edX。
在单个 Ubuntu VM 上部署 Open edX 开发堆栈

部署到 Azure
此模板创建单个 Ubuntu VM,并在其上部署 Open edX devstack。
部署 Open edX Dogwood (多 VM)

部署到 Azure
此模板创建一个 Ubuntu VM 网络,并在其中部署 Open edX Dogwood。 部署支持 1-9 个应用程序 VM 和后端 Mongo 和 MySQL VM。
在单个 Ubuntu VM 上部署 Open edX fullstack (Ficus)

部署到 Azure
此模板创建单个 Ubuntu VM,并在其上部署 Open edX fullstack (Ficus)。
在 Ubuntu 上部署 OpenLDAP 群集

部署到 Azure
此模板在 Ubuntu 上部署 OpenLDAP 群集。 它创建多个 Ubuntu VM(最多可以增加 5 个,但很容易增加),并在它们上执行 OpenLDAP 的无提示安装。 然后,它会在它们上设置 N 向多主数据库复制。 部署成功后,可以转到 /phpldapadmin 以启动 congfiguring OpenLDAP。
在单个 VM 上的 Ubuntu 上部署 OpenLDAP

部署到 Azure
此模板在 Ubuntu 上部署 OpenLDAP。 它创建单个 Ubuntu VM,并在其上执行 OpenLDAP 的无提示安装。 部署成功后,可以转到 /phpldapadmin 以启动 congfiguring OpenLDAP。
在 Ubuntu 上部署 OpenSIS Community Edition 群集

部署到 Azure
此模板将 OpenSIS Community Edition 部署为 Ubuntu 上的 LAMP 应用程序。 它为前端创建一个或多个 Ubuntu VM,并为后端创建单个 VM。 它在后端 VM 上的前端 VM 和 MySQL 上执行 Apache 和 PHP 的无提示安装。 然后,它会在群集上部署 OpenSIS Community Edition。 部署成功后,可以在每个前端 VM(使用 Web 管理员访问权限)上转到 /opensis-ce,以启动 congfiguring OpenSIS。
在单个 VM 上的 Ubuntu 上部署 OpenSIS Community Edition

部署到 Azure
此模板将 OpenSIS Community Edition 部署为 Ubuntu 上的 LAMP 应用程序。 它创建单个 Ubuntu VM,在它上执行 MySQL、Apache 和 PHP 的无提示安装,然后部署 OpenSIS Community Edition。 部署成功后,可以转到 /opensis-ce 开始连接 OpenSIS。
使用托管虚拟网络部署安全 Azure AI Studio

部署到 Azure
此模板创建一个安全的 Azure AI Studio 环境,其中包含可靠的网络和标识安全限制。
在 Ubuntu 上部署 Shibboleth 标识提供者群集

部署到 Azure
此模板在群集配置中在 Ubuntu 上部署 Shibboleth 标识提供者。 部署成功后,可以转到 https://your-domain:8443/idp/profile/Status(记下端口号)检查成功。
在 Windows 上部署 Shibboleth 标识提供者群集

部署到 Azure
此模板在群集配置中在 Windows 上部署 Shibboleth 标识提供者。 部署成功后,可以转到 https://your-domain:8443/idp/profile/status(记下端口号)检查成功。
在单个 VM 上的 Ubuntu 上部署 Shibboleth 标识提供者

部署到 Azure
此模板在 Ubuntu 上部署 Shibboleth 标识提供者。 部署成功后,可以转到 https://your-domain:8443/idp/profile/status(记下端口号)检查成功。
在 Windows 上部署 Shibboleth 标识提供者(单个 VM)

部署到 Azure
此模板在 Windows 上部署 Shibboleth 标识提供者。 它创建单个 Windows VM,安装 JDK 和 Apache Tomcat,部署 Shibboleth 标识提供者,然后配置所有用于 SSL 访问 Shibboleth IDP 的所有内容。 部署成功后,可以转到 https://your-server:8443/idp/profile/status 以检查成功。
将 Solace PubSub+ 消息代理部署到 Azure Linux VM(s)

部署到 Azure
此模板允许将独立 Solace PubSub+ 消息代理或 Solace PubSub+ 消息代理的三节点高可用性群集部署到 Azure Linux VM(s)。
在单个 VM 上部署 CoScale 平台

部署到 Azure
CoScale 是专为运行微服务的生产环境定制的全堆栈监视解决方案,有关详细信息,请参阅 https://www.coscale.com/。 此模板在单个 VM 上安装 CoScale 平台,并且只能用于 Proof-Of-Concept 环境。
使用 Open JDK 和 Tomcat 部署 Ubuntu VM

部署到 Azure
使用此模板,可以使用 OpenJDK 和 Tomcat 创建 Ubuntu VM。 当前,自定义脚本文件是从 raw.githubusercontent.com/snallami/templates/master/ubuntu/java-tomcat-install.sh 上的 https 链接暂时拉取的。成功预配 VM 后,可以通过访问 http 链接 [FQDN 名称或公共 IP]:8080/ 来验证 tomcat 安装
部署 Windows VM 配置 Windows 特征的 SSL DSC

部署到 Azure
此模板允许你部署 Windows VM,配置 WINDOWS 功能,如 IIS/Web 角色、.Net、自定义记录、windows 身份验证、应用程序初始化、下载应用程序部署包、URL 重写 & SSL 配置(使用 DSC 和 Azure Key Vault)
部署 Xfce 桌面

部署到 Azure
此模板使用 Azure Linux CustomScript 扩展在 VM 上部署 Xfce Desktop。 它创建 Ubuntu VM,执行 Xfce 桌面和 xrdp 的无提示安装
部署 2 节点主/从属 MySQL 复制群集

部署到 Azure
此模板在 CentOS 6.5 或 6.6 上部署 2 节点主/从属 MySQL 复制群集
部署 3 节点 Consul 群集

部署到 Azure
此模板部署 3 节点 Consul 群集,并通过 Atlas 自动加入节点。 Consul 是一种用于服务发现、分布式键/值存储和其他一系列冷事物的工具。 Atlas 由 Hashicorp (Consul 制造商)提供,作为快速创建 Consul 群集的方法,无需手动加入每个节点
部署 3 节点 Percona XtraDB 群集

部署到 Azure
此模板在 CentOS 6.5 或 Ubuntu 12.04 上部署 3 节点 MySQL 高可用性群集
部署 N 节点 Gluster 文件系统

部署到 Azure
此模板在 Ubuntu 上部署具有 2 个副本的 2、4、6 或 8 节点 Gluster 文件系统
部署 N 节点 CentOS 群集

部署到 Azure
此模板部署包含 2 个网络的 2-10 节点 CentOS 群集。
在现有 VNET & AD 上部署 SQL Server 2014 AG

部署到 Azure
此模板在现有 VNET 上创建三个新的 Azure VM:两个 VM 配置为 SQL Server 2014 可用性组副本节点,一个 VM 配置为用于自动群集故障转移的文件共享见证。 除了这些 VM,还配置了以下其他 Azure 资源:内部负载均衡器、存储帐户。 若要在每个 VM 中配置群集、SQL Server 和可用性组,将利用 PowerShell DSC。 对于 Active Directory 支持,应已在现有 VNET 上部署现有的 Active Directory 域控制器。
在 LB 下部署 Windows VM,配置 WinRM Https

部署到 Azure
通过此模板,可以使用 Windows 版本的几个不同选项部署 Windows VM。 此模板还会在 VM 上配置 WinRM https 侦听器
适用于 AZ-400 Labs 的 开发环境

部署到 Azure
适用于 AZ-400 (Azure DevOps) 实验室的 VS2017 社区、Docker 桌面、Git 和 VSCode 的 VM
使用事件中心和 ELK 诊断

部署到 Azure
此模板部署 Elasticsearch 群集和 Kibana 和 Logstash VM。 Logstash 配置为使用输入插件从事件中心拉取诊断数据。
动态发现专用 IP

部署到 Azure
使用此模板可以动态发现 NIC 的专用 IP。 它使用自定义脚本扩展将 NIC0 的专用 IP 传递给 VM1,该扩展将其写入 VM1 上的文件。
使用 SQL 数据库 Django 应用

部署到 Azure
此模板使用 Azure Linux CustomScript 扩展部署应用程序。 此示例创建 Ubuntu VM,执行 Python、Django 和 Apache 的无提示安装,然后创建简单的 Django 应用。 该模板还创建一个 SQL 数据库,其中包含一些示例数据,这些示例数据使用查询在 Web 浏览器中显示
DLWorkspace 部署

部署到 Azure
在 Azure 上部署 DLWorkspace 群集
使用 NSG 外围网络

部署到 Azure
此示例将创建一个简单的外围网络,其中包含四个 Windows 服务器、一个包含两个子网的 VNet 和一个网络安全组。
DNS 转发器 VM

部署到 Azure
此模板演示如何创建将查询转发到 Azure 内部 DNS 服务器的 DNS 服务器。 这对于在虚拟网络之间设置 DNS 结果非常有用(如 https://azure.microsoft.com/documentation/articles/virtual-networks-name-resolution-for-vms-and-role-instances/中所述)。
在 Ubuntu 上 DNX

部署到 Azure
启动 Ubuntu 14.04 服务器并安装 .NET 执行上下文(DNX)和示例应用程序
Docker Swarm 群集

部署到 Azure
此模板创建高可用性 Docker Swarm 群集
Dokku 实例

部署到 Azure
Dokku 是单个 VM 上的迷你式 PaaS。
Ubuntu VM 上的无人机

部署到 Azure
此模板使用 Docker 扩展和无人机 CI 包预配 Ubuntu 14.04 LTS 的实例。
Elasticsearch 群集、Kibana 和 Logstash for Diagnostics

部署到 Azure
此模板部署 Elasticsearch 群集和 Kibana 和 Logstash VM。 Logstash 配置为使用输入插件从现有 Azure 存储表拉取诊断数据。
ESET VM 扩展

部署到 Azure
使用 ESET 扩展创建 VM
基于 FreeBSD PHP 的网站

部署到 Azure
此模板将部署四个基于 PHP 的 FreeBSD VM 网站
使用 VM 和专用链接服务 Front Door Premium

部署到 Azure
此模板创建 Front Door Premium 和配置为 Web 服务器的虚拟机。 Front Door 使用专用终结点和专用链接服务将流量发送到 VM。
GitHub Enterprise Server

部署到 Azure
GitHub Enterprise Server 是将在 Azure 订阅中的 VM 上运行的 GitHub.com 的专用版本。 这使得企业软件开发团队能够轻松地进行协作编码。
GitLab Omnibus

部署到 Azure
此模板简化了使用公共 DNS 在虚拟机上部署 GitLab Omnibus,并利用公共 IP 的 DNS。 它利用Standard_F8s_v2实例大小,该大小与参考体系结构保持一致,支持多达 1000 个用户(20 RPS)。 该实例已预先配置为将 HTTPS 与 Let's Encrypt 证书配合使用,以便进行安全连接。
SUSE 上的 GlassFish

部署到 Azure
此模板部署负载均衡的 GlassFish (v3 或 v4) 群集,其中包含用户定义的 SUSE(OpenSUSE 或 SLES) VM 数。
在 Ubuntu 上 Go Ethereum

部署到 Azure
此模板在 Ubuntu 虚拟机上部署 Go Ethereum 客户端和起源块
Ubuntu 上的 Go Expanse

部署到 Azure
此模板在 Ubuntu 虚拟机上部署 Go Expanse 客户端
使用 OBS-Studio、Skype、MS-Teams GPU Vm 进行事件流式处理

部署到 Azure
此模板使用 OBS-Studio、Skype MS-Teams 创建 GPU Vm 进行事件流式处理。 它使用新的计算堆栈在新 vnet、存储帐户、nic 和公共 IP 中创建 VM。 基于 Chocolately 包管理器的所有安装过程
在现有 VNet 中 Guacamole VM

部署到 Azure
此模板使用 Guacamole(免费的开源 HTML5 RDP/VNC 代理)部署 VM。 使用此模板需要现有虚拟网络和子网。 基础映像是 CoreOS Stable,部署使用 Docker 容器。
Hazelcast 群集

部署到 Azure
Hazelcast 是一个内存中数据平台,可用于各种数据应用程序。 此模板将部署任意数量的 Hazelcast 节点,它们将自动发现彼此。
高 IOPS 32 数据磁盘存储池标准 D14 VM

部署到 Azure
此模板创建附加了 32 个数据磁盘的标准 D14 VM。 使用 DSC 时,它们根据最佳做法自动进行条带化,以获取最大 IOPS 并格式化为单个卷。
Hyper-V 包含嵌套 VM 的主机虚拟机

部署到 Azure
将虚拟机部署到 Hyper-V 主机和所有依赖资源,包括虚拟网络、公共 IP 地址和路由表。
在 Windows VM 上使用 DSC 扩展 IIS Server

部署到 Azure
此模板创建 Windows VM,并使用 DSC 扩展设置 IIS 服务器。 请注意,如果使用的是 Azure 存储,DSC 配置模块需要传入 SAS 令牌。 对于 GitHub 中的 DSC 模块链接(此模板中的默认值),无需这样做。
SQL Server 2014 VM & IIS VM

部署到 Azure
在 VNET 中创建 1 或 2 个 IIS Windows 2012 R2 Web 服务器和一个后端 SQL Server 2014。
在 Windows VM 上安装文件

部署到 Azure
使用此模板可以部署 Windows VM 并运行自定义 PowerShell 脚本,以在该 VM 上安装文件。
在 Ubuntu VM 上安装 Minecraft Server

部署到 Azure
此模板在 Ubuntu 虚拟机上部署和设置自定义的 Minecraft 服务器。
在 Azure 中安装 Configuration Manager Current Branch

部署到 Azure
此模板基于选择的配置创建新的 Azure VM。 它配置新的 AD 域控制程序、具有 SQL Server 的新层次结构/独立板凳、具有管理点和分发点和客户端的远程站点系统服务器。
在 Azure 中安装 Configuration Manager 技术预览版实验室

部署到 Azure
此模板创建新的 Azure VM。 它配置新的 AD 域控制程序、具有 SQL Server 的新独立主站点、具有管理点和分发点和客户端的远程站点系统服务器(选项)。
在虚拟机规模集上安装 Elasticsearch 群集

部署到 Azure
此模板在虚拟机规模集上部署 Elasticsearch 群集。 该模板预配 3 个专用主节点,其中包含在托管磁盘上运行的可选数据节点数。
使用自定义脚本 LinuxExt 在 Ubuntu VM 上安装 MongoDB

部署到 Azure
此模板在 Ubuntu 虚拟机上部署 Mongo DB。 此模板还部署存储帐户、虚拟网络、公共 IP 地址和网络接口。
使用自定义脚本 Linux 扩展在 CentOS 上安装 MongoDB

部署到 Azure
此模板在 CentOS 虚拟机上部署 Mongo DB。 此模板还部署存储帐户、虚拟网络、公共 IP 地址和网络接口。
安装多个 Visual Studio Team Services (VSTS) 代理

部署到 Azure
此模板生成虚拟机并支持安装了 Visual Studio 2017 的资源。 它还安装并配置最多 4 个 VSTS 生成代理,并将其链接到 VSTS 池
在 Ubuntu VM 上安装 Phabricator

部署到 Azure
此模板在 Ubuntu 虚拟机上部署 Phabricator。 此模板还部署存储帐户、虚拟网络、公共 IP 地址和网络接口。
使用自定义脚本 Linux 扩展在 Ubuntu 上安装剪贴

部署到 Azure
此模板在 Ubuntu 虚拟机上部署 Scrapy。 用户可以上传蜘蛛以开始爬网。 此模板还部署存储帐户、虚拟网络、公共 IP 地址和网络接口。
使用 CentOS 库映像 Intel Lustre 客户端

部署到 Azure
此模板使用 Azure 库 OpenLogic CentOS 6.6 或 7.0 映像创建多个 Intel Lustre 2.7 客户端虚拟机,并装载现有的 Intel Lustre 文件系统
Azure 虚拟网络 (VNET) 中的 IPv6

部署到 Azure
创建具有 2 个 VM 的双堆栈 IPv4/IPv6 VNET。
使用 Std LB 在 Azure 虚拟网络(VNET)中 IPv6

部署到 Azure
创建具有 2 个 VM 和面向 Internet 的标准负载均衡器的双堆栈 IPv4/IPv6 VNET。
RHEL 上的 JBoss EAP (群集、多 VM)

部署到 Azure
此模板允许创建多个运行 JBoss EAP 7.4 群集的 RHEL 8.6 VM,并部署名为 eap-session-replication 的 Web 应用程序,可以使用部署时配置的 JBoss EAP 用户名和密码登录到管理控制台。
RHEL 上的 JBoss EAP(独立 VM)

部署到 Azure
此模板允许创建运行 JBoss EAP 7.4 的 RHEL 8.6 VM,并在 Azure 上部署名为 JBoss-EAP 的 Web 应用程序,可以使用部署时配置的 JBoss EAP 用户名和密码登录到管理控制台。
JBoss EAP 服务器运行名为杜克 的测试应用程序

部署到 Azure
使用此模板可以创建运行 JBoss EAP 7 的 Red Hat VM,并部署名为杜克的 Web 应用程序,可以使用部署时配置的用户和密码登录到管理控制台。
使用 Windows & Linux 辅助角色 Jenkins 群集

部署到 Azure
具有 1 个 Linux 节点和 1 个 Windows 节点的 Jenkins 主节点
Elasticsearch 的 JMeter 环境

部署到 Azure
此模板将 JMeter 环境部署到现有虚拟网络中。 一个主节点和多个从属节点部署到新的 jmeter 子网中。 此模板与 Elasticsearch 快速入门模板结合使用。
将 VM 加入现有域

部署到 Azure
此模板演示在云中加入专用 AD 域。
KEMP LoadMaster (MultiNIC)

部署到 Azure
此模板创建一个 KEMP LoadMaster,其中包含两个接口到现有子网。
KEMP LoadMaster HA 对

部署到 Azure
此模板部署 KEMP LoadMaster HA 对
使用 VMSS 群集自动缩放程序 Kubernetes 群集

部署到 Azure
此模板部署使用 kubeadm 初始化的 vanilla kubernetes 群集。 它使用群集自动缩放程序部署配置的主节点。 预配置的虚拟机规模集(VMSS)也会部署并自动附加到群集。 然后,群集自动缩放程序可以根据群集的工作负荷自动纵向扩展/缩减群集。
使用 Gnome 桌面 RDP VSCode 和 Azure CLI Linux VM

部署到 Azure
此模板部署 Ubuntu Server VM,然后使用 Linux CustomScript 扩展(通过 xrdp)安装 Ubuntu Gnome 桌面和远程桌面支持。 最终预配的 Ubuntu VM 支持通过 RDP 进行远程连接。
使用 MSI 访问存储 Linux VM

部署到 Azure
此模板部署具有系统分配的托管标识的 Linux VM,该标识有权访问其他资源组中的存储帐户。
使用串行输出 Linux VM

部署到 Azure
此模板创建一个简单的 Linux VM,其中包含最少的参数和配置为输出到存储的串行/控制台
列出存储帐户密钥-Windows 自定义脚本扩展

部署到 Azure
此模板创建 Windows Server 2012 R2 VM,并使用自定义脚本扩展运行 PowerShell 脚本。 它还使用 listKeys 函数获取 Azure 存储帐户密钥。 此示例的 PowerShell 脚本必须托管在 Azure 存储帐户中。 (注意:对于其他示例,自定义脚本也可以托管在 GitHub 中)
Lustre HPC 客户端和服务器节点

部署到 Azure
此模板创建 Lustre 客户端和服务器节点 VM 以及 VNET 等相关基础结构
使用条件资源 市场示例 VM

部署到 Azure
此模板允许使用虚拟网络、存储和公共 IP 地址的新资源或现有资源部署 Linux VM。 它还允许在 SSH 和密码身份验证之间进行选择。 模板使用条件和逻辑函数来消除对嵌套部署的需求。
Windows VM 上的 McAfee Endpoint Security (试用许可证)

部署到 Azure
此模板创建 Windows VM 并设置 McAfee Endpoint Security 的试用版
使用多个 Ubuntu VM Memcached 服务群集

部署到 Azure
此模板在专用子网中的 Ubuntu 14.04 VM 上创建一个或多个 memcached 服务。 它还使用 PHP 测试页创建一个可公开访问的 Apache VM,以确认已安装并可访问 memcached。
使用 Azure DMS 迁移到 Azure SQL 数据库

部署到 Azure
Azure 数据库迁移服务(DMS)旨在简化将本地数据库迁移到 Azure 的过程。 DMS 将简化将现有本地 SQL Server 和 Oracle 数据库迁移到 Azure SQL 数据库、Azure SQL 托管实例或 Azure 虚拟机中Microsoft SQL Server。 此模板将部署一个 Azure 数据库迁移服务的实例,一个安装了 SQL Server 的 Azure VM,它将充当源服务器,其中包含预先创建的数据库,目标 Azure SQL DB 服务器将具有要从源服务器迁移到目标服务器的预先创建的数据库架构。 该模板还将部署所需的资源,例如 NIC、vnet 等,以支持源 VM、DMS 服务和目标服务器。
使用 NSG、ILB、AppGateway 多层应用

部署到 Azure
此模板部署虚拟网络,通过子网隔离网络,部署 VM 并配置负载均衡
多层流量管理器、L4 ILB、L7 AppGateway

部署到 Azure
此模板部署虚拟网络,通过子网隔离网络,部署 VM 并配置负载均衡
使用托管磁盘 多 VM 模板

部署到 Azure
此模板将使用托管磁盘、公共 IP 和网络接口创建 N 个 VM 数量。 它将在单个可用性集中创建 VM。 它们将在虚拟网络中预配,该虚拟网络也将作为部署的一部分创建
多客户端 VNS3 网络设备

部署到 Azure
VNS3 是仅限软件的虚拟设备,它提供云应用程序边缘的安全设备、应用程序传送控制器和统一威胁管理设备的组合特性和功能。 关键优势:在云网络之上,始终在端到端加密、联合数据中心、云区域、云提供商和/或容器上,创建一个统一的地址空间、可证明的控制加密密钥、可大规模管理网格网络、云中的可靠 HA、隔离敏感应用程序(快速低成本网络分段)、应用程序内分段、分析云中移动的所有数据。 关键网络功能;虚拟路由器、交换机、防火墙、VPN 集中器、多播分发服务器以及 WAF、NIDS、缓存、代理负载均衡器和其他第 4 层网络功能,VNS3 不需要新的知识或培训来实现,因此你可以与现有网络设备集成。
使用 Chef 扩展 多个 VM 模板

部署到 Azure
部署使用 Chef 客户端配置的指定数量的 Ubuntu VM
使用自定义脚本 多个 Windows-VM

部署到 Azure
选择自定义脚本的多个 Windows VM。
Ubuntu VM 上的 Nagios Core

部署到 Azure
此模板安装和配置 Nagios Core(行业标准开源 IT 监视系统),使组织能够在影响关键业务流程之前识别和解决 IT 基础结构问题
debian 上的 Nylas N1 电子邮件同步引擎

部署到 Azure
此模板在 Debian VM 上安装并配置 Nylas N1 开源同步引擎。
OpenCanvas-LMS

部署到 Azure
此模板在 Ubuntu 16.04 上部署 OpenCanvas
OpenScholar

部署到 Azure
此模板将 OpenScholar 部署到 ubuntu VM 16.04
在 Ubuntu VM 上 OS 修补扩展

部署到 Azure
此模板创建 Ubuntu VM 并安装 OSPatching 扩展
Perforce Helix Core Linux 单实例

部署到 Azure
此模板在 Azure 中的 CentOS、RHEL 或 Ubuntu 服务器上部署 Perforce Helix Core Server 的新实例以及所有必需的基础结构元素。 安装是使用 SDP(服务器部署包)完成的。 Perforce Helix Core 是游戏开发和其他许多行业广泛使用的行业领先的版本控制系统。
专用终结点示例

部署到 Azure
此模板演示如何创建指向 Azure SQL Server 的专用终结点
专用链接服务示例

部署到 Azure
此模板演示如何创建专用链接服务
在 Ubuntu 虚拟机上预配 Kafka 群集

部署到 Azure
此模板在 Ubuntu 虚拟机映像上创建 Kafka 群集,启用持久性(默认情况下),并应用所有已知的优化和最佳做法
在 Ubuntu 虚拟机上预配 Spark 群集

部署到 Azure
此模板在 Ubuntu 虚拟机映像上创建 Spark 群集,启用持久性(默认情况下),并应用所有已知的优化和最佳做法
链接到网关负载均衡器的公共负载均衡器

部署到 Azure
此模板允许你将链接的公共标准负载均衡器部署到网关负载均衡器。 从 Internet 传入的流量通过后端池中的 linux VM(NVA)路由到网关负载均衡器。
Windows VM 上的 Puppet 代理

部署到 Azure
使用 Puppet 代理部署 Windows VM
将证书推送到 Windows VM

部署到 Azure
将证书推送到 Windows VM。 使用模板在 http://azure.microsoft.com/en-us/documentation/templates/101-create-key-vault 创建 Key Vault
使用自定义脚本 Linux 扩展 在 Ubuntu 上 Python 代理

部署到 Azure
此模板在 Ubuntu 虚拟机上部署 Python 代理。 此模板还部署存储帐户、虚拟网络、公共 IP 地址和网络接口。
Qlik Sense Enterprise 单节点

部署到 Azure
此模板预配单个节点 Qlik Sense Enterprise 站点。 自带许可证。
使用现有 Active Directory RDS 场部署

部署到 Azure
此模板使用同一资源组中的现有 Active Directory 创建 RDS 场部署
RDS 网关高可用性部署

部署到 Azure
此模板为现有 RDS 部署中的 RD 网关和 RD Web 访问服务器提供高可用性
Red Hat Enterprise Linux VM (RHEL 7.8 非托管)

部署到 Azure
此模板将使用“即用即付”RHEL VM 映像(RHEL 7.8)为所选版本的标准You-Go A1_v2 VM 部署 Red Hat Enterprise Linux VM(RHEL 7.8),该映像位于所选资源组的位置,并附加了附加了 100 GiB 数据磁盘。 此映像收取额外费用 - 有关详细信息,请参阅 Azure VM 定价页。
Red Hat Enterprise Linux VM (RHEL 7.8)

部署到 Azure
此模板将使用标准 D1 VM 上所选版本的You-Go Red Hat Enterprise Linux VM(RHEL 7.8)部署 Red Hat Enterprise Linux VM(RHEL 7.8),并在所选资源组的位置附加附加了 100 GiB 数据磁盘。 此映像收取额外费用 - 有关详细信息,请参阅 Azure VM 定价页。
使用 Team Services 代理 Red Hat 完整跨平台开发框

部署到 Azure
使用此模板,可以使用一整套跨平台 SDK 和 Visual Studio Team Services Linux 生成代理创建 Red Hat VM。 成功预配 VM 后,可以通过在代理池下的 Team Services 帐户设置下查看来验证 Team Services 生成代理安装。 支持的语言/工具:OpenJDK Java 6、7 和 8;蚂蚁、Maven 和 Gradle;npm 和 nodeJS;格罗夫和古尔普;Gnu C 和 C++ 以及 make;Perl、Python、Ruby 和 Ruby on Rails;.NET Core;Docker 引擎和 Compose;and go
在 Azure 上 Red Hat Linux 3 层解决方案

部署到 Azure
使用此模板,可以使用“Red Hat Enterprise Linux 7.3”虚拟机部署 3 层体系结构。 体系结构包括虚拟网络、外部和内部负载均衡器、跳转 VM、NSG 等以及每个层中的多个 RHEL 虚拟机
Red Hat Tomcat 服务器,用于 Team Services 部署

部署到 Azure
使用此模板可以创建运行 Apache2 和 Tomcat7 的 Red Hat VM,并启用它以支持 Visual Studio Team Services Apache Tomcat 部署任务、通过 SSH 任务的复制文件以及 FTP 上传任务(使用 ftps)来启用 Web 应用程序的部署。
使用 Azure 负载均衡器和浮动 IP 冗余 haproxy

部署到 Azure
此模板创建冗余 haproxy 设置,其中 2 个 Ubuntu VM 在启用了浮动 IP 的 Azure 负载均衡器后面配置。 每个 Ubuntu VM 运行 haproxy 以对其他应用程序 VM 的请求进行负载均衡(在本例中运行 Apache)。 Keepalived 通过将浮动 IP 分配给 MASTER 并阻止 BACKUP 上的负载均衡器探测,为 haproxy VM 启用冗余。 此模板还部署存储帐户、虚拟网络、公共 IP 地址、网络接口。
具有高可用性的远程桌面服务

部署到 Azure
此 ARM 模板示例代码将部署具有高可用性的 远程桌面服务 2019 会话集合 实验室。 目标是使用 Windows Server 2019 为远程桌面服务部署完全冗余且高度可用的解决方案。
使用 Linux VM 在 Azure 上 ROS

部署到 Azure
此模板创建 Linux VM 并使用 CustomScript 扩展将 ROS 安装到其中。
使用 Windows VM 在 Azure 上 ROS

部署到 Azure
此模板创建 Windows VM 并使用 CustomScript 扩展将 ROS 安装到其中。
SAP 2 层 S/4HANA 完全激活的设备

部署到 Azure
此模板部署 SAP S/4HANA 完全激活的设备系统。
SAP NetWeaver 应用程序服务器的 SAP LaMa 模板

部署到 Azure
此模板部署虚拟机并安装所需的应用程序,以便将此虚拟机用于 SAP LaMa。 该模板还会创建所需的磁盘布局。 有关使用 SAP LaMa 管理 Azure 虚拟机的详细信息,请参阅 /azure/virtual-machines/workloads/sap/lama-installation。
SAP NetWeaver ASCS 的 SAP LaMa 模板

部署到 Azure
此模板部署虚拟机并安装所需的应用程序,以便将此虚拟机用于 SAP LaMa。 该模板还会创建所需的磁盘布局。 有关使用 SAP LaMa 管理 Azure 虚拟机的详细信息,请参阅 /azure/virtual-machines/workloads/sap/lama-installation。
SAP NetWeaver 数据库服务器的 SAP LaMa 模板

部署到 Azure
此模板部署虚拟机并安装所需的应用程序,以便将此虚拟机用于 SAP LaMa。 该模板还会创建所需的磁盘布局。 有关使用 SAP LaMa 管理 Azure 虚拟机的详细信息,请参阅 /azure/virtual-machines/workloads/sap/lama-installation。
SAP NetWeaver 2 层(托管磁盘)

部署到 Azure
使用此模板,可以使用 SAP 和托管磁盘支持的操作系统部署 VM。
SAP NetWeaver 3 层(托管磁盘)

部署到 Azure
使用此模板,可以使用 SAP 和托管磁盘支持的操作系统部署 VM。
SAP NetWeaver 3 层多层 SID (A)SCS (托管磁盘)

部署到 Azure
使用此模板,可以使用 SAP 支持的操作系统部署 VM。
SAP NetWeaver 3 层多层 SID AS(托管磁盘)

部署到 Azure
使用此模板,可以使用 SAP 支持的操作系统部署 VM。
SAP NetWeaver 3 层多层 SID DB (托管磁盘)

部署到 Azure
使用此模板,可以使用 SAP 支持的操作系统部署 VM。
SAP NetWeaver 文件服务器(托管磁盘)

部署到 Azure
此模板允许部署可用作 SAP NetWeaver 共享存储的文件服务器。
Secure Ubuntu by Trailbot

部署到 Azure
此模板提供一个 Ubuntu VM,其中包含一个名为 Trailbot 观察程序的特殊演示,用于监视系统文件和日志、修改后触发智能策略,并生成 区块链锚定不可变的审核线索 发生的所有操作。
使用 Key Vault 保护 VM 密码

部署到 Azure
此模板允许通过检索存储在 Key Vault 中的密码来部署简单的 Windows VM。 因此,密码永远不会在模板参数文件中以纯文本形式输入
安全虚拟中心

部署到 Azure
此模板使用 Azure 防火墙创建安全的虚拟中心,以保护发往 Internet 的云网络流量。
Azure VM 上的自承载集成运行时

部署到 Azure
此模板创建自承载集成运行时并在 Azure 虚拟机上注册它
SharePoint 订阅/ 2019 / 2016 完全配置

部署到 Azure
创建 DC、SQL Server 2022 和从 1 到 5 个服务器(s)托管 SharePoint 订阅/2019 / 2016 场,其中包含大量配置,包括受信任的身份验证、具有个人网站的用户配置文件、OAuth 信任(使用证书)、用于托管高信任外接程序的专用 IIS 站点,等等。已安装最新版本的密钥软件(包括 Fiddler、vscode、np++、7zip、ULS 查看器)。 SharePoint 计算机具有其他微调功能,使它们立即可用(远程管理工具、Edge 和 Chrome 的自定义策略、快捷方式等)。
简单的 DSC 请求服务器

部署到 Azure
此示例允许你部署 powershell 所需状态配置请求服务器。
使用具有 BGP 的主动-主动 VPN 网关 站点到站点 VPN

部署到 Azure
通过此模板,可以使用 BGP 在配置主动-主动的两个 VNet 之间部署站点到站点 VPN VPN。 每个 Azure VPN 网关解析远程对等方的 FQDN,以确定远程 VPN 网关的公共 IP。 模板在具有可用性区域的 Azure 区域中按预期运行。
使用 Azure SQL 数据库 在 Windows 上 SonarQube

部署到 Azure
部署安装了 SonarQube 并针对 Azure SQL 数据库配置的 Windows VM。
旋转力群集

部署到 Azure
模板启动一个扭力群集。
SQL 预配 CSP

部署到 Azure
Microsoft Azure 具有新的订阅产品/服务 CSP 订阅。 CSP 订阅尚不支持 SQL VM 部署的某些方面。 这包括 SQL IaaS 代理扩展,这是 SQL 自动备份和 SQL 自动修补等功能所必需的。
启用了 SQL Server 2014 SP1 Enterprise 的所有 SQL VM 功能

部署到 Azure
此模板将创建启用了自动修补、自动备份和 Azure Key Vault 集成功能的 SQL Server 2014 SP1 Enterprise 版本。
使用自动修补 SQL Server 2014 SP1 Enterprise

部署到 Azure
此模板将创建启用了自动修补功能的 SQL Server 2014 SP1 Enterprise 版本。
使用 Azure Key Vault SQL Server 2014 SP1 Enterprise

部署到 Azure
此模板将创建启用了 Azure Key Vault 集成功能的 SQL Server 2014 SP1 Enterprise 版本。
使用自动备份 SQL Server 2014 SP2 Enterprise

部署到 Azure
此模板将创建启用了自动备份功能的 SQL Server 2014 SP2 Enterprise 版本
具有性能优化存储设置的 SQL Server VM

部署到 Azure
在 PremiumSSD 上创建具有性能优化存储设置的 SQL Server 虚拟机
在 UltraSSD 上 SQL VM 性能优化存储设置

部署到 Azure
使用 UltraSSD for SQL 日志文件创建具有性能优化存储设置的 SQL Server 虚拟机
独立 Ethereum Studio

部署到 Azure
此模板在 Ubuntu 上部署一个 Docker,其中包含 Ethereum Studio 的独立版本。
按 IP 地址按 IP 地址 标准负载均衡器

部署到 Azure
此模板用于演示如何使用 ARM 模板按 IP 地址配置负载均衡器的后端池,如 后端池管理 文档中所述。
SUSE Linux Enterprise Server VM (SLES 12)

部署到 Azure
通过此模板,可以使用标准 D1 VM 上所选版本的 SLES VM 映像在所选资源组的位置部署 SUSE Linux Enterprise Server VM(SLES 1You-Go 2),并附加附加了 100 GiB 数据磁盘。 此映像收取额外费用 - 有关详细信息,请参阅 Azure VM 定价页。
在 Windows VM 上 Symantec Endpoint Protection 扩展试用版

部署到 Azure
此模板创建 Windows VM 并设置 Symantec Endpoint Protection 的试用版
Telegraf-InfluxDB-Grafana

部署到 Azure
此模板允许在 Linux Ubuntu 14.04 LTS VM 上部署 Telegraf-InfluxDB-Grafana 实例。 这将在资源组位置部署 VM,并返回 VM 的 FQDN,并安装 Telegraf、InfluxDB 和 Grafana 的组件。 该模板为 telegraf 提供配置,并启用了 Docker、容器主机指标的插件。
在 Azure 上 Terraform

部署到 Azure
此模板允许将 Terraform 工作站部署为具有 MSI 的 Linux VM。
Azure 防火墙高级版 的 测试环境

部署到 Azure
此模板创建具有高级功能(例如入侵检查检测(IDPS)、TLS 检查和 Web 类别筛选等高级功能的 Azure 防火墙高级和防火墙策略
TFS 基本域部署

部署到 Azure
此模板创建一个独立 VM TFS 部署,包括 TFS、SQL Express 和域控制器。 它用于评估 Azure 中的 TFS,而不是作为生产部署。
TFS 工作组部署

部署到 Azure
此模板创建自包含的单个 VM TFS 工作组部署,包括 TFS 和 SQL Express。 它用于评估 Azure 中的 TFS,而不是作为生产部署。
Azure 上的双层 nodejsapp-migration-to-containers-on-Azure

部署到 Azure
将两层应用迁移到 Azure 容器和 PaaS 数据库。
使用请求的测试页 Ubuntu Apache2 Web 服务器

部署到 Azure
使用此模板,可以使用定义为参数的测试页内容快速创建运行 Apache2 的 Ubuntu VM。 这对于快速验证/演示/原型制作非常有用。
使用 Team Services 代理 Ubuntu 完整跨平台开发框

部署到 Azure
使用此模板,可以使用一整套跨平台 SDK 和 Visual Studio Team Services Linux 生成代理创建 Ubuntu VM。 成功预配 VM 后,可以通过在代理池下的 Team Services 帐户设置下查看来验证 Team Services 生成代理安装。 支持的语言/工具:OpenJDK Java 7 和 8;蚂蚁、Maven 和 Gradle;npm 和 nodeJS;格罗夫和古尔普;Gnu C 和 C++ 以及 make;Perl、Python、Ruby 和 Ruby on Rails;.NET;and go
使用 VSCode Ubuntu Mate 桌面 VM

部署到 Azure
使用此模板,可以使用 Ubuntu 版本的几个不同选项(使用最新修补的版本)部署简单的 Linux VM。 这会在资源组位置部署 A1 大小的 VM,并返回 VM 的 FQDN。
Ubuntu Tomcat 服务器用于 Team Services 部署

部署到 Azure
此模板允许你创建运行 Apache2 和 Tomcat7 的 Ubuntu VM,并启用它以支持 Visual Studio Team Services Apache Tomcat 部署任务、通过 SSH 任务的复制文件以及 FTP 上传任务(使用 ftps)来启用 Web 应用程序的部署。
使用 OpenJDK 7/8、Maven 和 Team Services 代理 Ubuntu VM

部署到 Azure
使用此模板,可以使用 OpenJDK 7 和 8、Maven(以及 Ant)和 Visual Studio Team Services Linux 生成代理创建 Ubuntu VM 软件生成计算机。 成功预配 VM 后,可以通过在代理池下查看 Team Services 帐户设置来验证 Team Services 生成代理安装
使用 Azure 防火墙作为中心 & 辐射型拓扑中的 DNS 代理

部署到 Azure
此示例演示如何使用 Azure 防火墙在 Azure 中部署中心辐射型拓扑。 中心虚拟网络充当通过虚拟网络对等互连连接到中心虚拟网络的许多辐射虚拟网络的中心点。
使用脚本扩展在 Ubuntu VM 上安装 Mongo DB

部署到 Azure
此模板在两个单独的脚本中在 Ubuntu 虚拟机上部署配置和安装 Mongo DB。 此模板是一个很好的示例,演示如何表达在同一虚拟机上运行的两个脚本之间的依赖关系。 此模板还部署存储帐户、虚拟网络、公共 IP 地址和网络接口。
用户定义的路由和设备

部署到 Azure
此模板部署虚拟网络、相应子网中的 VM 和路由,以将流量定向到设备
Ubuntu VM 上的 Vert.x、OpenJDK、Apache 和 MySQL Server

部署到 Azure
此模板使用 Azure Linux CustomScript 扩展在 Ubuntu 14.04 LTS 上部署 Vert.x、OpenJDK、Apache 和 MySQL 服务器。
使用 RDP 端口 虚拟机

部署到 Azure
创建虚拟机,并为负载均衡器中的 VM 创建 RDP 的 NAT 规则
使用条件资源 虚拟机

部署到 Azure
此模板允许使用虚拟网络、存储和公共 IP 地址的新资源或现有资源部署 Linux VM。 它还允许在 SSH 和密码身份验证之间进行选择。 模板使用条件和逻辑函数来消除对嵌套部署的需求。
使用 VM 虚拟网络 NAT

部署到 Azure
部署 NAT 网关和虚拟机
使用 Docker Desktop Visual Studio 2019 CE

部署到 Azure
使用 Visual Studio 2019 CE 和 Docker Desktop 进行容器开发
Visual Studio 和 Visual Studio Team Services 生成代理 VM

部署到 Azure
此模板扩展 Visual Studio Dev VM 模板。 它使用新的计算堆栈在新 vnet、存储帐户、nic 和公共 IP 中创建 VM,然后安装 Visual Studio Team Services 生成代理。
Visual Studio 开发 VM

部署到 Azure
此模板从可用的基本库 VM 映像创建 Visual Studio 2015 或 Dev15 VM。 它使用新的计算堆栈在新 vnet、存储帐户、nic 和公共 IP 中创建 VM。
使用 Chocolatey 包 Visual Studio 开发 VM

部署到 Azure
此模板从可用的基本库 VM 映像创建 Visual Studio 2013 或 2015 VM。 它使用新的计算堆栈在新 vnet、存储帐户、nic 和公共 IP 中创建 VM。
预安装的 O365 Visual Studio 开发 VM

部署到 Azure
此模板从可用的基本库 VM 映像创建 Visual Studio 2015 VM。 它使用新的计算堆栈在新 vnet、存储帐户、nic 和公共 IP 中创建 VM。
VM 启动工作负荷模板

部署到 Azure
此模板创建请求的 VM 数量,并同时启动它们以计算平均 VM 启动时间
使用用于项目下载的托管标识 VM

部署到 Azure
此模板演示如何使用托管标识为虚拟机的自定义脚本扩展下载项目。
在 Ubuntu VM 上 VMAccess 扩展

部署到 Azure
此模板创建 Ubuntu VM 并安装 VMAccess 扩展
使用负载均衡器和 NAT 在可用性区域中 VM

部署到 Azure
使用此模板,可以使用负载均衡器创建跨可用性区域分布的虚拟机,并通过负载均衡器配置 NAT 规则。 此模板还部署虚拟网络、公共 IP 地址和网络接口。 在此模板中,我们使用资源循环功能创建网络接口和虚拟机
VNS3 网络设备进行云连接和安全

部署到 Azure
VNS3 是仅提供安全设备、应用程序传送控制器和云应用程序边缘统一威胁管理设备的组合特性和功能的软件。 关键优势,在云网络之上,始终以端到端加密、联合数据中心、云区域、云提供商和/或容器为基础,创建一个统一的地址空间、可证明的控制加密密钥、可大规模管理网格网络、云中的可靠 HA、隔离敏感应用程序(快速低成本网络分段)、应用程序内分段、分析云中移动的所有数据。 关键网络功能;虚拟路由器、交换机、防火墙、vpn 集中器、多播分发服务器,以及 WAF、NIDS、缓存、代理、负载均衡器和其他第 4 层网络功能,VNS3 不需要新的知识或培训来实现,因此你可以与现有网络设备集成。
CentOS 8(独立 VM)上的 WildFly 18

部署到 Azure
此模板允许创建运行 WildFly 18.0.1.Final 的 CentOS 8 VM,并在 Azure 上部署名为 JBoss-EAP 的 Web 应用程序,可以使用部署时配置的 Wildfly 用户名和密码登录到管理控制台。
安装了 Portainer 和 Traefik 的 Windows Docker 主机

部署到 Azure
预安装了 Portainer 和 Traefik 的 Windows Docker 主机
使用 SSH Windows Server VM

部署到 Azure
部署启用了开放 SSH 的单个 Windows VM,以便可以使用基于密钥的身份验证通过 SSH 进行连接。
使用 Azure 安全基线 Windows VM

部署到 Azure
该模板使用公共 IP 地址在新虚拟网络中创建运行 Windows Server 的虚拟机。 部署计算机后,将安装来宾配置扩展,并应用 Windows Server 的 Azure 安全基线。 如果计算机配置偏移,可以通过再次部署模板来重新应用设置。
预装了 O365 的 Windows VM

部署到 Azure
此模板创建基于 Windows 的 VM。 它使用新的计算堆栈在新 vnet、存储帐户、nic 和公共 IP 中创建 VM。
在 Windows VM 上 WinRM

部署到 Azure
此模板在虚拟机上安装 Azure Key Vault 中的证书,并打开 WinRM HTTP 和 HTTPS 侦听器。 先决条件:上传到 Azure Key Vault 的证书。 使用模板在 http://azure.microsoft.com/en-us/documentation/templates/101-create-key-vault 创建 Key Vault
Ubuntu VM 上的 Zookeeper 群集

部署到 Azure
此模板在 Ubuntu VM 上创建一个“n”节点 Zookeper 群集。 使用 scaleNumber 参数指定此群集中的节点数

Terraform (AzAPI 提供程序)资源定义

可以使用目标操作部署 virtualMachines 资源类型:

  • 资源组

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.Compute/virtualMachines 资源,请将以下 Terraform 添加到模板。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Compute/virtualMachines@2021-11-01"
  name = "string"
  identity = {
    type = "string"
    userAssignedIdentities = {
      {customized property} = {
      }
    }
  }
  location = "string"
  plan = {
    name = "string"
    product = "string"
    promotionCode = "string"
    publisher = "string"
  }
  tags = {
    {customized property} = "string"
  }
  zones = [
    "string"
  ]
  body = jsonencode({
    extendedLocation = {
      name = "string"
      type = "string"
    }
    properties = {
      additionalCapabilities = {
        hibernationEnabled = bool
        ultraSSDEnabled = bool
      }
      applicationProfile = {
        galleryApplications = [
          {
            configurationReference = "string"
            order = int
            packageReferenceId = "string"
            tags = "string"
          }
        ]
      }
      availabilitySet = {
        id = "string"
      }
      billingProfile = {
        maxPrice = int
      }
      capacityReservation = {
        capacityReservationGroup = {
          id = "string"
        }
      }
      diagnosticsProfile = {
        bootDiagnostics = {
          enabled = bool
          storageUri = "string"
        }
      }
      evictionPolicy = "string"
      extensionsTimeBudget = "string"
      hardwareProfile = {
        vmSize = "string"
        vmSizeProperties = {
          vCPUsAvailable = int
          vCPUsPerCore = int
        }
      }
      host = {
        id = "string"
      }
      hostGroup = {
        id = "string"
      }
      licenseType = "string"
      networkProfile = {
        networkApiVersion = "string"
        networkInterfaceConfigurations = [
          {
            name = "string"
            properties = {
              deleteOption = "string"
              dnsSettings = {
                dnsServers = [
                  "string"
                ]
              }
              dscpConfiguration = {
                id = "string"
              }
              enableAcceleratedNetworking = bool
              enableFpga = bool
              enableIPForwarding = bool
              ipConfigurations = [
                {
                  name = "string"
                  properties = {
                    applicationGatewayBackendAddressPools = [
                      {
                        id = "string"
                      }
                    ]
                    applicationSecurityGroups = [
                      {
                        id = "string"
                      }
                    ]
                    loadBalancerBackendAddressPools = [
                      {
                        id = "string"
                      }
                    ]
                    primary = bool
                    privateIPAddressVersion = "string"
                    publicIPAddressConfiguration = {
                      name = "string"
                      properties = {
                        deleteOption = "string"
                        dnsSettings = {
                          domainNameLabel = "string"
                        }
                        idleTimeoutInMinutes = int
                        ipTags = [
                          {
                            ipTagType = "string"
                            tag = "string"
                          }
                        ]
                        publicIPAddressVersion = "string"
                        publicIPAllocationMethod = "string"
                        publicIPPrefix = {
                          id = "string"
                        }
                      }
                      sku = {
                        name = "string"
                        tier = "string"
                      }
                    }
                    subnet = {
                      id = "string"
                    }
                  }
                }
              ]
              networkSecurityGroup = {
                id = "string"
              }
              primary = bool
            }
          }
        ]
        networkInterfaces = [
          {
            id = "string"
            properties = {
              deleteOption = "string"
              primary = bool
            }
          }
        ]
      }
      osProfile = {
        adminPassword = "string"
        adminUsername = "string"
        allowExtensionOperations = bool
        computerName = "string"
        customData = "string"
        linuxConfiguration = {
          disablePasswordAuthentication = bool
          patchSettings = {
            assessmentMode = "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
          patchSettings = {
            assessmentMode = "string"
            enableHotpatching = bool
            patchMode = "string"
          }
          provisionVMAgent = bool
          timeZone = "string"
          winRM = {
            listeners = [
              {
                certificateUrl = "string"
                protocol = "string"
              }
            ]
          }
        }
      }
      platformFaultDomain = int
      priority = "string"
      proximityPlacementGroup = {
        id = "string"
      }
      scheduledEventsProfile = {
        terminateNotificationProfile = {
          enable = bool
          notBeforeTimeout = "string"
        }
      }
      securityProfile = {
        encryptionAtHost = bool
        securityType = "string"
        uefiSettings = {
          secureBootEnabled = bool
          vTpmEnabled = bool
        }
      }
      storageProfile = {
        dataDisks = [
          {
            caching = "string"
            createOption = "string"
            deleteOption = "string"
            detachOption = "string"
            diskSizeGB = int
            image = {
              uri = "string"
            }
            lun = int
            managedDisk = {
              diskEncryptionSet = {
                id = "string"
              }
              id = "string"
              securityProfile = {
                diskEncryptionSet = {
                  id = "string"
                }
                securityEncryptionType = "string"
              }
              storageAccountType = "string"
            }
            name = "string"
            toBeDetached = bool
            vhd = {
              uri = "string"
            }
            writeAcceleratorEnabled = bool
          }
        ]
        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
          encryptionSettings = {
            diskEncryptionKey = {
              secretUrl = "string"
              sourceVault = {
                id = "string"
              }
            }
            enabled = bool
            keyEncryptionKey = {
              keyUrl = "string"
              sourceVault = {
                id = "string"
              }
            }
          }
          image = {
            uri = "string"
          }
          managedDisk = {
            diskEncryptionSet = {
              id = "string"
            }
            id = "string"
            securityProfile = {
              diskEncryptionSet = {
                id = "string"
              }
              securityEncryptionType = "string"
            }
            storageAccountType = "string"
          }
          name = "string"
          osType = "string"
          vhd = {
            uri = "string"
          }
          writeAcceleratorEnabled = bool
        }
      }
      userData = "string"
      virtualMachineScaleSet = {
        id = "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”

ApplicationProfile

名字 描述 价值
galleryApplications 指定应提供给 VM/VMSS 的库应用程序 VMGalleryApplication[]

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

DataDisk

名字 描述 价值
缓存 指定缓存要求。

可能的值包括:



ReadOnly

ReadWrite

默认值:标准存储 None。高级存储的 ReadOnly
“None”
“ReadOnly”
“ReadWrite”
createOption 指定应如何创建虚拟机。

可能的值包括:

附加 \u2013 使用专用磁盘创建虚拟机时,将使用此值。

FromImage \u2013 使用映像创建虚拟机时使用此值。 如果使用平台映像,则还使用上述 imageReference 元素。 如果使用市场映像,则还会使用前面所述的计划元素。
“Attach”
“Empty”
“FromImage”(必需)
deleteOption 指定在删除 VM 时是否应删除或分离数据磁盘。

可能的值:

删除 如果使用此值,则删除 VM 时删除数据磁盘。

分离 如果使用此值,则在删除 VM 后保留数据磁盘。

默认值设置为 分离
“Delete”
“Detach”
detachOption 指定要在分离磁盘时使用的分离行为,或者已在从虚拟机分离过程中使用。 支持的值:ForceDetach

detachOption:ForceDetach 仅适用于托管数据磁盘。 如果以前由于虚拟机意外故障而未完成数据磁盘的分离尝试,并且磁盘仍未释放,则使用强制分离作为最后手段选项从 VM 强行分离磁盘。 使用此分离行为时,可能不会刷新所有写入。

此功能仍处于预览模式,VirtualMachineScaleSet 不支持此功能。 若要强制分离数据磁盘更新到BeDetached 到“true”,以及设置 detachOption:“ForceDetach”。
“ForceDetach”
diskSizeGB 指定空数据磁盘的大小(以 GB 为单位)。 此元素可用于覆盖虚拟机映像中的磁盘大小。

此值不能大于 1023 GB
int
图像 源用户映像虚拟硬盘。 在附加到虚拟机之前,将复制虚拟硬盘。 如果提供了 SourceImage,则目标虚拟硬盘驱动器不得存在。 VirtualHardDisk
指定数据磁盘的逻辑单元号。 此值用于标识 VM 中的数据磁盘,因此对于附加到 VM 的每个数据磁盘必须是唯一的。 int (必需)
managedDisk 托管磁盘参数。 ManagedDiskParameters
名字 磁盘名称。 字符串
toBeDetached 指定数据磁盘是否正在从 VirtualMachine/VirtualMachineScaleset 分离 bool
vhd 虚拟硬盘。 VirtualHardDisk
writeAcceleratorEnabled 指定是应在磁盘上启用或禁用 writeAccelerator。 bool

DiagnosticsProfile

名字 描述 价值
bootDiagnostics 启动诊断是一项调试功能,可用于查看控制台输出和屏幕截图来诊断 VM 状态。
注意:如果指定 storageUri,请确保存储帐户与 VM 位于同一区域和订阅中。

可以轻松查看控制台日志的输出。

通过 Azure,还可以从虚拟机监控程序查看 VM 的屏幕截图。
BootDiagnostics

DiffDiskSettings

名字 描述 价值
选择 指定操作系统磁盘的临时磁盘设置。 “Local”
放置 指定操作系统磁盘的临时磁盘放置。

可能的值包括:

CacheDisk

ResourceDisk

默认值:如果为 VM 大小配置了缓存磁盘,则 CacheDisk,否则使用 resourceDisk

请参阅 /azure/virtual-machines/windows/size 和 /azure/virtual-machines/linux/size 上的 Windows VM 的 VM 大小文档,以检查哪些 VM 大小公开缓存磁盘。
“CacheDisk”
“ResourceDisk”

DiskEncryptionSetParameters

名字 描述 价值
id 资源 ID 字符串

DiskEncryptionSettings

名字 描述 价值
diskEncryptionKey 指定磁盘加密密钥的位置,该密钥是 Key Vault 机密。 KeyVaultSecretReference
启用 指定是否应在虚拟机上启用磁盘加密。 bool
keyEncryptionKey 指定 Key Vault 中密钥加密密钥的位置。 KeyVaultKeyReference

ExtendedLocation

名字 描述 价值
名字 扩展位置的名称。 字符串
类型 扩展位置的类型。 “EdgeZone”

HardwareProfile

名字 描述 价值
vmSize 指定虚拟机的大小。

枚举数据类型当前已弃用,将于 2023 年 12 月 23 日删除。

获取可用大小列表的建议方法是使用以下 API:

列出可用性集中的所有可用虚拟机大小

列出区域中所有可用的虚拟机大小

列出用于调整大小的所有可用虚拟机大小。 有关虚拟机大小的详细信息,请参阅虚拟机大小。

可用的 VM 大小取决于区域和可用性集。
“Basic_A0”
“Basic_A1”
“Basic_A2”
“Basic_A3”
“Basic_A4”
“Standard_A0”
“Standard_A1”
“Standard_A10”
“Standard_A11”
“Standard_A1_v2”
“Standard_A2”
“Standard_A2m_v2”
“Standard_A2_v2”
“Standard_A3”
“Standard_A4”
“Standard_A4m_v2”
“Standard_A4_v2”
“Standard_A5”
“Standard_A6”
“Standard_A7”
“Standard_A8”
“Standard_A8m_v2”
“Standard_A8_v2”
“Standard_A9”
“Standard_B1ms”
“Standard_B1s”
“Standard_B2ms”
“Standard_B2s”
“Standard_B4ms”
“Standard_B8ms”
“Standard_D1”
“Standard_D11”
“Standard_D11_v2”
“Standard_D12”
“Standard_D12_v2”
“Standard_D13”
“Standard_D13_v2”
“Standard_D14”
“Standard_D14_v2”
“Standard_D15_v2”
“Standard_D16s_v3”
“Standard_D16_v3”
“Standard_D1_v2”
“Standard_D2”
“Standard_D2s_v3”
“Standard_D2_v2”
“Standard_D2_v3”
“Standard_D3”
“Standard_D32s_v3”
“Standard_D32_v3”
“Standard_D3_v2”
“Standard_D4”
“Standard_D4s_v3”
“Standard_D4_v2”
“Standard_D4_v3”
“Standard_D5_v2”
“Standard_D64s_v3”
“Standard_D64_v3”
“Standard_D8s_v3”
“Standard_D8_v3”
“Standard_DS1”
“Standard_DS11”
“Standard_DS11_v2”
“Standard_DS12”
“Standard_DS12_v2”
“Standard_DS13”
“Standard_DS13-2_v2”
“Standard_DS13-4_v2”
“Standard_DS13_v2”
“Standard_DS14”
“Standard_DS14-4_v2”
“Standard_DS14-8_v2”
“Standard_DS14_v2”
“Standard_DS15_v2”
“Standard_DS1_v2”
“Standard_DS2”
“Standard_DS2_v2”
“Standard_DS3”
“Standard_DS3_v2”
“Standard_DS4”
“Standard_DS4_v2”
“Standard_DS5_v2”
“Standard_E16s_v3”
“Standard_E16_v3”
“Standard_E2s_v3”
“Standard_E2_v3”
“Standard_E32-16_v3”
“Standard_E32-8s_v3”
“Standard_E32s_v3”
“Standard_E32_v3”
“Standard_E4s_v3”
“Standard_E4_v3”
“Standard_E64-16s_v3”
“Standard_E64-32s_v3”
“Standard_E64s_v3”
“Standard_E64_v3”
“Standard_E8s_v3”
“Standard_E8_v3”
“Standard_F1”
“Standard_F16”
“Standard_F16s”
“Standard_F16s_v2”
“Standard_F1s”
“Standard_F2”
“Standard_F2s”
“Standard_F2s_v2”
“Standard_F32s_v2”
“Standard_F4”
“Standard_F4s”
“Standard_F4s_v2”
“Standard_F64s_v2”
“Standard_F72s_v2”
“Standard_F8”
“Standard_F8s”
“Standard_F8s_v2”
“Standard_G1”
“Standard_G2”
“Standard_G3”
“Standard_G4”
“Standard_G5”
“Standard_GS1”
“Standard_GS2”
“Standard_GS3”
“Standard_GS4”
“Standard_GS4-4”
“Standard_GS4-8”
“Standard_GS5”
“Standard_GS5-16”
“Standard_GS5-8”
“Standard_H16”
“Standard_H16m”
“Standard_H16mr”
“Standard_H16r”
“Standard_H8”
“Standard_H8m”
“Standard_L16s”
“Standard_L32s”
“Standard_L4s”
“Standard_L8s”
“Standard_M128-32ms”
“Standard_M128-64ms”
“Standard_M128ms”
“Standard_M128s”
“Standard_M64-16ms”
“Standard_M64-32ms”
“Standard_M64ms”
“Standard_M64s”
“Standard_NC12”
“Standard_NC12s_v2”
“Standard_NC12s_v3”
“Standard_NC24”
“Standard_NC24r”
“Standard_NC24rs_v2”
“Standard_NC24rs_v3”
“Standard_NC24s_v2”
“Standard_NC24s_v3”
“Standard_NC6”
“Standard_NC6s_v2”
“Standard_NC6s_v3”
“Standard_ND12s”
“Standard_ND24rs”
“Standard_ND24s”
“Standard_ND6s”
“Standard_NV12”
“Standard_NV24”
“Standard_NV6”
vmSizeProperties 指定用于自定义虚拟机大小的属性。 最低 API 版本:2021-07-01。

此功能仍处于预览模式,VirtualMachineScaleSet 不支持此功能。

有关详细信息,请按照 VM 自定义 中的说明进行操作。
VMSizeProperties

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}”,而不输入版本。 字符串

KeyVaultKeyReference

名字 描述 价值
keyUrl 引用 Key Vault 中的密钥加密密钥的 URL。 string (必需)
sourceVault 包含密钥的 Key Vault 的相对 URL。 SubResource (必需)

KeyVaultSecretReference

名字 描述 价值
secretUrl 引用 Key Vault 中的机密的 URL。 string (必需)
sourceVault 包含机密的 Key Vault 的相对 URL。 SubResource (必需)

LinuxConfiguration

名字 描述 价值
disablePasswordAuthentication 指定是否应禁用密码身份验证。 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”
patchMode 指定 VM 来宾修补到 IaaS 虚拟机的模式,或与将 OrchestrationMode 作为灵活业务流程模式的虚拟机规模集关联的虚拟机。

可能的值包括:

ImageDefault - 使用虚拟机的默认修补配置。

AutomaticByPlatform - 虚拟机将由平台自动更新。 属性 provisionVMAgent 必须为 true
“AutomaticByPlatform”
“ImageDefault”

ManagedDiskParameters

名字 描述 价值
diskEncryptionSet 指定托管磁盘的客户托管磁盘加密集资源 ID。 DiskEncryptionSetParameters
id 资源 ID 字符串
securityProfile 指定托管磁盘的安全配置文件。 VMDiskSecurityProfile
storageAccountType 指定托管磁盘的存储帐户类型。 注意:UltraSSD_LRS只能与数据磁盘一起使用,它不能与 OS 磁盘一起使用。 “Premium_LRS”
“Premium_ZRS”
“StandardSSD_LRS”
“StandardSSD_ZRS”
“Standard_LRS”
“UltraSSD_LRS”

Microsoft.Compute/virtualMachines

名字 描述 价值
extendedLocation 虚拟机的扩展位置。 ExtendedLocation
身份 虚拟机的标识(如果已配置)。 VirtualMachineIdentity
位置 资源位置 string (必需)
名字 资源名称 string (必需)
计划 指定有关用于创建虚拟机的市场映像的信息。 此元素仅用于市场映像。 必须先启用映像以编程方式使用映像,然后才能从 API 使用市场映像。 在 Azure 门户中,找到要使用的市场映像,然后单击 想要以编程方式部署,开始使用 ->。 输入任何必需的信息,然后单击“保存 计划
性能 描述虚拟机的属性。 VirtualMachineProperties
标签 资源标记 标记名称和值的字典。
类型 资源类型 “Microsoft.Compute/virtualMachines@2021-11-01”
虚拟机区域。 string[]

NetworkInterfaceReference

名字 描述 价值
id 资源 ID 字符串
性能 描述网络接口引用属性。 NetworkInterfaceReferenceProperties

NetworkInterfaceReferenceProperties

名字 描述 价值
deleteOption 指定删除 VM 时网络接口发生的情况 “Delete”
“Detach”
主要 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 bool

NetworkProfile

名字 描述 价值
networkApiVersion 指定在网络接口配置中创建网络资源时使用的 Microsoft.Network API 版本 '2020-11-01'
networkInterfaceConfigurations 指定将用于创建虚拟机网络资源的网络配置。 VirtualMachineNetworkInterfaceConfiguration[]
networkInterfaces 指定与虚拟机关联的网络接口的资源 ID 列表。 NetworkInterfaceReference[]

OSDisk

名字 描述 价值
缓存 指定缓存要求。

可能的值包括:



ReadOnly

ReadWrite

默认值:标准存储 高级存储的 ReadOnly
“None”
“ReadOnly”
“ReadWrite”
createOption 指定应如何创建虚拟机。

可能的值包括:

附加 \u2013 使用专用磁盘创建虚拟机时,将使用此值。

FromImage \u2013 使用映像创建虚拟机时使用此值。 如果使用平台映像,则还使用上述 imageReference 元素。 如果使用市场映像,则还会使用前面所述的计划元素。
“Attach”
“Empty”
“FromImage”(必需)
deleteOption 指定在删除 VM 时是否应删除或分离 OS 磁盘。

可能的值:

删除 如果使用此值,则会在删除 VM 时删除 OS 磁盘。

分离 如果使用此值,则在删除 VM 后将保留 os 磁盘。

默认值设置为 分离。 对于临时 OS 磁盘,默认值设置为 删除。 用户无法更改临时 OS 磁盘的删除选项。
“Delete”
“Detach”
diffDiskSettings 指定虚拟机使用的操作系统磁盘的临时磁盘设置。 DiffDiskSettings
diskSizeGB 指定空数据磁盘的大小(以 GB 为单位)。 此元素可用于覆盖虚拟机映像中的磁盘大小。

此值不能大于 1023 GB
int
encryptionSettings 指定 OS 磁盘的加密设置。

最低 API 版本:2015-06-15
DiskEncryptionSettings
图像 源用户映像虚拟硬盘。 在附加到虚拟机之前,将复制虚拟硬盘。 如果提供了 SourceImage,则目标虚拟硬盘驱动器不得存在。 VirtualHardDisk
managedDisk 托管磁盘参数。 ManagedDiskParameters
名字 磁盘名称。 字符串
osType 此属性允许指定从用户映像或专用 VHD 创建 VM 时磁盘中包含的 OS 类型。

可能的值包括:

Windows

Linux
“Linux”
“Windows”
vhd 虚拟硬盘。 VirtualHardDisk
writeAcceleratorEnabled 指定是应在磁盘上启用或禁用 writeAccelerator。 bool

OSProfile

名字 描述 价值
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 指定管理员帐户的名称。

创建 VM 后,无法更新此属性。

仅限 Windows 的限制: 不能以“.” 结尾。

不允许的值: “administrator”、“admin”、“user1”、“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
computerName 指定虚拟机的主机 OS 名称。

创建 VM 后,无法更新此名称。

最大长度(Windows): 15 个字符

最大长度(Linux): 64 个字符。

有关命名约定和限制,请参阅 Azure 基础结构服务实现指南
字符串
customData 指定自定义数据的 base-64 编码字符串。 base-64 编码字符串将解码为作为虚拟机上的文件保存的二进制数组。 二进制数组的最大长度为 65535 字节。

注意:不要在 customData 属性中传递任何机密或密码

创建 VM 后,无法更新此属性。

customData 将传递给要另存为文件的 VM,有关详细信息,请参阅 Azure VM 上的自定义数据

有关将 cloud-init 用于 Linux VM,请参阅 使用 cloud-init 在创建期间自定义 Linux VM
字符串
linuxConfiguration 指定虚拟机上的 Linux 操作系统设置。

有关受支持的 Linux 分发版的列表,请参阅 Azure-Endorsed 分发版上的 Linux
LinuxConfiguration
requireGuestProvisionSignal 必须设置为 True 或省略的可选属性。 bool
秘密 指定应安装在虚拟机上的证书集。 若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 WindowsAzure 密钥库 虚拟机扩展。 VaultSecretGroup[]
windowsConfiguration 指定虚拟机上的 Windows 操作系统设置。 WindowsConfiguration

PatchSettings

名字 描述 价值
assessmentMode 指定 IaaS 虚拟机的 VM 来宾修补程序评估模式。

可能的值包括:

ImageDefault - 控制虚拟机上的修补程序评估的时间。

AutomaticByPlatform - 平台将触发定期修补评估。 属性 provisionVMAgent 必须为 true。
“AutomaticByPlatform”
“ImageDefault”
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。 字符串

PublicIPAddressSku

名字 描述 价值
名字 指定公共 IP SKU 名称 “Basic”
“Standard”
指定公共 IP SKU 层 “Global”
“区域”

ResourceTags

名字 描述 价值

ScheduledEventsProfile

名字 描述 价值
terminateNotificationProfile 指定终止计划事件相关配置。 TerminateNotificationProfile

SecurityProfile

名字 描述 价值
encryptionAtHost 用户可以在请求中使用此属性来启用或禁用虚拟机或虚拟机规模集的主机加密。 这将为所有磁盘启用加密,包括主机本身的资源/临时磁盘。

默认值:除非将此属性设置为 true,否则将禁用主机上的加密。
bool
securityType 指定虚拟机的 SecurityType。 必须将其设置为任何指定值才能启用 UefiSettings。

默认值:除非设置了此属性,否则不会启用 UefiSettings。
“ConfidentialVM”
“TrustedLaunch”
uefiSettings 指定在创建虚拟机时使用的安全启动和 vTPM 等安全设置。

最低 API 版本:2020-12-01
UefiSettings

SshConfiguration

名字 描述 价值
publicKeys 用于通过基于 Linux 的 VM 进行身份验证的 SSH 公钥列表。 SshPublicKey[]

SshPublicKey

名字 描述 价值
keyData 用于通过 ssh 向 VM 进行身份验证的 SSH 公钥证书。 密钥必须至少为 2048 位且采用 ssh-rsa 格式。

有关创建 ssh 密钥,请参阅 在 Azure中的 Linux 和 Mac 上为 Linux VM 创建 SSH 密钥。
字符串
路径 指定存储 ssh 公钥的已创建 VM 上的完整路径。 如果文件已存在,则指定的键将追加到该文件中。 示例:/home/user/.ssh/authorized_keys 字符串

StorageProfile

名字 描述 价值
dataDisks 指定用于向虚拟机添加数据磁盘的参数。

有关磁盘的详细信息,请参阅 关于 Azure 虚拟机的磁盘和 VHD
DataDisk[]
imageReference 指定要使用的图像的信息。 可以指定有关平台映像、市场映像或虚拟机映像的信息。 若要使用平台映像、市场映像或虚拟机映像,但不在其他创建操作中使用,则需要此元素。 ImageReference
osDisk 指定有关虚拟机使用的操作系统磁盘的信息。

有关磁盘的详细信息,请参阅 关于 Azure 虚拟机的磁盘和 VHD
OSDisk

SubResource

名字 描述 价值
id 资源 ID 字符串

TerminateNotificationProfile

名字 描述 价值
使 指定是启用或禁用终止计划事件。 bool
notBeforeTimeout 删除虚拟机的可配置时间长度可能需要在事件自动批准(超时)之前批准终止计划事件。 必须以 ISO 8601 格式指定配置,默认值为 5 分钟(PT5M) 字符串

UefiSettings

名字 描述 价值
secureBootEnabled 指定是否应在虚拟机上启用安全启动。

最低 API 版本:2020-12-01
bool
vTpmEnabled 指定是否应在虚拟机上启用 vTPM。

最低 API 版本:2020-12-01
bool

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 密钥库 虚拟机扩展或适用于 WindowsAzure 密钥库 虚拟机扩展。
字符串

VaultSecretGroup

名字 描述 价值
sourceVault Key Vault 的相对 URL,其中包含 VaultCertificates 中的所有证书。 SubResource
vaultCertificates SourceVault 中包含证书的密钥保管库引用列表。 VaultCertificate[]

VirtualHardDisk

名字 描述 价值
uri 指定虚拟硬盘的 URI。 字符串

VirtualMachineIdentity

名字 描述 价值
类型 用于虚拟机的标识类型。 类型“SystemAssigned,UserAssigned”包括隐式创建的标识和一组用户分配的标识。 类型“None”将从虚拟机中删除任何标识。 “None”
“SystemAssigned”
“SystemAssigned,UserAssigned”
“UserAssigned”
userAssignedIdentities 与虚拟机关联的用户标识列表。 用户标识字典密钥引用的格式为 ARM 资源 ID:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。 VirtualMachineIdentityUserAssignedIdentities

VirtualMachineIdentityUserAssignedIdentities

名字 描述 价值

VirtualMachineIpTag

名字 描述 价值
ipTagType IP 标记类型。 示例:FirstPartyUsage。 字符串
标记 与公共 IP 关联的 IP 标记。 示例:SQL、存储等。 字符串

VirtualMachineNetworkInterfaceConfiguration

名字 描述 价值
名字 网络接口配置名称。 string (必需)
性能 描述虚拟机网络配置文件的 IP 配置。 VirtualMachineNetworkInterfaceConfigurationProperties

VirtualMachineNetworkInterfaceConfigurationProperties

名字 描述 价值
deleteOption 指定删除 VM 时网络接口发生的情况 “Delete”
“Detach”
dnsSettings 要应用于网络接口的 dns 设置。 VirtualMachineNetworkInterfaceDnsSettingsConfiguration
dscpConfiguration SubResource
enableAcceleratedNetworking 指定网络接口是否已启用加速网络。 bool
enableFpga 指定网络接口是否已启用 FPGA 网络。 bool
enableIPForwarding 是否在此 NIC 上启用了 IP 转发。 bool
ipConfigurations 指定网络接口的 IP 配置。 VirtualMachineNetworkInterfaceIPConfiguration[] (必需)
networkSecurityGroup 网络安全组。 SubResource
主要 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 bool

VirtualMachineNetworkInterfaceDnsSettingsConfiguration

名字 描述 价值
dnsServers DNS 服务器 IP 地址列表 string[]

VirtualMachineNetworkInterfaceIPConfiguration

名字 描述 价值
名字 IP 配置名称。 string (必需)
性能 描述虚拟机网络接口 IP 配置属性。 VirtualMachineNetworkInterfaceIPConfigurationProperties

VirtualMachineNetworkInterfaceIPConfigurationProperties

名字 描述 价值
applicationGatewayBackendAddressPools 指定对应用程序网关后端地址池的引用数组。 虚拟机可以引用多个应用程序网关的后端地址池。 多个虚拟机不能使用相同的应用程序网关。 SubResource[]
applicationSecurityGroups 指定对应用程序安全组的引用数组。 SubResource[]
loadBalancerBackendAddressPools 指定对负载均衡器后端地址池的引用数组。 虚拟机可以引用一个公共负载均衡器和一个内部负载均衡器的后端地址池。 [多个虚拟机不能使用相同的基本 SKU 负载均衡器]。 SubResource[]
主要 指定主网络接口,以防虚拟机具有 1 个以上的网络接口。 bool
privateIPAddressVersion 从 Api-Version 2017-03-30 开始提供,它表示特定 ipconfiguration 是 IPv4 还是 IPv6。 默认值被视为 IPv4。 可能的值为:“IPv4”和“IPv6”。 “IPv4”
“IPv6”
publicIPAddressConfiguration publicIPAddressConfiguration。 VirtualMachinePublicIPAddressConfiguration
指定子网的标识符。 SubResource

VirtualMachineProperties

名字 描述 价值
additionalCapabilities 指定在虚拟机上启用或禁用的其他功能。 AdditionalCapabilities
applicationProfile 指定应提供给 VM/VMSS 的库应用程序 ApplicationProfile
availabilitySet 指定应将虚拟机分配到的可用性集的相关信息。 在同一可用性集中指定的虚拟机分配给不同的节点,以最大程度地提高可用性。 有关可用性集的详细信息,请参阅 可用性集概述

有关 Azure 计划内维护的详细信息,请参阅 Azure 中虚拟机的 维护和更新

目前,只能在创建时将 VM 添加到可用性集。 要向其添加 VM 的可用性集应与可用性集资源位于同一资源组下。 无法将现有 VM 添加到可用性集。

此属性不能与非 null properties.virtualMachineScaleSet 引用一起存在。
SubResource
billingProfile 指定 Azure 现成虚拟机的计费相关详细信息。

最低 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”
extensionsTimeBudget 指定分配所有扩展开始的时间。 持续时间应介于 15 分钟到 120 分钟(含)之间,应采用 ISO 8601 格式指定。 默认值为 90 分钟(PT1H30M)。

最低 API 版本:2020-06-01
字符串
hardwareProfile 指定虚拟机的硬件设置。 HardwareProfile
主机 指定虚拟机所在的专用主机的相关信息。

最低 API 版本:2018-10-01。
SubResource
hostGroup 指定有关虚拟机所在的专用主机组的信息。

最低 API 版本:2020-06-01。

注意:用户不能同时指定主机和 hostGroup 属性。
SubResource
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 指定虚拟机的网络接口。 NetworkProfile
osProfile 指定创建虚拟机时使用的操作系统设置。 预配 VM 后,无法更改某些设置。 OSProfile
platformFaultDomain 指定要在其中创建虚拟机的规模集逻辑容错域。 默认情况下,虚拟机将自动分配给容错域,该容错域最适合跨可用容错域保持平衡。
<li>仅当设置了此虚拟机的“virtualMachineScaleSet”属性时,此选项才适用。<li>引用的虚拟机规模集必须具有“platformFaultDomainCount”> 1。<li>创建虚拟机后无法更新此属性。<li>容错域分配可以在虚拟机实例视图中查看。

最低 api 版本:2020-12?01
int
优先权 指定虚拟机的优先级。

最低 API 版本:2019-03-01
“Low”
“Regular”
“Spot”
proximityPlacementGroup 指定应将虚拟机分配到的邻近放置组的相关信息。

最低 api 版本:2018-04-01。
SubResource
scheduledEventsProfile 指定与计划事件相关的配置。 ScheduledEventsProfile
securityProfile 指定虚拟机的安全相关配置文件设置。 SecurityProfile
storageProfile 指定虚拟机磁盘的存储设置。 StorageProfile
userData VM 的 UserData(必须进行 base-64 编码)。 客户不应在此处传递任何机密。

最低 API 版本:2021-03-01
字符串
virtualMachineScaleSet 指定应向其分配虚拟机规模集的信息。 在同一虚拟机规模集中指定的虚拟机分配给不同的节点,以最大程度地提高可用性。 目前,只能在创建时将 VM 添加到虚拟机规模集。 无法将现有 VM 添加到虚拟机规模集。

此属性不能与非 null properties.availabilitySet 引用一起存在。

最低 api-version: 2019-03?01
SubResource

VirtualMachinePublicIPAddressConfiguration

名字 描述 价值
名字 publicIP 地址配置名称。 string (必需)
性能 介绍虚拟机 IP 配置的公共 IPAddress 配置 VirtualMachinePublicIPAddressConfigurationProperties
sku 描述公共 IP Sku。 只能将 OrchestrationMode 设置为灵活。 PublicIPAddressSku

VirtualMachinePublicIPAddressConfigurationProperties

名字 描述 价值
deleteOption 指定删除 VM 时公共 IP 地址发生的情况 “Delete”
“Detach”
dnsSettings 要应用于 publicIP 地址的 dns 设置。 VirtualMachinePublicIPAddressDnsSettingsConfiguration
idleTimeoutInMinutes 公共 IP 地址的空闲超时。 int
ipTags 与公共 IP 地址关联的 IP 标记列表。 VirtualMachineIpTag[]
publicIPAddressVersion 从 Api-Version 2019-07-01 开始提供,它表示特定 ipconfiguration 是 IPv4 还是 IPv6。 默认值被视为 IPv4。 可能的值为:“IPv4”和“IPv6”。 “IPv4”
“IPv6”
publicIPAllocationMethod 指定公共 IP 分配类型 “Dynamic”
“Static”
publicIPPrefix 要从中分配 publicIP 地址的 PublicIPPrefix。 SubResource

VirtualMachinePublicIPAddressDnsSettingsConfiguration

名字 描述 价值
domainNameLabel 将创建的 PublicIPAddress 资源的域名标签前缀。 生成的名称标签是域名标签和 vm 网络配置文件唯一 ID 的串联。 string (必需)

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 将替换包的默认配置(如果提供) 字符串
次序 可选,指定包必须安装的顺序 int
packageReferenceId 指定 /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/applications/{application}/versions/{version} 形式的 GalleryApplicationVersion 资源 ID string (必需)
标签 可选,指定更多泛型上下文的传递值。 字符串

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
patchSettings [预览功能]指定与 Windows 上的 VM 来宾修补相关的设置。 PatchSettings
provisionVMAgent 指示是否应在虚拟机上预配虚拟机代理。

如果未在请求正文中指定此属性,则默认行为是将其设置为 true。 这将确保 VM 代理安装在 VM 上,以便以后可以向 VM 添加扩展。
bool
timeZone 指定虚拟机的时区。 例如“太平洋标准时间”。

可能的值可以从 TimeZoneInfo.GetSystemTimeZones返回的时区 TimeZoneInfo.Id 值。
字符串
winRM 指定 Windows 远程管理侦听器。 这将启用远程 Windows PowerShell。 WinRMConfiguration

WinRMConfiguration

名字 描述 价值
听众 Windows 远程管理侦听器列表 WinRMListener[]

WinRMListener

名字 描述 价值
certificateUrl 这是已作为机密上传到 Key Vault 的证书的 URL。 若要将机密添加到 Key Vault,请参阅 向密钥保管库添加密钥或机密。 在这种情况下,证书必须是以下 JSON 对象的 Base64 编码,该对象在 UTF-8 中编码:

{
“data”:“<Base64 编码的证书>”,
“dataType”:“pfx”,
“password”:“<pfx-file-password>”
}
若要在虚拟机上安装证书,建议使用适用于 Linux 的 Azure 密钥库 虚拟机扩展或适用于 WindowsAzure 密钥库 虚拟机扩展。
字符串
协议 指定 WinRM 侦听器的协议。

可能的值包括:
http

https
“Http”
“Https”