共用方式為


Microsoft.Compute virtualMachineScaleSets/virtualmachines 2021-04-01

Bicep 資源定義

virtualMachineScaleSets/virtualmachines 資源類型可以使用目標作業來部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄

資源格式

若要建立 Microsoft.Compute/virtualMachineScaleSets/virtualmachines 資源,請將下列 Bicep 新增至您的範本。

resource symbolicname 'Microsoft.Compute/virtualMachineScaleSets/virtualmachines@2021-04-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  parent: resourceSymbolicName
  plan: {
    name: 'string'
    product: 'string'
    promotionCode: 'string'
    publisher: 'string'
  }
  properties: {
    additionalCapabilities: {
      ultraSSDEnabled: bool
    }
    availabilitySet: {
      id: 'string'
    }
    diagnosticsProfile: {
      bootDiagnostics: {
        enabled: bool
        storageUri: 'string'
      }
    }
    hardwareProfile: {
      vmSize: 'string'
    }
    licenseType: 'string'
    networkProfile: {
      networkApiVersion: '2020-11-01'
      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
          }
        }
      ]
    }
    networkProfileConfiguration: {
      networkInterfaceConfigurations: [
        {
          id: 'string'
          name: 'string'
          properties: {
            deleteOption: 'string'
            dnsSettings: {
              dnsServers: [
                'string'
              ]
            }
            enableAcceleratedNetworking: bool
            enableFpga: bool
            enableIPForwarding: bool
            ipConfigurations: [
              {
                id: 'string'
                name: 'string'
                properties: {
                  applicationGatewayBackendAddressPools: [
                    {
                      id: 'string'
                    }
                  ]
                  applicationSecurityGroups: [
                    {
                      id: 'string'
                    }
                  ]
                  loadBalancerBackendAddressPools: [
                    {
                      id: 'string'
                    }
                  ]
                  loadBalancerInboundNatPools: [
                    {
                      id: 'string'
                    }
                  ]
                  primary: bool
                  privateIPAddressVersion: 'string'
                  publicIPAddressConfiguration: {
                    name: 'string'
                    properties: {
                      deleteOption: 'string'
                      dnsSettings: {
                        domainNameLabel: 'string'
                      }
                      idleTimeoutInMinutes: int
                      ipTags: [
                        {
                          ipTagType: 'string'
                          tag: 'string'
                        }
                      ]
                      publicIPAddressVersion: 'string'
                      publicIPPrefix: {
                        id: 'string'
                      }
                    }
                    sku: {
                      name: 'string'
                      tier: 'string'
                    }
                  }
                  subnet: {
                    id: 'string'
                  }
                }
              }
            ]
            networkSecurityGroup: {
              id: 'string'
            }
            primary: bool
          }
        }
      ]
    }
    osProfile: {
      adminPassword: 'string'
      adminUsername: 'string'
      allowExtensionOperations: bool
      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'
            }
          ]
        }
      }
    }
    protectionPolicy: {
      protectFromScaleIn: bool
      protectFromScaleSetActions: bool
    }
    securityProfile: {
      encryptionAtHost: bool
      securityType: 'TrustedLaunch'
      uefiSettings: {
        secureBootEnabled: bool
        vTpmEnabled: bool
      }
    }
    storageProfile: {
      dataDisks: [
        {
          caching: 'string'
          createOption: 'string'
          deleteOption: 'string'
          detachOption: 'ForceDetach'
          diskSizeGB: int
          image: {
            uri: 'string'
          }
          lun: int
          managedDisk: {
            diskEncryptionSet: {
              id: 'string'
            }
            id: 'string'
            storageAccountType: 'string'
          }
          name: 'string'
          toBeDetached: bool
          vhd: {
            uri: 'string'
          }
          writeAcceleratorEnabled: bool
        }
      ]
      imageReference: {
        id: 'string'
        offer: 'string'
        publisher: 'string'
        sku: 'string'
        version: 'string'
      }
      osDisk: {
        caching: 'string'
        createOption: 'string'
        deleteOption: 'string'
        diffDiskSettings: {
          option: 'Local'
          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'
          storageAccountType: 'string'
        }
        name: 'string'
        osType: 'string'
        vhd: {
          uri: 'string'
        }
        writeAcceleratorEnabled: bool
      }
    }
    userData: 'string'
  }
}

屬性值

virtualMachineScaleSets/virtualmachines

名稱 描述
NAME 資源名稱

瞭解如何在 Bicep 中設定子資源的名稱和類型。
字串 (必要)
location 資源位置 字串 (必要)
tags 資源標籤 標記名稱和值的字典。 請參閱 範本中的標記
父系 (parent) 在 Bicep 中,您可以指定子資源的父資源。 只有在父資源之外宣告子資源時,才需要新增這個屬性。

如需詳細資訊,請參閱 父資源外部的子資源
類型資源的符號名稱: virtualMachineScaleSets
方案 指定用來建立虛擬機之 Marketplace 映像的相關信息。 此元素僅用於市集映像。 您必須先啟用映像以程序設計方式使用,才能從 API 使用市集映射。 在 Azure 入口網站 中,尋找您想要使用的 Marketplace 映射,然後按兩下 [想要以程式設計方式部署],[開始使用] -> 。 輸入任何必要資訊,然後按兩下 [ 儲存]。 方案
properties 描述虛擬機擴展集虛擬機的屬性。 VirtualMachineScaleSetVMProperties

計畫

名稱 描述
NAME 方案標識碼。 字串
產品 指定市集中映像的產品。 這個值與 imageReference 元素下的 Offer 相同。 字串
promotionCode 促銷碼。 字串
publisher 發行者標識碼。 字串

VirtualMachineScaleSetVMProperties

名稱 描述
additionalCapabilities 指定擴展集中虛擬機上啟用或停用的其他功能。 例如:虛擬機是否能夠支援使用UltraSSD_LRS記憶體帳戶類型鏈接受控數據磁碟。 AdditionalCapabilities
availabilitySet 指定虛擬機應指派給的可用性設定組相關信息。 在相同可用性設定組中指定的虛擬機器會配置到不同的節點,以便將可用性最大化。 如需可用性設定組的詳細資訊,請參閱 可用性設定組概觀

如需 Azure 計劃性維護的詳細資訊,請參閱 Azure 中 虛擬機器 的維護和更新

目前,VM 只能在建立時新增至可用性設定組。 現有的 VM 無法新增至可用性設定組。
SubResource
diagnosticsProfile 指定開機診斷設定狀態。

API 版本下限:2015-06-15。
DiagnosticsProfile
hardwareProfile 指定虛擬機器的硬體設定。 HardwareProfile
licenseType 指定正在使用的映像或磁碟是內部部署授權的。

Windows Server 操作系統的可能值為:

Windows_Client

Windows_Server

Linux Server 操作系統的可能值為:

RHEL) 的 RHEL_BYOS (

SUSE) 的 SLES_BYOS (

如需詳細資訊,請參閱 適用於 Windows Server 的 Azure Hybrid Use Benefit

適用於 Linux Server 的 Azure 混合式使用權益

API 版本下限:2015-06-15
字串
networkProfile 指定虛擬機器的網路介面。 NetworkProfile
networkProfileConfiguration 指定虛擬機的網路配置檔組態。 VirtualMachineScaleSetVMNetworkProfileConfiguration
osProfile 指定虛擬機器的作業系統設定。 OSProfile
protectionPolicy 指定虛擬機的保護原則。 VirtualMachineScaleSetVMProtectionPolicy
securityProfile 指定虛擬機的安全性相關配置檔設定。 SecurityProfile
storageProfile 指定虛擬機器磁碟的儲存體設定。 StorageProfile
userData VM 的 UserData,必須是base-64 編碼。 客戶不應在此傳遞任何秘密。

API 版本下限:2021-03-01
字串

AdditionalCapabilities

名稱 描述
ultraSSDEnabled 旗標,可啟用或停用在 VM 或 VMSS 上具有一或多個具有 UltraSSD_LRS記憶體帳戶類型的受控數據磁碟。 只有啟用此屬性時,才能將具有記憶體帳戶類型的受控磁碟UltraSSD_LRS新增至虛擬機或虛擬機擴展集。 bool

SubResource

名稱 描述
id 資源標識碼 字串

DiagnosticsProfile

名稱 描述
bootDiagnostics 開機診斷是一項偵錯功能,可讓您檢視控制台輸出和螢幕快照來診斷 VM 狀態。

您可以輕鬆地檢視主控台記錄的輸出。

Azure 也可讓您從 Hypervisor 查看 VM 的螢幕快照。
BootDiagnostics

BootDiagnostics

名稱 描述
已啟用 虛擬機上是否應該啟用開機診斷。 bool
storageUri 用來放置主控台輸出和螢幕快照的記憶體帳戶 URI。

如果在啟用開機診斷時未指定 storageUri,則會使用受控記憶體。
字串

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_A2_v2'
'Standard_A2m_v2'
'Standard_A3'
'Standard_A4'
'Standard_A4_v2'
'Standard_A4m_v2'
'Standard_A5'
'Standard_A6'
'Standard_A7'
'Standard_A8'
'Standard_A8_v2'
'Standard_A8m_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_D16_v3'
'Standard_D16s_v3'
'Standard_D1_v2'
'Standard_D2'
'Standard_D2_v2'
'Standard_D2_v3'
'Standard_D2s_v3'
'Standard_D3'
'Standard_D32_v3'
'Standard_D32s_v3'
'Standard_D3_v2'
'Standard_D4'
'Standard_D4_v2'
'Standard_D4_v3'
'Standard_D4s_v3'
'Standard_D5_v2'
'Standard_D64_v3'
'Standard_D64s_v3'
'Standard_D8_v3'
'Standard_D8s_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_E16_v3'
'Standard_E16s_v3'
'Standard_E2_v3'
'Standard_E2s_v3'
'Standard_E32-16_v3'
'Standard_E32-8s_v3'
'Standard_E32_v3'
'Standard_E32s_v3'
'Standard_E4_v3'
'Standard_E4s_v3'
'Standard_E64-16s_v3'
'Standard_E64-32s_v3'
'Standard_E64_v3'
'Standard_E64s_v3'
'Standard_E8_v3'
'Standard_E8s_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'

NetworkProfile

名稱 描述
networkApiVersion 會指定在網路介面組態中建立網路資源時所使用的 Microsoft.Network API 版本 '2020-11-01'
networkInterfaceConfigurations 指定將用來建立虛擬機網路資源的網路設定。 VirtualMachineNetworkInterfaceConfiguration[]
networkInterfaces 指定與虛擬機相關聯之網路介面的資源標識符清單。 NetworkInterfaceReference[]

VirtualMachineNetworkInterfaceConfiguration

名稱 描述
NAME 網路介面組態名稱。 需要字串 ()
properties 描述虛擬機網路配置檔的IP組態。 VirtualMachineNetworkInterfaceConfigurationPropertie...

VirtualMachineNetworkInterfaceConfigurationPropertie...

名稱 描述
deleteOption 指定刪除 VM 時網路介面會發生什麼情況 'Delete'
'Detach'
dnsSettings 要套用在網路介面上的 DNS 設定。 VirtualMachineNetworkInterfaceDnsSettingsConfigurati...
dscpConfiguration SubResource
enableAcceleratedNetworking 指定網路介面是否已啟用加速網路。 bool
enableFpga 指定網路介面是否已啟用 FPGA 網路功能。 bool
enableIPForwarding 是否在此 NIC 上啟用 IP 轉送。 bool
ipConfigurations 指定網路介面的IP組態。 VirtualMachineNetworkInterfaceIPConfiguration[] (必要)
networkSecurityGroup 網路安全組。 SubResource
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool

VirtualMachineNetworkInterfaceDnsSettingsConfigurati...

名稱 描述
dnsServers DNS 伺服器 IP 位址清單 string[]

VirtualMachineNetworkInterfaceIPConfiguration

名稱 描述
NAME IP 組態名稱。 字串 (必要)
properties 描述虛擬機網路介面IP組態屬性。 VirtualMachineNetworkInterfaceIPConfigurationPropert...

VirtualMachineNetworkInterfaceIPConfigurationPropert...

名稱 描述
applicationGatewayBackendAddressPools 指定應用程式閘道後端位址池的參考數位。 虛擬機可以參考多個應用程式閘道的後端位址池。 多部虛擬機無法使用相同的應用程式閘道。 SubResource[]
applicationSecurityGroups 指定應用程式安全組的參考陣列。 SubResource[]
loadBalancerBackendAddressPools 指定負載平衡器後端位址池參考的陣列。 虛擬機可以參考一個公用和一個內部負載平衡器的後端位址池。 [多部虛擬機無法使用相同的基本 SKU 負載平衡器]。 SubResource[]
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool
privateIPAddressVersion 從 Api-Version 2017-03-30 起提供,它代表特定 ipconfiguration 是 IPv4 或 IPv6。 預設值會視為 IPv4。 可能的值為:'IPv4' 和 'IPv6'。 'IPv4'
'IPv6'
publicIPAddressConfiguration publicIPAddressConfiguration。 VirtualMachinePublicIPAddressConfiguration
子網路 指定子網的識別碼。 SubResource

VirtualMachinePublicIPAddressConfiguration

名稱 描述
NAME publicIP 位址組態名稱。 字串 (必要)
properties 描述虛擬機IP組態的PublicIPAddress設定 VirtualMachinePublicIPAddressConfigurationProperties
sku 描述公用IP Sku PublicIPAddressSku

VirtualMachinePublicIPAddressConfigurationProperties

名稱 描述
deleteOption 指定刪除 VM 時,公用 IP 位址會發生什麼情況 'Delete'
'Detach'
dnsSettings 要套用至 publicIP 位址的 DNS 設定。 VirtualMachinePublicIPAddressDnsSettingsConfiguratio...
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

VirtualMachinePublicIPAddressDnsSettingsConfiguratio...

名稱 描述
domainNameLabel 將建立之 PublicIPAddress 資源的功能變數名稱標籤前置詞。 產生的名稱標籤是功能變數名稱標籤和 vm 網路設定檔唯一識別碼的串連。 字串 (必要)

VirtualMachineIpTag

名稱 描述
ipTagType IP 標籤類型。 範例:FirstPartyUsage。 字串
標籤 與公用IP相關聯的IP標籤。 範例:SQL、記憶體等。 字串

PublicIPAddressSku

名稱 描述
NAME 指定公用IP SKU 名稱 'Basic'
'Standard'
tier 指定公用IP SKU層 'Global'
'Regional'

NetworkInterfaceReference

名稱 描述
id 資源標識碼 字串
properties 描述網路介面參考屬性。 NetworkInterfaceReferenceProperties

NetworkInterfaceReferenceProperties

名稱 描述
deleteOption 指定刪除 VM 時網路介面會發生什麼情況 'Delete'
'Detach'
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool

VirtualMachineScaleSetVMNetworkProfileConfiguration

名稱 描述
networkInterfaceConfigurations 網路組態的清單。 VirtualMachineScaleSetNetworkConfiguration[]

VirtualMachineScaleSetNetworkConfiguration

名稱 描述
id 資源標識碼 字串
NAME 網路組態名稱。 需要字串 ()
properties 描述虛擬機擴展集網路配置檔的IP組態。 VirtualMachineScaleSetNetworkConfigurationProperties

VirtualMachineScaleSetNetworkConfigurationProperties

名稱 描述
deleteOption 指定刪除 VM 時網路介面會發生什麼情況 'Delete'
'Detach'
dnsSettings 要套用在網路介面上的 DNS 設定。 VirtualMachineScaleSetNetworkConfigurationDnsSetting...
enableAcceleratedNetworking 指定網路介面是否已啟用加速網路。 bool
enableFpga 指定網路介面是否已啟用 FPGA 網路功能。 bool
enableIPForwarding 是否在此 NIC 上啟用 IP 轉送。 bool
ipConfigurations 指定網路介面的IP組態。 VirtualMachineScaleSetIPConfiguration[] (必要)
networkSecurityGroup 網路安全組。 SubResource
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool

VirtualMachineScaleSetNetworkConfigurationDnsSetting...

名稱 描述
dnsServers DNS 伺服器 IP 位址清單 string[]

VirtualMachineScaleSetIPConfiguration

名稱 描述
id 資源標識碼 字串
NAME IP 組態名稱。 需要字串 ()
properties 描述虛擬機擴展集網路配置檔的IP組態屬性。 VirtualMachineScaleSetIPConfigurationProperties

VirtualMachineScaleSetIPConfigurationProperties

名稱 描述
applicationGatewayBackendAddressPools 指定應用程式閘道後端位址池的參考數位。 擴展集可以參考多個應用程式閘道的後端位址池。 多個擴展集無法使用相同的應用程式閘道。 SubResource[]
applicationSecurityGroups 指定應用程式安全組的參考陣列。 SubResource[]
loadBalancerBackendAddressPools 指定負載平衡器後端位址池的參考陣列。 擴展集可以參考一個公用和一個內部負載平衡器的後端位址池。 多個擴展集無法使用相同的基本 SKU 負載平衡器。 SubResource[]
loadBalancerInboundNatPools 指定負載平衡器輸入 Nat 集區的參考陣列。 擴展集可以參考一個公用和一個內部負載平衡器的輸入 nat 集區。 多個擴展集無法使用相同的基本 SKU 負載平衡器。 SubResource[]
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool
privateIPAddressVersion 從 Api-Version 2017-03-30 起提供,它代表特定 ipconfiguration 是 IPv4 或 IPv6。 預設值會採用為 IPv4。 可能的值為:'IPv4' 和 'IPv6'。 'IPv4'
'IPv6'
publicIPAddressConfiguration publicIPAddressConfiguration。 VirtualMachineScaleSetPublicIPAddressConfiguration
子網路 指定子網的識別碼。 ApiEntityReference

VirtualMachineScaleSetPublicIPAddressConfiguration

名稱 描述
NAME publicIP 位址組態名稱。 需要字串 ()
properties 描述虛擬機擴展集IP組態的PublicIPAddress設定 VirtualMachineScaleSetPublicIPAddressConfigurationPr...
sku 描述公用IP Sku PublicIPAddressSku

VirtualMachineScaleSetPublicIPAddressConfigurationPr...

名稱 描述
deleteOption 指定刪除 VM 時公用 IP 會發生什麼事 'Delete'
'Detach'
dnsSettings 要套用在 publicIP 位址 上的 DNS 設定。 VirtualMachineScaleSetPublicIPAddressConfigurationDn...
idleTimeoutInMinutes 公用IP位址的閒置逾時。 int
ipTags 與公用IP位址相關聯的IP標籤清單。 VirtualMachineScaleSetIpTag[]
publicIPAddressVersion 從 Api-Version 2019-07-01 開始提供,它代表特定 ipconfiguration 是 IPv4 或 IPv6。 預設值會採用為 IPv4。 可能的值為:'IPv4' 和 'IPv6'。 'IPv4'
'IPv6'
publicIPPrefix 要從中配置 publicIP 位址的 PublicIPPrefix。 SubResource

VirtualMachineScaleSetPublicIPAddressConfigurationDn...

名稱 描述
domainNameLabel 功能變數名稱標籤。功能變數名稱標籤和 VM 索引的串連將會是將建立之 PublicIPAddress 資源的功能變數名稱標籤 需要字串 ()

VirtualMachineScaleSetIpTag

名稱 描述
ipTagType IP 標籤類型。 範例:FirstPartyUsage。 字串
標籤 與公用IP相關聯的IP標籤。 範例:SQL、記憶體等。 字串

ApiEntityReference

名稱 描述
id /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... 形式的 ARM 資源標識符 字串

OSProfile

名稱 描述
adminPassword 指定系統管理員帳戶的密碼。

Windows) 長度下限 (: 8 個字元

Linux) 長度下限 (: 6 個字元

Windows) 長度上限 (: 123 個字元

Linux) 長度上限 (: 72 個字元

複雜度需求: 下列 4 個條件中需要滿足 3 個條件
字元較低
具有大字元
具有數位
具有特殊字元 (Regex 比對 [\W_])

不允許的值: “abc@123”、“P@$$w 0rd”、“P@ssw0rd”、“P@ssword123”、“Pa$$word”、“pass@word1”、“Password!”、“Password1”、“Password22”、“P@ssword123”、“pa$$word”、“Password!”、“Password1”、“Password22”、“P@ssword123!”

如需重設密碼,請參閱 如何在 Windows VM 中重設遠端桌面服務或其登入密碼

如需重設根密碼,請參閱 使用 VMAccess 擴充功能管理使用者、SSH 及檢查或修復 Azure Linux VM 上的磁碟
字串

約束:
敏感性值。 以安全參數的形式傳入。
adminUsername 指定系統管理員帳戶的名稱。

建立 VM 之後,就無法更新此屬性。

僅限 Windows 的限制: 無法結束於 “.”

不允許的值: “administrator”、“admin”、“user”、“user1”、“test”、“user2”、“test1”、“user3”、“admin1”、“1”、 “123”、“a”、“actuser”、“adm”、“admin2”、“aspnet”、“backup”、“console”、“david”、“guest”、“john”、“owner”、“root”、“server”、“sql”、“support”、“support_388945a0”、“sys”、“test2”、“test3”、“user4”、“user5”。

Linux) 長度下限 (: 1 個字元

Linux) 長度上限 (: 64 個字元

Windows) 長度上限 () : 20 個字元。
字串
allowExtensionOperations 指定是否應在虛擬機上允許擴充功能作業。

只有在虛擬機上沒有擴充功能時,才能將此設定為 False。
bool
computerName 指定虛擬機的主機OS名稱。

建立 VM 之後,就無法更新此名稱。

Windows) (長度上限: 15 個字元

Linux) 長度上限 (: 64 個字元。

如需命名慣例和限制,請參閱 Azure 基礎結構服務實作指導方針
字串
customData 指定自訂資料的 Base-64 編碼字串。 Base-64 編碼字串會解碼成二進位陣列而儲存為虛擬機器上的檔案。 二進位陣列的長度上限是 65535 個位元組。

注意:請勿在 customData 屬性中傳遞任何秘密或密碼

建立 VM 之後,就無法更新此屬性。

customData 會傳遞至要儲存為檔案的 VM,如需詳細資訊,請參閱 Azure VM 上的自定義數據

如需針對Linux VM使用 cloud-init,請參閱在建立期間使用cloud-init 自定義Linux VM
字串
linuxConfiguration 指定虛擬機上的Linux作業系統設定。

如需支援的Linux發行版清單,請參閱 Azure-Endorsed 發行版上的Linux
LinuxConfiguration
requireGuestProvisionSignal 指定是否需要客體布建訊號,才能推斷虛擬機的布建成功。 注意:此屬性僅供私人測試使用,且所有客戶不得將屬性設定為 false。 bool
密碼 指定應該安裝到虛擬機器的憑證集。 若要在虛擬機上安裝憑證,建議使用適用於Linux的 Azure 金鑰保存庫 虛擬機擴充功能適用於Windows的 Azure 金鑰保存庫 虛擬機擴充功能 VaultSecretGroup[]
windowsConfiguration 指定虛擬機器上的 Windows 作業系統設定。 WindowsConfiguration

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'

SshConfiguration

名稱 描述
publicKeys 用來向Linux型VM進行驗證的SSH公鑰清單。 SshPublicKey[]

SshPublicKey

名稱 描述
keyData 用來透過 ssh 向 VM 進行驗證的 SSH 公鑰憑證。 密鑰至少必須是 2048 位,且格式為 ssh-rsa。

如需建立 ssh 金鑰,請參閱 [在 Azure 中建立 Linux 和 Mac 上的 Linux VM SSH 密鑰]/azure/virtual-machines/linux/create-ssh-keys-detailed) 。
字串
path 指定儲存 ssh 公鑰的已建立 VM 上的完整路徑。 如果檔案已經存在,指定的金鑰就會附加至該檔案。 範例:/home/user/.ssh/authorized_keys 字串

VaultSecretGroup

名稱 描述
sourceVault 包含 VaultCertificates 中所有憑證之 金鑰保存庫 的相對 URL。 SubResource
vaultCertificates SourceVault 中包含憑證的金鑰保存庫參考清單。 VaultCertificate[]

VaultCertificate

名稱 描述
certificateStore 針對 Windows VM,指定應在其中新增憑證之虛擬機上的證書存儲。 指定的證書存儲會隱含地在 LocalMachine 帳戶中。

針對Linux VM,憑證檔案會放在 /var/lib/waagent 目錄底下,而 X509 憑證檔案的檔名 <為 UppercaseThumbprint.crt>, <而私鑰則為 UppercaseThumbprint.prv>。 這兩個檔案都是 .pem 格式。
字串
certificateUrl 這是已上傳至 金鑰保存庫 為秘密之憑證的 URL。 如需將秘密新增至 金鑰保存庫,請參閱將密鑰或秘密新增至密鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼方式,此物件是以 UTF-8 編碼:

{
“data”:“{Base64-encoded-certificate}”,
“dataType”:“pfx”,
“password”:“{pfx-file-password}”
}
若要在虛擬機上安裝憑證,建議使用適用於Linux的 Azure 金鑰保存庫 虛擬機擴充功能適用於Windows的 Azure 金鑰保存庫 虛擬機擴充功能
字串

WindowsConfiguration

名稱 描述
additionalUnattendContent 指定可併入 Unattend.xml 檔案 (由 Windows 安裝程式使用) 的額外 Base-64 編碼 XML 格式資訊。 AdditionalUnattendContent[]
enableAutomaticUpdates 指出是否為 Windows 虛擬機啟用自動 匯報。 預設值為 true。

對於虛擬機擴展集,此屬性可以更新,更新將會在OS重新佈建上生效。
bool
patchSettings [預覽功能]指定與 Windows 上的 VM 客體修補相關的設定。 PatchSettings
provisionVMAgent 指出是否應該在虛擬機器上佈建虛擬機器代理程式。

當要求本文中未指定這個屬性時,預設行為是將它設定為 true。 這可確保 VM 代理程式已安裝在 VM 上,以便稍後將擴充功能新增至 VM。
bool
timeZone 指定虛擬機的時區。 例如“Pacific Standard Time”。

可能的值可以從 TimeZoneInfo.GetSystemTimeZones 傳回的時區 TimeZoneInfo.Id 值。
字串
winRM 指定 Windows 遠端管理接聽程式。 藉此將啟用遠端 Windows PowerShell。 WinRMConfiguration

AdditionalUnattendContent

名稱 描述
componentName 元件名稱。 目前唯一允許的值是 Microsoft-Windows-Shell-Setup。 'Microsoft-Windows-Shell-Setup'
內容 針對指定的路徑和元件,指定新增至 unattend.xml 檔案的 XML 格式化內容。 XML 必須小於 4KB,而且必須包含要插入之設定或功能的根元素。 字串
passName 傳遞名稱。 目前唯一允許的值是 OobeSystem。 'OobeSystem'
settingName 指定要套用內容之設定的名稱。 可能的值為:FirstLogonCommands 和 AutoLogon。 'AutoLogon'
'FirstLogonCommands'

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 - 作業系統會自動更新虛擬機。 屬性 WindowsConfiguration.enableAutomaticUpdates 必須為 true。

AutomaticByPlatform - 虛擬機將會由平台自動更新。 provisionVMAgent 和 WindowsConfiguration.enableAutomaticUpdates 屬性必須為 true
'AutomaticByOS'
'AutomaticByPlatform'
'Manual'

WinRMConfiguration

名稱 描述
接聽程式 Windows 遠端管理接聽程式清單 WinRMListener[]

WinRMListener

名稱 描述
certificateUrl 這是已上傳至 金鑰保存庫 作為秘密之憑證的 URL。 如需將秘密新增至 金鑰保存庫,請參閱將密鑰或秘密新增至密鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼方式,此物件是以 UTF-8 編碼:

{
“data”:“{Base64-encoded-certificate}”,
“dataType”:“pfx”,
“password”:“{pfx-file-password}”
}
若要在虛擬機上安裝憑證,建議您使用適用於Linux的 Azure 金鑰保存庫 虛擬機擴充功能適用於 Windows 的 Azure 金鑰保存庫 虛擬機擴充功能
字串
protocol 指定 WinRM 接聽程式的通訊協定。

可能的值包括:
http

https
'Http'
'Https'

VirtualMachineScaleSetVMProtectionPolicy

名稱 描述
protectFromScaleIn 表示虛擬機擴展集 VM 不應在相應縮小作業期間視為要刪除。 bool
protectFromScaleSetActions 指出模型更新或動作 (包括虛擬機擴展集上起始的相應縮小) 不應套用至虛擬機擴展集 VM。 bool

SecurityProfile

名稱 描述
encryptionAtHost 用戶可以在要求中使用此屬性,以啟用或停用虛擬機或虛擬機擴展集的主機加密。 這會啟用所有磁碟的加密,包括主機本身的資源/暫存磁碟。

默認值:除非資源的此屬性設定為 true,否則將會停用主機上的加密。
bool
securityType 指定虛擬機的 SecurityType。 它會設定為 TrustedLaunch 以啟用 UefiSettings。

默認值:除非此屬性設定為 TrustedLaunch,否則不會啟用 UefiSettings。
'TrustedLaunch'
uefiSettings 指定安全性設定,例如建立虛擬機時所使用的安全開機和 vTPM。

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

UefiSettings

名稱 描述
secureBootEnabled 指定是否應在虛擬機上啟用安全開機。

最低 API 版本:2020-12-01
bool
vTpmEnabled 指定是否應在虛擬機上啟用 vTPM。

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

StorageProfile

名稱 描述
dataDisks 指定用來將資料磁碟加入至虛擬機器的參數。

如需磁碟的詳細資訊,請參閱 關於 Azure 虛擬機的磁碟和 VHD
DataDisk[]
imageReference 指定要使用之映像的相關信息。 您可以指定平臺映像、Marketplace 映像或虛擬機映射的相關信息。 當您想要使用平臺映像、市集映像或虛擬機映像,但不會用於其他建立作業時,需要此元素。 ImageReference
osDisk 指定虛擬機所使用的作業系統磁碟相關信息。

如需磁碟的詳細資訊,請參閱 關於 Azure 虛擬機的磁碟和 VHD
OSDisk

DataDisk

名稱 描述
快取 指定快取需求。

可能的值包括:



ReadOnly

讀寫

預設值: 標準記憶體無。進階記憶體的 ReadOnly
'None'
'ReadOnly'
'ReadWrite'
createOption 指定應如何建立虛擬機。

可能的值包括:

附加 \u2013 當您使用特製化磁碟來建立虛擬機時,會使用此值。

FromImage \u2013 當您使用映射來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也會使用上述的 imageReference 元素。 如果您使用 Marketplace 映射,則也會使用先前所述的 plan 元素。
'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
image 來源使用者映像虛擬硬碟。 虛擬硬碟將會先複製,再連結至虛擬機。 如果提供SourceImage,目的地虛擬硬碟不得存在。 VirtualHardDisk
lun 指定數據磁碟的邏輯單元編號。 這個值是用來識別 VM 內的數據磁碟,因此對於連結至 VM 的每個數據磁碟都必須是唯一的。 需要 int ()
ManagedDisk 受控磁碟參數。 ManagedDiskParameters
NAME 磁碟名稱。 字串
toBeDetached 指定數據磁碟是否正在從 VirtualMachine/VirtualMachineScaleset 中斷連結 bool
vhd 虛擬硬碟。 VirtualHardDisk
writeAcceleratorEnabled 指定是否應該在磁碟上啟用或停用 writeAccelerator。 bool

VirtualHardDisk

名稱 描述
uri 指定虛擬硬碟的 URI。 字串

ManagedDiskParameters

名稱 描述
diskEncryptionSet 指定受控磁碟的客戶受控磁碟加密集資源標識符。 DiskEncryptionSetParameters
id 資源標識碼 字串
storageAccountType 指定受控磁碟的記憶體帳戶類型。 注意:UltraSSD_LRS只能與數據磁碟搭配使用,它不能與OS磁碟搭配使用。 'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'
'UltraSSD_LRS'

DiskEncryptionSetParameters

名稱 描述
id 資源標識碼 字串

ImageReference

名稱 描述
id 資源標識碼 字串
供應項目 指定用來建立虛擬機的平臺映像或 Marketplace 映像供應專案。 字串
publisher 映像發行者。 字串
sku 映像 SKU。 字串
version 指定用來建立虛擬機的平臺映像或 Marketplace 映像版本。 允許的格式為 Major.Minor.Build 或 'latest'。 主要、次要和組建是十進位數。 指定「最新」以使用部署階段可用的最新映像版本。 即使您使用「最新」,即使有新版本可供使用,VM 映像也不會在部署時間之後自動更新。 字串

OSDisk

名稱 描述
快取 指定快取需求。

可能的值包括:



ReadOnly

讀寫

預設值: 標準記憶體無 。 進階記憶體的 ReadOnly
'None'
'ReadOnly'
'ReadWrite'
createOption 指定虛擬機的建立方式。

可能的值包括:

附加 \u2013 當您使用特製化磁碟來建立虛擬機時,會使用此值。

FromImage \u2013 當您使用映射來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也會使用上述的 imageReference 元素。 如果您使用市集映射,您也會使用先前所述的 plan 元素。
'Attach'
'Empty'
'FromImage' (必要)
deleteOption 指定在 VM 刪除時,是否應該刪除或中斷連結 OS 磁碟。

可能的值:

刪除 如果使用此值,則會在刪除 VM 時刪除 OS 磁碟。

分離 如果使用此值,則會在刪除 VM 之後保留 os 磁碟。

預設值會設定為 卸離。 對於暫時 OS 磁碟,預設值會設定為 [刪除]。 使用者無法變更暫時 OS 磁碟的刪除選項。
'Delete'
'Detach'
diffDiskSettings 指定虛擬機所使用作業系統磁碟的暫時磁碟設定。 DiffDiskSettings
diskSizeGB 指定以 GB 為單位的空白資料磁碟大小。 此元素可用來覆寫虛擬機映像中的磁碟大小。

此值不能大於 1023 GB
int
encryptionSettings 指定 OS 磁碟的加密設定。

最低 api-version:2015-06-15
DiskEncryptionSettings
image 來源使用者映像虛擬硬碟。 虛擬硬碟將會先複製,再連結至虛擬機。 如果提供SourceImage,目的地虛擬硬碟不得存在。 VirtualHardDisk
ManagedDisk 受控磁碟參數。 ManagedDiskParameters
NAME 磁碟名稱。 字串
osType 此屬性可讓您指定從使用者映像或特製化 VHD 建立 VM 時,磁碟包含的 OS 類型。

可能的值包括:

Windows

Linux
'Linux'
'Windows'
vhd 虛擬硬碟。 VirtualHardDisk
writeAcceleratorEnabled 指定是否應該在磁碟上啟用或停用 writeAccelerator。 bool

DiffDiskSettings

名稱 描述
選項 指定作業系統磁碟的暫時磁碟設定。 'Local'
放置 指定作業系統磁碟的暫時磁碟位置。

可能的值包括:

CacheDisk

ResourceDisk

默認值:如果已針對 VM 大小設定快 取Disk ,否則會使用 ResourceDisk

請參閱 /azure/virtual-machines/windows/size 和 Linux VM 的 VM 大小檔,請參閱 /azure/virtual-machines/linux/size 的 Windows VM 大小檔,以檢查哪些 VM 大小會公開快取磁碟。
'CacheDisk'
'ResourceDisk'

DiskEncryptionSettings

名稱 描述
diskEncryptionKey 指定磁碟加密金鑰的位置,這是 金鑰保存庫 秘密。 KeyVaultSecretReference
已啟用 指定是否應在虛擬機上啟用磁碟加密。 bool
keyEncryptionKey 指定 金鑰保存庫 中金鑰加密金鑰的位置。 KeyVaultKeyReference

KeyVaultSecretReference

名稱 描述
secretUrl 參考 金鑰保存庫 秘密的 URL。 需要字串 ()
sourceVault 包含秘密之 金鑰保存庫的相對 URL。 必要子資源 ()

KeyVaultKeyReference

名稱 描述
keyUrl 在 金鑰保存庫 中參考金鑰加密金鑰的 URL。 需要字串 ()
sourceVault 包含金鑰之 金鑰保存庫 的相對 URL。 必要子資源 ()

ARM 範本資源定義

virtualMachineScaleSets/virtualmachines 資源類型可以使用目標作業進行部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。

資源格式

若要建立 Microsoft.Compute/virtualMachineScaleSets/virtualmachines 資源,請將下列 JSON 新增至範本。

{
  "type": "Microsoft.Compute/virtualMachineScaleSets/virtualmachines",
  "apiVersion": "2021-04-01",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "plan": {
    "name": "string",
    "product": "string",
    "promotionCode": "string",
    "publisher": "string"
  },
  "properties": {
    "additionalCapabilities": {
      "ultraSSDEnabled": "bool"
    },
    "availabilitySet": {
      "id": "string"
    },
    "diagnosticsProfile": {
      "bootDiagnostics": {
        "enabled": "bool",
        "storageUri": "string"
      }
    },
    "hardwareProfile": {
      "vmSize": "string"
    },
    "licenseType": "string",
    "networkProfile": {
      "networkApiVersion": "2020-11-01",
      "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"
          }
        }
      ]
    },
    "networkProfileConfiguration": {
      "networkInterfaceConfigurations": [
        {
          "id": "string",
          "name": "string",
          "properties": {
            "deleteOption": "string",
            "dnsSettings": {
              "dnsServers": [ "string" ]
            },
            "enableAcceleratedNetworking": "bool",
            "enableFpga": "bool",
            "enableIPForwarding": "bool",
            "ipConfigurations": [
              {
                "id": "string",
                "name": "string",
                "properties": {
                  "applicationGatewayBackendAddressPools": [
                    {
                      "id": "string"
                    }
                  ],
                  "applicationSecurityGroups": [
                    {
                      "id": "string"
                    }
                  ],
                  "loadBalancerBackendAddressPools": [
                    {
                      "id": "string"
                    }
                  ],
                  "loadBalancerInboundNatPools": [
                    {
                      "id": "string"
                    }
                  ],
                  "primary": "bool",
                  "privateIPAddressVersion": "string",
                  "publicIPAddressConfiguration": {
                    "name": "string",
                    "properties": {
                      "deleteOption": "string",
                      "dnsSettings": {
                        "domainNameLabel": "string"
                      },
                      "idleTimeoutInMinutes": "int",
                      "ipTags": [
                        {
                          "ipTagType": "string",
                          "tag": "string"
                        }
                      ],
                      "publicIPAddressVersion": "string",
                      "publicIPPrefix": {
                        "id": "string"
                      }
                    },
                    "sku": {
                      "name": "string",
                      "tier": "string"
                    }
                  },
                  "subnet": {
                    "id": "string"
                  }
                }
              }
            ],
            "networkSecurityGroup": {
              "id": "string"
            },
            "primary": "bool"
          }
        }
      ]
    },
    "osProfile": {
      "adminPassword": "string",
      "adminUsername": "string",
      "allowExtensionOperations": "bool",
      "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"
            }
          ]
        }
      }
    },
    "protectionPolicy": {
      "protectFromScaleIn": "bool",
      "protectFromScaleSetActions": "bool"
    },
    "securityProfile": {
      "encryptionAtHost": "bool",
      "securityType": "TrustedLaunch",
      "uefiSettings": {
        "secureBootEnabled": "bool",
        "vTpmEnabled": "bool"
      }
    },
    "storageProfile": {
      "dataDisks": [
        {
          "caching": "string",
          "createOption": "string",
          "deleteOption": "string",
          "detachOption": "ForceDetach",
          "diskSizeGB": "int",
          "image": {
            "uri": "string"
          },
          "lun": "int",
          "managedDisk": {
            "diskEncryptionSet": {
              "id": "string"
            },
            "id": "string",
            "storageAccountType": "string"
          },
          "name": "string",
          "toBeDetached": "bool",
          "vhd": {
            "uri": "string"
          },
          "writeAcceleratorEnabled": "bool"
        }
      ],
      "imageReference": {
        "id": "string",
        "offer": "string",
        "publisher": "string",
        "sku": "string",
        "version": "string"
      },
      "osDisk": {
        "caching": "string",
        "createOption": "string",
        "deleteOption": "string",
        "diffDiskSettings": {
          "option": "Local",
          "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",
          "storageAccountType": "string"
        },
        "name": "string",
        "osType": "string",
        "vhd": {
          "uri": "string"
        },
        "writeAcceleratorEnabled": "bool"
      }
    },
    "userData": "string"
  }
}

屬性值

virtualMachineScaleSets/virtualmachines

名稱 描述
類型 資源類型 'Microsoft.Compute/virtualMachineScaleSets/virtualmachines'
apiVersion 資源 API 版本 '2021-04-01'
NAME 資源名稱

瞭解如何在 JSON ARM 範本中設定子資源的名稱和類型。
需要字串 ()
location 資源位置 需要字串 ()
tags 資源標籤 標記名稱和值的字典。 請參閱 範本中的標籤
方案 指定用來建立虛擬機之 Marketplace 映像的相關信息。 此元素僅用於市集映像。 您必須先啟用映像以供程序設計使用,才能從 API 使用市集映射。 在 Azure 入口網站 中,尋找您想要使用的市集映射,然後按兩下 [想要以程序設計方式部署] [開始使用] -> 。 輸入任何必要資訊,然後按兩下 [ 儲存]。 方案
properties 描述虛擬機擴展集虛擬機的屬性。 VirtualMachineScaleSetVMProperties

計畫

名稱 描述
NAME 方案標識碼。 字串
產品 指定市集中映像的產品。 這與 imageReference 元素下的 Offer 值相同。 字串
promotionCode 促銷碼。 字串
publisher 發行者標識碼。 字串

VirtualMachineScaleSetVMProperties

名稱 描述
additionalCapabilities 指定擴展集中虛擬機上啟用或停用的其他功能。 例如:虛擬機是否能夠支援使用UltraSSD_LRS記憶體帳戶類型鏈接受控數據磁碟。 AdditionalCapabilities
availabilitySet 指定虛擬機應指派給的可用性設定組相關信息。 在相同可用性設定組中指定的虛擬機器會配置到不同的節點,以便將可用性最大化。 如需可用性設定組的詳細資訊,請參閱 可用性設定組概觀

如需 Azure 計劃性維護的詳細資訊,請參閱 Azure 中 虛擬機器 的維護和更新

目前,VM 只能在建立時新增至可用性設定組。 現有的 VM 無法新增至可用性設定組。
SubResource
diagnosticsProfile 指定開機診斷設定狀態。

API 版本下限:2015-06-15。
DiagnosticsProfile
hardwareProfile 指定虛擬機器的硬體設定。 HardwareProfile
licenseType 指定正在使用的映像或磁碟是在內部部署授權。

Windows Server 操作系統的可能值為:

Windows_Client

Windows_Server

Linux Server 操作系統的可能值為:

RHEL) 的RHEL_BYOS (

SUSE) 的SLES_BYOS (

如需詳細資訊,請參閱 適用於 Windows Server 的 Azure Hybrid Use Benefit

適用於Linux伺服器的 Azure Hybrid Use Benefit

最低 api-version:2015-06-15
字串
networkProfile 指定虛擬機器的網路介面。 NetworkProfile
networkProfileConfiguration 指定虛擬機的網路配置檔組態。 VirtualMachineScaleSetVMNetworkProfileConfiguration
osProfile 指定虛擬機器的作業系統設定。 OSProfile
protectionPolicy 指定虛擬機的保護原則。 VirtualMachineScaleSetVMProtectionPolicy
securityProfile 指定虛擬機的安全性相關配置檔設定。 SecurityProfile
storageProfile 指定虛擬機器磁碟的儲存體設定。 StorageProfile
userData VM 的 UserData,必須以 base-64 編碼。 客戶不應在此傳遞任何秘密。

最低 api-version:2021-03-01
字串

AdditionalCapabilities

名稱 描述
ultraSSDEnabled 旗標,可讓或停用在 VM 或 VMSS 上具有一或多個具有 UltraSSD_LRS記憶體帳戶類型的受控數據磁碟。 只有在啟用此屬性時,才能將具有記憶體帳戶類型的受控磁碟UltraSSD_LRS新增至虛擬機或虛擬機擴展集。 bool

SubResource

名稱 描述
id 資源標識碼 字串

DiagnosticsProfile

名稱 描述
bootDiagnostics 開機診斷是一項偵錯功能,可讓您檢視控制台輸出和螢幕快照來診斷 VM 狀態。

您可以輕鬆地檢視主控台記錄的輸出。

Azure 也可讓您從 Hypervisor 查看 VM 的螢幕快照。
BootDiagnostics

BootDiagnostics

名稱 描述
已啟用 虛擬機上是否應該啟用開機診斷。 bool
storageUri 用來放置主控台輸出和螢幕快照的記憶體帳戶 URI。

如果在啟用開機診斷時未指定 storageUri,則會使用受控記憶體。
字串

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_A2_v2'
'Standard_A2m_v2'
'Standard_A3'
'Standard_A4'
'Standard_A4_v2'
'Standard_A4m_v2'
'Standard_A5'
'Standard_A6'
'Standard_A7'
'Standard_A8'
'Standard_A8_v2'
'Standard_A8m_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_D16_v3'
'Standard_D16s_v3'
'Standard_D1_v2'
'Standard_D2'
'Standard_D2_v2'
'Standard_D2_v3'
'Standard_D2s_v3'
'Standard_D3'
'Standard_D32_v3'
'Standard_D32s_v3'
'Standard_D3_v2'
'Standard_D4'
'Standard_D4_v2'
'Standard_D4_v3'
'Standard_D4s_v3'
'Standard_D5_v2'
'Standard_D64_v3'
'Standard_D64s_v3'
'Standard_D8_v3'
'Standard_D8s_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_E16_v3'
'Standard_E16s_v3'
'Standard_E2_v3'
'Standard_E2s_v3'
'Standard_E32-16_v3'
'Standard_E32-8s_v3'
'Standard_E32_v3'
'Standard_E32s_v3'
'Standard_E4_v3'
'Standard_E4s_v3'
'Standard_E64-16s_v3'
'Standard_E64-32s_v3'
'Standard_E64_v3'
'Standard_E64s_v3'
'Standard_E8_v3'
'Standard_E8s_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'

NetworkProfile

名稱 描述
networkApiVersion 指定在網路介面組態中建立網路資源時所使用的 Microsoft.Network API 版本 '2020-11-01'
networkInterfaceConfigurations 指定將用來建立虛擬機網路資源的網路設定。 VirtualMachineNetworkInterfaceConfiguration[]
networkInterfaces 指定與虛擬機相關聯之網路介面的資源標識符清單。 NetworkInterfaceReference[]

VirtualMachineNetworkInterfaceConfiguration

名稱 描述
NAME 網路介面組態名稱。 字串 (必要)
properties 描述虛擬機網路配置檔的IP組態。 VirtualMachineNetworkInterfaceConfigurationPropertie...

VirtualMachineNetworkInterfaceConfigurationPropertie...

名稱 描述
deleteOption 指定刪除 VM 時網路介面會發生什麼事 'Delete'
'Detach'
dnsSettings 要套用在網路介面上的 DNS 設定。 VirtualMachineNetworkInterfaceDnsSettingsConfigurati...
dscpConfiguration SubResource
enableAcceleratedNetworking 指定網路介面是否已啟用加速網路功能。 bool
enableFpga 指定網路介面是否已啟用 FPGA 網路功能。 bool
enableIPForwarding 是否在此 NIC 上啟用 IP 轉送。 bool
ipConfigurations 指定網路介面的IP組態。 VirtualMachineNetworkInterfaceIPConfiguration[] (必要)
networkSecurityGroup 網路安全組。 SubResource
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool

VirtualMachineNetworkInterfaceDnsSettingsConfigurati...

名稱 描述
dnsServers DNS 伺服器 IP 位址清單 string[]

VirtualMachineNetworkInterfaceIPConfiguration

名稱 描述
NAME IP 組態名稱。 字串 (必要)
properties 描述虛擬機網路介面IP組態屬性。 VirtualMachineNetworkInterfaceIPConfigurationPropert...

VirtualMachineNetworkInterfaceIPConfigurationPropert...

名稱 描述
applicationGatewayBackendAddressPools 指定應用程式閘道後端位址池的參考數位。 虛擬機可以參考多個應用程式閘道的後端位址池。 多部虛擬機無法使用相同的應用程式閘道。 SubResource[]
applicationSecurityGroups 指定應用程式安全組的參考陣列。 SubResource[]
loadBalancerBackendAddressPools 指定負載平衡器後端位址池參考的陣列。 虛擬機可以參考一個公用和一個內部負載平衡器的後端位址池。 [多部虛擬機無法使用相同的基本 SKU 負載平衡器]。 SubResource[]
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool
privateIPAddressVersion 從 Api-Version 2017-03-30 起提供,它代表特定 ipconfiguration 是 IPv4 或 IPv6。 預設值會視為 IPv4。 可能的值為:'IPv4' 和 'IPv6'。 'IPv4'
'IPv6'
publicIPAddressConfiguration publicIPAddressConfiguration。 VirtualMachinePublicIPAddressConfiguration
子網路 指定子網的識別碼。 SubResource

VirtualMachinePublicIPAddressConfiguration

名稱 描述
NAME publicIP 位址組態名稱。 字串 (必要)
properties 描述虛擬機IP組態的PublicIPAddress設定 VirtualMachinePublicIPAddressConfigurationProperties
sku 描述公用IP Sku PublicIPAddressSku

VirtualMachinePublicIPAddressConfigurationProperties

名稱 描述
deleteOption 指定刪除 VM 時,公用 IP 位址會發生什麼情況 'Delete'
'Detach'
dnsSettings 要套用至 publicIP 位址的 DNS 設定。 VirtualMachinePublicIPAddressDnsSettingsConfiguratio...
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

VirtualMachinePublicIPAddressDnsSettingsConfiguratio...

名稱 描述
domainNameLabel 將建立之 PublicIPAddress 資源的功能變數名稱標籤前置詞。 產生的名稱標籤是功能變數名稱標籤和 vm 網路設定檔唯一識別碼的串連。 字串 (必要)

VirtualMachineIpTag

名稱 描述
ipTagType IP 標籤類型。 範例:FirstPartyUsage。 字串
標籤 與公用IP相關聯的IP標籤。 範例:SQL、記憶體等。 字串

PublicIPAddressSku

名稱 描述
NAME 指定公用IP SKU 名稱 'Basic'
'Standard'
tier 指定公用IP SKU層 'Global'
'Regional'

NetworkInterfaceReference

名稱 描述
id 資源標識碼 字串
properties 描述網路介面參考屬性。 NetworkInterfaceReferenceProperties

NetworkInterfaceReferenceProperties

名稱 描述
deleteOption 指定刪除 VM 時網路介面會發生什麼事 'Delete'
'Detach'
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool

VirtualMachineScaleSetVMNetworkProfileConfiguration

名稱 描述
networkInterfaceConfigurations 網路組態的清單。 VirtualMachineScaleSetNetworkConfiguration[]

VirtualMachineScaleSetNetworkConfiguration

名稱 描述
id 資源標識碼 字串
NAME 網路組態名稱。 需要字串 ()
properties 描述虛擬機擴展集網路配置檔的IP組態。 VirtualMachineScaleSetNetworkConfigurationProperties

VirtualMachineScaleSetNetworkConfigurationProperties

名稱 描述
deleteOption 指定刪除 VM 時網路介面會發生什麼情況 'Delete'
'Detach'
dnsSettings 要套用在網路介面上的 DNS 設定。 VirtualMachineScaleSetNetworkConfigurationDnsSetting...
enableAcceleratedNetworking 指定網路介面是否已啟用加速網路。 bool
enableFpga 指定網路介面是否已啟用 FPGA 網路功能。 bool
enableIPForwarding 是否在此 NIC 上啟用 IP 轉送。 bool
ipConfigurations 指定網路介面的IP組態。 VirtualMachineScaleSetIPConfiguration[] (必要)
networkSecurityGroup 網路安全組。 SubResource
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool

VirtualMachineScaleSetNetworkConfigurationDnsSetting...

名稱 描述
dnsServers DNS 伺服器 IP 位址清單 string[]

VirtualMachineScaleSetIPConfiguration

名稱 描述
id 資源標識碼 字串
NAME IP 組態名稱。 需要字串 ()
properties 描述虛擬機擴展集網路配置檔的IP組態屬性。 VirtualMachineScaleSetIPConfigurationProperties

VirtualMachineScaleSetIPConfigurationProperties

名稱 描述
applicationGatewayBackendAddressPools 指定應用程式閘道後端位址池的參考數位。 擴展集可以參考多個應用程式閘道的後端位址池。 多個擴展集無法使用相同的應用程式閘道。 SubResource[]
applicationSecurityGroups 指定應用程式安全組的參考陣列。 SubResource[]
loadBalancerBackendAddressPools 指定負載平衡器後端位址池的參考陣列。 擴展集可以參考一個公用和一個內部負載平衡器的後端位址池。 多個擴展集無法使用相同的基本 SKU 負載平衡器。 SubResource[]
loadBalancerInboundNatPools 指定負載平衡器輸入 Nat 集區的參考陣列。 擴展集可以參考一個公用和一個內部負載平衡器的輸入 nat 集區。 多個擴展集無法使用相同的基本 SKU 負載平衡器。 SubResource[]
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool
privateIPAddressVersion 從 Api-Version 2017-03-30 起提供,它代表特定 ipconfiguration 是 IPv4 或 IPv6。 預設值會採用為 IPv4。 可能的值為:'IPv4' 和 'IPv6'。 'IPv4'
'IPv6'
publicIPAddressConfiguration publicIPAddressConfiguration。 VirtualMachineScaleSetPublicIPAddressConfiguration
子網路 指定子網的識別碼。 ApiEntityReference

VirtualMachineScaleSetPublicIPAddressConfiguration

名稱 描述
NAME publicIP 位址組態名稱。 字串 (必要)
properties 描述虛擬機擴展集IP組態的PublicIPAddress設定 VirtualMachineScaleSetPublicIPAddressConfigurationPr...
sku 描述公用IP Sku PublicIPAddressSku

VirtualMachineScaleSetPublicIPAddressConfigurationPr...

名稱 描述
deleteOption 指定刪除 VM 時,公用 IP 會發生什麼情況 'Delete'
'Detach'
dnsSettings 要套用至 publicIP 位址的 DNS 設定。 VirtualMachineScaleSetPublicIPAddressConfigurationDn...
idleTimeoutInMinutes 公用IP位址的閒置逾時。 int
ipTags 與公用IP位址相關聯的IP標籤清單。 VirtualMachineScaleSetIpTag[]
publicIPAddressVersion 從 Api-Version 2019-07-01 起提供,它代表特定 ipconfiguration 是 IPv4 或 IPv6。 預設值會視為 IPv4。 可能的值為:'IPv4' 和 'IPv6'。 'IPv4'
'IPv6'
publicIPPrefix 要從中配置 publicIP 位址的 PublicIPPrefix。 SubResource

VirtualMachineScaleSetPublicIPAddressConfigurationDn...

名稱 描述
domainNameLabel 功能變數名稱標籤。功能變數名稱標籤和 vm 索引的串連將會是將建立之 PublicIPAddress 資源的功能變數名稱標籤 字串 (必要)

VirtualMachineScaleSetIpTag

名稱 描述
ipTagType IP 標籤類型。 範例:FirstPartyUsage。 字串
標籤 與公用IP相關聯的IP標籤。 範例:SQL、記憶體等。 字串

ApiEntityReference

名稱 描述
id /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... 格式的 ARM 資源標識符 字串

OSProfile

名稱 描述
adminPassword 指定系統管理員帳戶的密碼。

Windows) 長度下限 (: 8 個字元

Linux) 長度下限 (: 6 個字元

Windows) 長度上限 (: 123 個字元

Linux) 長度上限 (: 72 個字元

複雜度需求: 需要滿足下列 4 個條件中的 3 個
字元較低
具有大字元
具有數位
具有特殊字元 (Regex 比對 [\W_])

不允許的值: “abc@123”、“P@$$w 0rd”、“P@ssw0rd”、“P@ssword123”、“Pa$$word”、“pass@word1”、“Password!”、“Password1”、“Password22”、“iveyou!”

如需重設密碼,請參閱 如何在 Windows VM 中重設遠端桌面服務或其登入密碼

如需重設根密碼,請參閱 使用 VMAccess 擴充功能管理使用者、SSH 及檢查或修復 Azure Linux VM 上的磁碟
字串

約束:
敏感性值。 以安全參數的形式傳入。
adminUsername 指定系統管理員帳戶的名稱。

建立 VM 之後,就無法更新此屬性。

僅限 Windows 的限制: 不能以 “.

不允許的值: “administrator”、“admin”、“user”、“user1”、“test”、“user2”、“test1”、“user3”、“admin1”、“1”、 “123”、“a”、“actuser”、“adm”、“admin2”、“aspnet”、“backup”、“console”、“david”、“guest”、“john”、“owner”、“root”、“server”、“sql”、“support”、“support_388945a0”、“sys”、“test2”、“test3”、“user4”、“user5”。

Linux () 長度下限: 1 個字元

Linux) 長度上限 (: 64 個字元

Windows) 長度上限 () : 20 個字元。
字串
allowExtensionOperations 指定虛擬機上是否應該允許擴充功能作業。

只有在虛擬機上沒有擴充功能時,才會將此設定為 False。
bool
computerName 指定虛擬機的主機OS名稱。

建立 VM 之後,就無法更新此名稱。

Windows () 長度上限: 15 個字元

Linux) 長度上限 (: 64 個字元。

如需命名慣例和限制,請參閱 Azure 基礎結構服務實作指導方針
字串
customData 指定自訂資料的 Base-64 編碼字串。 Base-64 編碼字串會解碼成二進位陣列而儲存為虛擬機器上的檔案。 二進位陣列的長度上限是 65535 個位元組。

注意:請勿在 customData 屬性中傳遞任何秘密或密碼

建立 VM 之後,就無法更新此屬性。

customData 會傳遞至要儲存為檔案的 VM,如需詳細資訊,請參閱 Azure VM 上的自定義數據

如需針對Linux VM 使用cloud-init,請參閱在建立期間使用cloud-init 自定義Linux VM
字串
linuxConfiguration 指定虛擬機上的Linux作業系統設定。

如需支援的Linux發行版清單,請參閱 Azure-Endorsed 發行版上的Linux
LinuxConfiguration
requireGuestProvisionSignal 指定是否需要客體布建訊號來推斷虛擬機的布建成功。 注意:此屬性僅適用於私人測試,而且所有客戶不得將 屬性設定為 false。 bool
密碼 指定應該安裝到虛擬機器的憑證集。 若要在虛擬機上安裝憑證,建議您使用適用於Linux的 Azure 金鑰保存庫 虛擬機擴充功能適用於 Windows 的 Azure 金鑰保存庫 虛擬機擴充功能 VaultSecretGroup[]
windowsConfiguration 指定虛擬機器上的 Windows 作業系統設定。 WindowsConfiguration

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 虛擬機的模式,或與 OrchestraMode 為彈性的虛擬機擴展集相關聯的虛擬機。

可能的值包括:

ImageDefault - 會使用虛擬機的默認修補組態。

AutomaticByPlatform - 虛擬機將會由平台自動更新。 provisionVMAgent 屬性必須是 true
'AutomaticByPlatform'
'ImageDefault'

SshConfiguration

名稱 描述
publicKeys 用來向Linux型VM進行驗證的SSH公鑰清單。 SshPublicKey[]

SshPublicKey

名稱 描述
keyData 用來透過 ssh 向 VM 進行驗證的 SSH 公鑰憑證。 密鑰至少必須是 2048 位,且以 ssh-rsa 格式表示。

如需建立 ssh 金鑰,請參閱 [在 Azure 中的 Linux 和 Mac 上建立 Linux VM 的 SSH 金鑰]/azure/virtual-machines/linux/create-ssh-keys-detailed) 。
字串
path 指定儲存 ssh 公鑰之已建立 VM 上的完整路徑。 如果檔案已經存在,指定的金鑰就會附加至該檔案。 範例:/home/user/.ssh/authorized_keys 字串

VaultSecretGroup

名稱 描述
sourceVault 包含 VaultCertificates 中所有憑證之 金鑰保存庫 的相對 URL。 SubResource
vaultCertificates SourceVault 中包含憑證的金鑰保存庫參考清單。 VaultCertificate[]

VaultCertificate

名稱 描述
certificateStore 針對 Windows VM,指定應該新增憑證之虛擬機上的證書存儲。 指定的證書存儲隱含地位於LocalMachine帳戶中。

針對Linux VM,憑證檔案會放在 /var/lib/waagent 目錄底下,而 X509 憑證檔案的檔名<為 UppercaseThumbprint.crt,而<私鑰則為 UppercaseThumbprint.prv>>。 這兩個檔案都是 .pem 格式。
字串
certificateUrl 這是已上傳至 金鑰保存庫 作為秘密之憑證的 URL。 如需將秘密新增至 金鑰保存庫,請參閱將密鑰或秘密新增至密鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼,其編碼方式為 UTF-8:

{
“data”:“{Base64-encoded-certificate}”,
“dataType”:“pfx”,
“password”:“{pfx-file-password}”
}
若要在虛擬機上安裝憑證,建議使用適用於Linux的 Azure 金鑰保存庫 虛擬機擴充功能適用於Windows的 Azure 金鑰保存庫 虛擬機擴充功能
字串

WindowsConfiguration

名稱 描述
additionalUnattendContent 指定可併入 Unattend.xml 檔案 (由 Windows 安裝程式使用) 的額外 Base-64 編碼 XML 格式資訊。 AdditionalUnattendContent[]
enableAutomaticUpdates 指出是否為 Windows 虛擬機啟用自動 匯報。 預設值為 true。

對於虛擬機擴展集,此屬性可以更新,且更新會在OS重新佈建上生效。
bool
patchSettings [預覽功能]指定與 Windows 上的 VM 客體修補相關的設定。 PatchSettings
provisionVMAgent 指出是否應該在虛擬機器上佈建虛擬機器代理程式。

當要求本文中未指定這個屬性時,預設行為是將它設定為 true。 這可確保 VM 代理程式已安裝在 VM 上,以便稍後將擴充功能新增至 VM。
bool
timeZone 指定虛擬機的時區。 例如“Pacific Standard Time”。

可能的值可以從 TimeZoneInfo.GetSystemTimeZones 傳回的時區 TimeZoneInfo.Id 值。
字串
winRM 指定 Windows 遠端管理接聽程式。 藉此將啟用遠端 Windows PowerShell。 WinRMConfiguration

AdditionalUnattendContent

名稱 描述
componentName 元件名稱。 目前唯一允許的值是 Microsoft-Windows-Shell-Setup。 'Microsoft-Windows-Shell-Setup'
內容 針對指定的路徑和元件,指定新增至 unattend.xml 檔案的 XML 格式內容。 XML 必須小於 4KB,而且必須包含要插入之設定或功能的根元素。 字串
passName 傳遞名稱。 目前唯一允許的值是 OobeSystem。 'OobeSystem'
settingName 指定要套用內容之設定的名稱。 可能的值為:FirstLogonCommands 和 AutoLogon。 'AutoLogon'
'FirstLogonCommands'

PatchSettings

名稱 描述
assessmentMode 指定 IaaS 虛擬機的 VM 客體修補評估模式。

可能的值包括:

ImageDefault - 您可以在虛擬機上控制修補程式評估的時間。

AutomaticByPlatform - 平臺會觸發定期修補評估。 屬性 provisionVMAgent 必須是 true。
'AutomaticByPlatform'
'ImageDefault'
enableHotpatching 可讓客戶修補其 Azure VM,而不需要重新啟動。 針對 enableHotpatching,'provisionVMAgent' 必須設定為 true,而且 'patchMode' 必須設定為 'AutomaticByPlatform'。 bool
patchMode 指定 VM 客體修補至 IaaS 虛擬機的模式,或與 OrchestraMode 為彈性的虛擬機擴展集相關聯的虛擬機。

可能的值包括:

手動 - 您可以控制將修補程式應用程式套用至虛擬機。 您可以在 VM 內手動套用修補程式來執行此動作。 在此模式中,自動更新會停用;屬性 WindowsConfiguration.enableAutomaticUpdates 必須為 false

AutomaticByOS - 作業系統會自動更新虛擬機。 WindowsConfiguration.enableAutomaticUpdates 屬性必須是 true。

AutomaticByPlatform - 虛擬機將會由平台自動更新。 provisionVMAgent 和 WindowsConfiguration.enableAutomaticUpdates 屬性必須是 true
'AutomaticByOS'
'AutomaticByPlatform'
'Manual'

WinRMConfiguration

名稱 描述
接聽程式 Windows 遠端管理接聽程式清單 WinRMListener[]

WinRMListener

名稱 描述
certificateUrl 這是已上傳至 金鑰保存庫 作為秘密之憑證的 URL。 如需將秘密新增至 金鑰保存庫,請參閱將密鑰或秘密新增至密鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼,其編碼方式為 UTF-8:

{
“data”:“{Base64-encoded-certificate}”,
“dataType”:“pfx”,
“password”:“{pfx-file-password}”
}
若要在虛擬機上安裝憑證,建議使用適用於Linux的 Azure 金鑰保存庫 虛擬機擴充功能適用於Windows的 Azure 金鑰保存庫 虛擬機擴充功能
字串
protocol 指定 WinRM 接聽程式的通訊協定。

可能的值包括:
http

https
'Http'
'Https'

VirtualMachineScaleSetVMProtectionPolicy

名稱 描述
protectFromScaleIn 表示虛擬機擴展集 VM 不應考慮在相應縮小作業期間刪除。 bool
protectFromScaleSetActions 指出模型更新或動作 (包括虛擬機擴展集上起始的相應縮小) ,不應套用至虛擬機擴展集 VM。 bool

SecurityProfile

名稱 描述
encryptionAtHost 這個屬性可由要求中的使用者用來啟用或停用虛擬機或虛擬機擴展集的主機加密。 這會啟用所有磁碟的加密,包括主機本身的資源/暫存磁碟。

默認值:除非資源的此屬性設定為 true,否則將會停用主機上的加密。
bool
securityType 指定虛擬機的 SecurityType。 它會設定為 TrustedLaunch 以啟用 UefiSettings。

默認值:除非此屬性設定為 TrustedLaunch,否則不會啟用 UefiSettings。
'TrustedLaunch'
uefiSettings 指定建立虛擬機時所使用的安全開機和 vTPM 等安全性設定。

API 版本下限:2020-12-01
UefiSettings

UefiSettings

名稱 描述
secureBootEnabled 指定是否應在虛擬機上啟用安全開機。

API 版本下限:2020-12-01
bool
vTpmEnabled 指定是否應在虛擬機上啟用 vTPM。

API 版本下限:2020-12-01
bool

StorageProfile

名稱 描述
dataDisks 指定用來將資料磁碟加入至虛擬機器的參數。

如需磁碟的詳細資訊,請參閱 關於 Azure 虛擬機的磁碟和 VHD
DataDisk[]
imageReference 指定要使用之映像的相關信息。 您可以指定平臺映像、市集映像或虛擬機映像的相關信息。 當您想要使用平臺映像、市集映像或虛擬機映像,但不會用於其他建立作業時,需要此元素。 ImageReference
osDisk 指定虛擬機所使用的作業系統磁碟相關信息。

如需磁碟的詳細資訊,請參閱 關於 Azure 虛擬機的磁碟和 VHD
OSDisk

DataDisk

名稱 描述
快取 指定快取需求。

可能的值包括:



ReadOnly

讀寫

預設值: 標準記憶體無。進階記憶體的 ReadOnly
'None'
'ReadOnly'
'ReadWrite'
createOption 指定虛擬機的建立方式。

可能的值包括:

附加 \u2013 當您使用特製化磁碟來建立虛擬機時,會使用此值。

FromImage \u2013 當您使用映射來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也會使用上述的 imageReference 元素。 如果您使用市集映射,您也會使用先前所述的 plan 元素。
'Attach'
'Empty'
'FromImage' (必要)
deleteOption 指定刪除 VM 時,是否應該刪除或卸離數據磁碟。

可能的值:

刪除 如果使用此值,則會在刪除 VM 時刪除資料磁碟。

分離 如果使用此值,則會在刪除 VM 之後保留資料磁碟。

預設值設定為 卸離
'Delete'
'Detach'
detachOption 指定要在中斷連結磁碟時使用的卸離行為,或已在從虛擬機中斷鏈接的過程中使用。 支援的值: ForceDetach

detachOption: ForceDetach 僅適用於受控數據磁碟。 如果先前的數據磁碟斷連結嘗試因為虛擬機發生意外失敗而未完成,但磁碟仍然未釋放,請使用強制卸離作為最後一個從 VM 強制卸離磁碟的選項。 使用這個卸離行為時,所有寫入可能都尚未排清。

此功能仍在預覽模式中,且 VirtualMachineScaleSet 不支援此功能。 強制將數據磁碟更新強制中斷連結至 『true』,以及設定 detachOption:『ForceDetach』。
'ForceDetach'
diskSizeGB 指定以 GB 為單位的空白資料磁碟大小。 此元素可用來覆寫虛擬機映像中的磁碟大小。

此值不能大於 1023 GB
int
image 來源使用者映像虛擬硬碟。 在連接至虛擬機之前,將會先複製虛擬硬碟。 如果提供SourceImage,目的地虛擬硬碟不得存在。 VirtualHardDisk
lun 指定數據磁碟的邏輯單位編號。 此值是用來識別 VM 內的數據磁碟,因此對於連結至 VM 的每個數據磁碟而言,都必須是唯一的。 int (必要)
ManagedDisk 受控磁碟參數。 ManagedDiskParameters
NAME 磁碟名稱。 字串
toBeDetached 指定數據磁碟是否正在從 VirtualMachine/VirtualMachineScaleset 中斷連結 bool
vhd 虛擬硬碟。 VirtualHardDisk
writeAcceleratorEnabled 指定是否應該在磁碟上啟用或停用 writeAccelerator。 bool

VirtualHardDisk

名稱 描述
uri 指定虛擬硬碟的 URI。 字串

ManagedDiskParameters

名稱 描述
diskEncryptionSet 指定受控磁碟的客戶受控磁碟加密集資源標識符。 DiskEncryptionSetParameters
id 資源標識碼 字串
storageAccountType 指定受控磁碟的記憶體帳戶類型。 注意:UltraSSD_LRS只能與數據磁碟搭配使用,它不能與OS磁碟搭配使用。 'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'
'UltraSSD_LRS'

DiskEncryptionSetParameters

名稱 描述
id 資源標識碼 字串

ImageReference

名稱 描述
id 資源標識碼 字串
供應項目 指定用來建立虛擬機的平臺映像或市集映像供應專案。 字串
publisher 映像發行者。 字串
sku 映像 SKU。 字串
version 指定用來建立虛擬機的平臺映像或 Marketplace 映像版本。 允許的格式為 Major.Minor.Build 或 'latest'。 主要、次要和組建都是十進位數。 指定「最新」以使用部署階段可用的最新映像版本。 即使您使用「最新」,即使有新版本可供使用,VM 映像也不會在部署時間之後自動更新。 字串

OSDisk

名稱 描述
快取 指定快取需求。

可能的值包括:



ReadOnly

讀寫

預設值:標準記憶體 。 進階記憶體的 ReadOnly
'None'
'ReadOnly'
'ReadWrite'
createOption 指定應如何建立虛擬機。

可能的值包括:

附加 \u2013 當您使用特製化磁碟來建立虛擬機時,會使用此值。

FromImage \u2013 當您使用映射來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也會使用上述的 imageReference 元素。 如果您使用 Marketplace 映射,則也會使用先前所述的 plan 元素。
'Attach'
'Empty'
需要 『FromImage』 ()
deleteOption 指定在 VM 刪除時應刪除或中斷連結 OS 磁碟。

可能的值:

刪除 如果使用此值,則會在刪除 VM 時刪除 OS 磁碟。

分離 如果使用此值,則會在刪除 VM 之後保留 os 磁碟。

預設值設定為 卸離。 若為暫時OS磁碟,預設值會設定為 Delete。 使用者無法變更暫時 OS 磁碟的刪除選項。
'Delete'
'Detach'
diffDiskSettings 指定虛擬機所使用作業系統磁碟的暫時磁碟設定。 DiffDiskSettings
diskSizeGB 指定以 GB 為單位的空白資料磁碟大小。 此元素可用來覆寫虛擬機映像中的磁碟大小。

此值不能大於 1023 GB
int
encryptionSettings 指定 OS 磁碟的加密設定。

最低 api-version:2015-06-15
DiskEncryptionSettings
image 來源使用者映像虛擬硬碟。 虛擬硬碟將會先複製,再連結至虛擬機。 如果提供SourceImage,目的地虛擬硬碟不得存在。 VirtualHardDisk
ManagedDisk 受控磁碟參數。 ManagedDiskParameters
NAME 磁碟名稱。 字串
osType 此屬性可讓您指定從使用者映像或特製化 VHD 建立 VM 時,磁碟包含的 OS 類型。

可能的值包括:

Windows

Linux
'Linux'
'Windows'
vhd 虛擬硬碟。 VirtualHardDisk
writeAcceleratorEnabled 指定是否應該在磁碟上啟用或停用 writeAccelerator。 bool

DiffDiskSettings

名稱 描述
選項 指定作業系統磁碟的暫時磁碟設定。 'Local'
放置 指定作業系統磁碟的暫時磁碟位置。

可能的值包括:

CacheDisk

ResourceDisk

默認值:如果已針對 VM 大小設定快 取Disk ,否則會使用 ResourceDisk

請參閱 /azure/virtual-machines/windows/size 和 Linux VM 的 VM 大小檔,請參閱 /azure/virtual-machines/linux/size 的 Windows VM 大小檔,以檢查哪些 VM 大小會公開快取磁碟。
'CacheDisk'
'ResourceDisk'

DiskEncryptionSettings

名稱 描述
diskEncryptionKey 指定磁碟加密金鑰的位置,這是 金鑰保存庫 秘密。 KeyVaultSecretReference
已啟用 指定是否應在虛擬機上啟用磁碟加密。 bool
keyEncryptionKey 指定 金鑰保存庫 中金鑰加密金鑰的位置。 KeyVaultKeyReference

KeyVaultSecretReference

名稱 描述
secretUrl 參考 金鑰保存庫 秘密的 URL。 字串 (必要)
sourceVault 包含秘密之 金鑰保存庫的相對 URL。 必要子資源 ()

KeyVaultKeyReference

名稱 描述
keyUrl 參考 金鑰保存庫 中金鑰加密金鑰的 URL。 字串 (必要)
sourceVault 包含金鑰之 金鑰保存庫 的相對 URL。 必要子資源 ()

Terraform (AzAPI 提供者) 資源定義

virtualMachineScaleSets/virtualmachines 資源類型可以使用目標作業來部署:

  • 資源群組

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄

資源格式

若要建立 Microsoft.Compute/virtualMachineScaleSets/virtualmachines 資源,請將下列 Terraform 新增至您的範本。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Compute/virtualMachineScaleSets/virtualmachines@2021-04-01"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  body = jsonencode({
    properties = {
      additionalCapabilities = {
        ultraSSDEnabled = bool
      }
      availabilitySet = {
        id = "string"
      }
      diagnosticsProfile = {
        bootDiagnostics = {
          enabled = bool
          storageUri = "string"
        }
      }
      hardwareProfile = {
        vmSize = "string"
      }
      licenseType = "string"
      networkProfile = {
        networkApiVersion = "2020-11-01"
        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
            }
          }
        ]
      }
      networkProfileConfiguration = {
        networkInterfaceConfigurations = [
          {
            id = "string"
            name = "string"
            properties = {
              deleteOption = "string"
              dnsSettings = {
                dnsServers = [
                  "string"
                ]
              }
              enableAcceleratedNetworking = bool
              enableFpga = bool
              enableIPForwarding = bool
              ipConfigurations = [
                {
                  id = "string"
                  name = "string"
                  properties = {
                    applicationGatewayBackendAddressPools = [
                      {
                        id = "string"
                      }
                    ]
                    applicationSecurityGroups = [
                      {
                        id = "string"
                      }
                    ]
                    loadBalancerBackendAddressPools = [
                      {
                        id = "string"
                      }
                    ]
                    loadBalancerInboundNatPools = [
                      {
                        id = "string"
                      }
                    ]
                    primary = bool
                    privateIPAddressVersion = "string"
                    publicIPAddressConfiguration = {
                      name = "string"
                      properties = {
                        deleteOption = "string"
                        dnsSettings = {
                          domainNameLabel = "string"
                        }
                        idleTimeoutInMinutes = int
                        ipTags = [
                          {
                            ipTagType = "string"
                            tag = "string"
                          }
                        ]
                        publicIPAddressVersion = "string"
                        publicIPPrefix = {
                          id = "string"
                        }
                      }
                      sku = {
                        name = "string"
                        tier = "string"
                      }
                    }
                    subnet = {
                      id = "string"
                    }
                  }
                }
              ]
              networkSecurityGroup = {
                id = "string"
              }
              primary = bool
            }
          }
        ]
      }
      osProfile = {
        adminPassword = "string"
        adminUsername = "string"
        allowExtensionOperations = bool
        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"
              }
            ]
          }
        }
      }
      protectionPolicy = {
        protectFromScaleIn = bool
        protectFromScaleSetActions = bool
      }
      securityProfile = {
        encryptionAtHost = bool
        securityType = "TrustedLaunch"
        uefiSettings = {
          secureBootEnabled = bool
          vTpmEnabled = bool
        }
      }
      storageProfile = {
        dataDisks = [
          {
            caching = "string"
            createOption = "string"
            deleteOption = "string"
            detachOption = "ForceDetach"
            diskSizeGB = int
            image = {
              uri = "string"
            }
            lun = int
            managedDisk = {
              diskEncryptionSet = {
                id = "string"
              }
              id = "string"
              storageAccountType = "string"
            }
            name = "string"
            toBeDetached = bool
            vhd = {
              uri = "string"
            }
            writeAcceleratorEnabled = bool
          }
        ]
        imageReference = {
          id = "string"
          offer = "string"
          publisher = "string"
          sku = "string"
          version = "string"
        }
        osDisk = {
          caching = "string"
          createOption = "string"
          deleteOption = "string"
          diffDiskSettings = {
            option = "Local"
            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"
            storageAccountType = "string"
          }
          name = "string"
          osType = "string"
          vhd = {
            uri = "string"
          }
          writeAcceleratorEnabled = bool
        }
      }
      userData = "string"
    }
    plan = {
      name = "string"
      product = "string"
      promotionCode = "string"
      publisher = "string"
    }
  })
}

屬性值

virtualMachineScaleSets/virtualmachines

名稱 描述
類型 資源類型 “Microsoft.Compute/virtualMachineScaleSets/virtualmachines@2021-04-01”
NAME 資源名稱 字串 (必要)
location 資源位置 字串 (必要)
parent_id 此資源之父系的資源標識碼。 類型資源的標識碼: virtualMachineScaleSets
tags 資源標籤 標記名稱和值的字典。
方案 指定用來建立虛擬機之 Marketplace 映像的相關信息。 此元素僅用於市集映像。 您必須先啟用映像以程序設計方式使用,才能從 API 使用市集映射。 在 Azure 入口網站 中,尋找您想要使用的市集映射,然後按兩下 [想要以程序設計方式部署],[開始使用] -> 。 輸入任何必要資訊,然後按兩下 [ 儲存]。 方案
properties 描述虛擬機擴展集虛擬機的屬性。 VirtualMachineScaleSetVMProperties

計畫

名稱 描述
NAME 方案標識碼。 字串
產品 指定市集中映像的產品。 這個值與 imageReference 元素下的 Offer 相同。 字串
promotionCode 促銷碼。 字串
publisher 發行者標識碼。 字串

VirtualMachineScaleSetVMProperties

名稱 描述
additionalCapabilities 指定擴展集中虛擬機上啟用或停用的其他功能。 例如:虛擬機是否能夠支援使用UltraSSD_LRS記憶體帳戶類型鏈接受控數據磁碟。 AdditionalCapabilities
availabilitySet 指定虛擬機應指派給的可用性設定組相關信息。 在相同可用性設定組中指定的虛擬機器會配置到不同的節點,以便將可用性最大化。 如需可用性設定組的詳細資訊,請參閱 可用性設定組概觀

如需 Azure 計劃性維護的詳細資訊,請參閱 Azure 中 虛擬機器 的維護和更新

目前,VM 只能在建立時新增至可用性設定組。 現有的 VM 無法新增至可用性設定組。
SubResource
diagnosticsProfile 指定開機診斷設定狀態。

API 版本下限:2015-06-15。
DiagnosticsProfile
hardwareProfile 指定虛擬機器的硬體設定。 HardwareProfile
licenseType 指定正在使用的映像或磁碟是內部部署授權的。

Windows Server 操作系統的可能值為:

Windows_Client

Windows_Server

Linux Server 操作系統的可能值為:

RHEL) 的 RHEL_BYOS (

SUSE) 的 SLES_BYOS (

如需詳細資訊,請參閱 適用於 Windows Server 的 Azure Hybrid Use Benefit

適用於 Linux Server 的 Azure 混合式使用權益

API 版本下限:2015-06-15
字串
networkProfile 指定虛擬機器的網路介面。 NetworkProfile
networkProfileConfiguration 指定虛擬機的網路配置檔組態。 VirtualMachineScaleSetVMNetworkProfileConfiguration
osProfile 指定虛擬機器的作業系統設定。 OSProfile
protectionPolicy 指定虛擬機的保護原則。 VirtualMachineScaleSetVMProtectionPolicy
securityProfile 指定虛擬機的安全性相關配置檔設定。 SecurityProfile
storageProfile 指定虛擬機器磁碟的儲存體設定。 StorageProfile
userData VM 的 UserData,必須是base-64 編碼。 客戶不應在此傳遞任何秘密。

API 版本下限:2021-03-01
字串

AdditionalCapabilities

名稱 描述
ultraSSDEnabled 旗標,可啟用或停用在 VM 或 VMSS 上具有一或多個具有 UltraSSD_LRS記憶體帳戶類型的受控數據磁碟。 只有啟用此屬性時,才能將具有記憶體帳戶類型的受控磁碟UltraSSD_LRS新增至虛擬機或虛擬機擴展集。 bool

SubResource

名稱 描述
id 資源標識碼 字串

DiagnosticsProfile

名稱 描述
bootDiagnostics 開機診斷是一項偵錯功能,可讓您檢視控制台輸出和螢幕快照來診斷 VM 狀態。

您可以輕鬆地檢視主控台記錄的輸出。

Azure 也可讓您從 Hypervisor 查看 VM 的螢幕快照。
BootDiagnostics

BootDiagnostics

名稱 描述
已啟用 虛擬機上是否應該啟用開機診斷。 bool
storageUri 用來放置主控台輸出和螢幕快照的記憶體帳戶 URI。

如果在啟用開機診斷時未指定 storageUri,則會使用受控記憶體。
字串

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_A2_v2”
“Standard_A2m_v2”
“Standard_A3”
“Standard_A4”
“Standard_A4_v2”
“Standard_A4m_v2”
“Standard_A5”
“Standard_A6”
“Standard_A7”
“Standard_A8”
“Standard_A8_v2”
“Standard_A8m_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_D16_v3”
“Standard_D16s_v3”
“Standard_D1_v2”
“Standard_D2”
“Standard_D2_v2”
“Standard_D2_v3”
“Standard_D2s_v3”
“Standard_D3”
“Standard_D32_v3”
“Standard_D32s_v3”
“Standard_D3_v2”
“Standard_D4”
“Standard_D4_v2”
“Standard_D4_v3”
“Standard_D4s_v3”
“Standard_D5_v2”
“Standard_D64_v3”
“Standard_D64s_v3”
“Standard_D8_v3”
“Standard_D8s_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_E16_v3”
“Standard_E16s_v3”
“Standard_E2_v3”
“Standard_E2s_v3”
“Standard_E32-16_v3”
“Standard_E32-8s_v3”
“Standard_E32_v3”
“Standard_E32s_v3”
“Standard_E4_v3”
“Standard_E4s_v3”
“Standard_E64-16s_v3”
“Standard_E64-32s_v3”
“Standard_E64_v3”
“Standard_E64s_v3”
“Standard_E8_v3”
“Standard_E8s_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”

NetworkProfile

名稱 描述
networkApiVersion 指定在網路介面組態中建立網路資源時所使用的 Microsoft.Network API 版本 "2020-11-01"
networkInterfaceConfigurations 指定將用來建立虛擬機網路資源的網路設定。 VirtualMachineNetworkInterfaceConfiguration[]
networkInterfaces 指定與虛擬機相關聯之網路介面的資源標識符清單。 NetworkInterfaceReference[]

VirtualMachineNetworkInterfaceConfiguration

名稱 描述
NAME 網路介面組態名稱。 字串 (必要)
properties 描述虛擬機網路配置檔的IP組態。 VirtualMachineNetworkInterfaceConfigurationPropertie...

VirtualMachineNetworkInterfaceConfigurationPropertie...

名稱 描述
deleteOption 指定刪除 VM 時網路介面會發生什麼事 "Delete"
“Detach”
dnsSettings 要套用在網路介面上的 DNS 設定。 VirtualMachineNetworkInterfaceDnsSettingsConfigurati...
dscpConfiguration SubResource
enableAcceleratedNetworking 指定網路介面是否已啟用加速網路功能。 bool
enableFpga 指定網路介面是否已啟用 FPGA 網路功能。 bool
enableIPForwarding 是否在此 NIC 上啟用 IP 轉送。 bool
ipConfigurations 指定網路介面的IP組態。 VirtualMachineNetworkInterfaceIPConfiguration[] (必要)
networkSecurityGroup 網路安全組。 SubResource
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool

VirtualMachineNetworkInterfaceDnsSettingsConfigurati...

名稱 描述
dnsServers DNS 伺服器 IP 位址清單 string[]

VirtualMachineNetworkInterfaceIPConfiguration

名稱 描述
NAME IP 組態名稱。 需要字串 ()
properties 描述虛擬機網路介面IP組態屬性。 VirtualMachineNetworkInterfaceIPConfigurationPropert...

VirtualMachineNetworkInterfaceIPConfigurationPropert...

名稱 描述
applicationGatewayBackendAddressPools 指定應用程式閘道後端位址池的參考數位。 虛擬機可以參考多個應用程式閘道的後端位址池。 多部虛擬機無法使用相同的應用程式閘道。 SubResource[]
applicationSecurityGroups 指定應用程式安全組的參考陣列。 SubResource[]
loadBalancerBackendAddressPools 指定負載平衡器後端位址池的參考陣列。 虛擬機可以參考一個公用和一個內部負載平衡器的後端位址池。 [多部虛擬機無法使用相同的基本 SKU 負載平衡器]。 SubResource[]
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool
privateIPAddressVersion 從 Api-Version 2017-03-30 起提供,它代表特定 ipconfiguration 是 IPv4 或 IPv6。 預設值會採用為 IPv4。 可能的值為:'IPv4' 和 'IPv6'。 “IPv4”
“IPv6”
publicIPAddressConfiguration publicIPAddressConfiguration。 VirtualMachinePublicIPAddressConfiguration
子網路 指定子網的識別碼。 SubResource

VirtualMachinePublicIPAddressConfiguration

名稱 描述
NAME publicIP 位址組態名稱。 需要字串 ()
properties 描述虛擬機IP設定的PublicIPAddress設定 VirtualMachinePublicIPAddressConfigurationProperties
sku 描述公用IP Sku PublicIPAddressSku

VirtualMachinePublicIPAddressConfigurationProperties

名稱 描述
deleteOption 指定刪除 VM 時,公用 IP 位址會發生什麼情況 "Delete"
“Detach”
dnsSettings 要套用在 publicIP 位址 上的 DNS 設定。 VirtualMachinePublicIPAddressDnsSettingsConfiguratio...
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

VirtualMachinePublicIPAddressDnsSettingsConfiguratio...

名稱 描述
domainNameLabel 將建立之 PublicIPAddress 資源的功能變數名稱標籤前置詞。 產生的名稱標籤是功能變數名稱標籤和 vm 網路設定檔唯一識別碼的串連。 字串 (必要)

VirtualMachineIpTag

名稱 描述
ipTagType IP 標籤類型。 範例:FirstPartyUsage。 字串
標籤 與公用IP相關聯的IP標籤。 範例:SQL、記憶體等。 字串

PublicIPAddressSku

名稱 描述
NAME 指定公用IP SKU 名稱 "Basic"
“Standard”
tier 指定公用IP SKU層 “Global”
“區域”

NetworkInterfaceReference

名稱 描述
id 資源標識碼 字串
properties 描述網路介面參考屬性。 NetworkInterfaceReferenceProperties

NetworkInterfaceReferenceProperties

名稱 描述
deleteOption 指定刪除 VM 時網路介面會發生什麼事 "Delete"
“Detach”
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool

VirtualMachineScaleSetVMNetworkProfileConfiguration

名稱 描述
networkInterfaceConfigurations 網路組態的清單。 VirtualMachineScaleSetNetworkConfiguration[]

VirtualMachineScaleSetNetworkConfiguration

名稱 描述
id 資源標識碼 字串
NAME 網路組態名稱。 字串 (必要)
properties 描述虛擬機擴展集網路配置檔的IP組態。 VirtualMachineScaleSetNetworkConfigurationProperties

VirtualMachineScaleSetNetworkConfigurationProperties

名稱 描述
deleteOption 指定刪除 VM 時網路介面會發生什麼事 "Delete"
“Detach”
dnsSettings 要套用在網路介面上的 DNS 設定。 VirtualMachineScaleSetNetworkConfigurationDnsSetting...
enableAcceleratedNetworking 指定網路介面是否已啟用加速網路功能。 bool
enableFpga 指定網路介面是否已啟用 FPGA 網路功能。 bool
enableIPForwarding 是否在此 NIC 上啟用 IP 轉送。 bool
ipConfigurations 指定網路介面的IP組態。 VirtualMachineScaleSetIPConfiguration[] (必要)
networkSecurityGroup 網路安全組。 SubResource
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool

VirtualMachineScaleSetNetworkConfigurationDnsSetting...

名稱 描述
dnsServers DNS 伺服器 IP 位址清單 string[]

VirtualMachineScaleSetIPConfiguration

名稱 描述
id 資源標識碼 字串
NAME IP 組態名稱。 需要字串 ()
properties 描述虛擬機擴展集網路配置檔的IP組態屬性。 VirtualMachineScaleSetIPConfigurationProperties

VirtualMachineScaleSetIPConfigurationProperties

名稱 描述
applicationGatewayBackendAddressPools 指定應用程式閘道後端位址池的參考數位。 擴展集可以參考多個應用程式閘道的後端位址池。 多個擴展集無法使用相同的應用程式閘道。 SubResource[]
applicationSecurityGroups 指定應用程式安全組的參考陣列。 SubResource[]
loadBalancerBackendAddressPools 指定負載平衡器後端位址池的參考陣列。 擴展集可以參考一個公用和一個內部負載平衡器的後端位址池。 多個擴展集無法使用相同的基本 SKU 負載平衡器。 SubResource[]
loadBalancerInboundNatPools 指定負載平衡器輸入 Nat 集區的參考陣列。 擴展集可以參考一個公用和一個內部負載平衡器的輸入 nat 集區。 多個擴展集無法使用相同的基本 SKU 負載平衡器。 SubResource[]
primary 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool
privateIPAddressVersion 從 Api-Version 2017-03-30 起提供,它代表特定 ipconfiguration 是 IPv4 或 IPv6。 預設值會採用為 IPv4。 可能的值為:'IPv4' 和 'IPv6'。 “IPv4”
“IPv6”
publicIPAddressConfiguration publicIPAddressConfiguration。 VirtualMachineScaleSetPublicIPAddressConfiguration
子網路 指定子網的識別碼。 ApiEntityReference

VirtualMachineScaleSetPublicIPAddressConfiguration

名稱 描述
NAME publicIP 位址組態名稱。 需要字串 ()
properties 描述虛擬機擴展集IP組態的PublicIPAddress設定 VirtualMachineScaleSetPublicIPAddressConfigurationPr...
sku 描述公用IP Sku PublicIPAddressSku

VirtualMachineScaleSetPublicIPAddressConfigurationPr...

名稱 描述
deleteOption 指定刪除 VM 時公用 IP 會發生什麼事 "Delete"
“Detach”
dnsSettings 要套用在 publicIP 位址 上的 DNS 設定。 VirtualMachineScaleSetPublicIPAddressConfigurationDn...
idleTimeoutInMinutes 公用IP位址的閒置逾時。 int
ipTags 與公用IP位址相關聯的IP標籤清單。 VirtualMachineScaleSetIpTag[]
publicIPAddressVersion 從 Api-Version 2019-07-01 開始提供,它代表特定 ipconfiguration 是 IPv4 或 IPv6。 預設值會採用為 IPv4。 可能的值為:'IPv4' 和 'IPv6'。 “IPv4”
“IPv6”
publicIPPrefix 要從中配置 publicIP 位址的 PublicIPPrefix。 SubResource

VirtualMachineScaleSetPublicIPAddressConfigurationDn...

名稱 描述
domainNameLabel 功能變數名稱標籤。功能變數名稱標籤和 VM 索引的串連將會是將建立之 PublicIPAddress 資源的功能變數名稱標籤 需要字串 ()

VirtualMachineScaleSetIpTag

名稱 描述
ipTagType IP 標籤類型。 範例:FirstPartyUsage。 字串
標籤 與公用IP相關聯的IP標籤。 範例:SQL、記憶體等。 字串

ApiEntityReference

名稱 描述
id /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... 形式的 ARM 資源標識符 字串

OSProfile

名稱 描述
adminPassword 指定系統管理員帳戶的密碼。

Windows) 長度下限 (: 8 個字元

Linux) 長度下限 (: 6 個字元

Windows) 長度上限 (: 123 個字元

Linux) 長度上限 (: 72 個字元

複雜度需求: 下列 4 個條件中需要滿足 3 個條件
字元較低
具有大字元
具有數位
具有特殊字元 (Regex 比對 [\W_])

不允許的值: “abc@123”、“P@$$w 0rd”、“P@ssw0rd”、“P@ssword123”、“Pa$$word”、“pass@word1”、“Password!”、“Password1”、“Password22”、“P@ssword123”、“pa$$word”、“Password!”、“Password1”、“Password22”、“P@ssword123!”

如需重設密碼,請參閱 如何在 Windows VM 中重設遠端桌面服務或其登入密碼

如需重設根密碼,請參閱 使用 VMAccess 擴充功能管理使用者、SSH 及檢查或修復 Azure Linux VM 上的磁碟
字串

約束:
敏感性值。 以安全參數的形式傳入。
adminUsername 指定系統管理員帳戶的名稱。

建立 VM 之後,就無法更新此屬性。

僅限 Windows 的限制: 無法結束於 “.”

不允許的值: “administrator”、“admin”、“user”、“user1”、“test”、“user2”、“test1”、“user3”、“admin1”、“1”、 “123”、“a”、“actuser”、“adm”、“admin2”、“aspnet”、“backup”、“console”、“david”、“guest”、“john”、“owner”、“root”、“server”、“sql”、“support”、“support_388945a0”、“sys”、“test2”、“test3”、“user4”、“user5”。

Linux) 長度下限 (: 1 個字元

Linux) 長度上限 (: 64 個字元

Windows) 長度上限 () : 20 個字元。
字串
allowExtensionOperations 指定是否應在虛擬機上允許擴充功能作業。

只有在虛擬機上沒有擴充功能時,才能將此設定為 False。
bool
computerName 指定虛擬機的主機OS名稱。

建立 VM 之後,就無法更新此名稱。

Windows) (長度上限: 15 個字元

Linux) 長度上限 (: 64 個字元。

如需命名慣例和限制,請參閱 Azure 基礎結構服務實作指導方針
字串
customData 指定自訂資料的 Base-64 編碼字串。 Base-64 編碼字串會解碼成二進位陣列而儲存為虛擬機器上的檔案。 二進位陣列的長度上限是 65535 個位元組。

注意:請勿在 customData 屬性中傳遞任何秘密或密碼

建立 VM 之後,就無法更新此屬性。

customData 會傳遞至要儲存為檔案的 VM,如需詳細資訊,請參閱 Azure VM 上的自定義數據

如需針對Linux VM使用 cloud-init,請參閱在建立期間使用cloud-init 自定義Linux VM
字串
linuxConfiguration 指定虛擬機上的Linux作業系統設定。

如需支援的Linux發行版清單,請參閱 Azure-Endorsed 發行版上的Linux
LinuxConfiguration
requireGuestProvisionSignal 指定是否需要客體布建訊號,才能推斷虛擬機的布建成功。 注意:此屬性僅供私人測試使用,且所有客戶不得將屬性設定為 false。 bool
密碼 指定應該安裝到虛擬機器的憑證集。 若要在虛擬機上安裝憑證,建議使用適用於Linux的 Azure 金鑰保存庫 虛擬機擴充功能適用於Windows的 Azure 金鑰保存庫 虛擬機擴充功能 VaultSecretGroup[]
windowsConfiguration 指定虛擬機器上的 Windows 作業系統設定。 WindowsConfiguration

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”

SshConfiguration

名稱 描述
publicKeys 用來向Linux型VM進行驗證的SSH公鑰清單。 SshPublicKey[]

SshPublicKey

名稱 描述
keyData 用來透過 ssh 向 VM 進行驗證的 SSH 公鑰憑證。 密鑰至少必須是 2048 位,且格式為 ssh-rsa。

如需建立 ssh 金鑰,請參閱 [在 Azure 中建立 Linux 和 Mac 上的 Linux VM SSH 密鑰]/azure/virtual-machines/linux/create-ssh-keys-detailed) 。
字串
path 指定儲存 ssh 公鑰的已建立 VM 上的完整路徑。 如果檔案已經存在,指定的金鑰就會附加至該檔案。 範例:/home/user/.ssh/authorized_keys 字串

VaultSecretGroup

名稱 描述
sourceVault 包含 VaultCertificates 中所有憑證之 金鑰保存庫 的相對 URL。 SubResource
vaultCertificates SourceVault 中包含憑證的金鑰保存庫參考清單。 VaultCertificate[]

VaultCertificate

名稱 描述
certificateStore 針對 Windows VM,指定應在其中新增憑證之虛擬機上的證書存儲。 指定的證書存儲會隱含地在 LocalMachine 帳戶中。

針對Linux VM,憑證檔案會放在 /var/lib/waagent 目錄底下,而 X509 憑證檔案的檔名 <為 UppercaseThumbprint.crt>, <而私鑰則為 UppercaseThumbprint.prv>。 這兩個檔案都是 .pem 格式。
字串
certificateUrl 這是已上傳至 金鑰保存庫 作為秘密之憑證的 URL。 如需將秘密新增至 金鑰保存庫,請參閱將密鑰或秘密新增至密鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼方式,此物件是以 UTF-8 編碼:

{
“data”:“{Base64-encoded-certificate}”,
“dataType”:“pfx”,
“password”:“{pfx-file-password}”
}
若要在虛擬機上安裝憑證,建議使用適用於Linux的 Azure 金鑰保存庫 虛擬機擴充功能適用於Windows的 Azure 金鑰保存庫 虛擬機擴充功能
字串

WindowsConfiguration

名稱 描述
additionalUnattendContent 指定可併入 Unattend.xml 檔案 (由 Windows 安裝程式使用) 的額外 Base-64 編碼 XML 格式資訊。 AdditionalUnattendContent[]
enableAutomaticUpdates 指出是否為 Windows 虛擬機啟用自動 匯報。 預設值為 true。

對於虛擬機擴展集,此屬性可以更新,更新將會在OS重新佈建上生效。
bool
patchSettings [預覽功能]指定與 Windows 上的 VM 客體修補相關的設定。 PatchSettings
provisionVMAgent 指出是否應該在虛擬機器上佈建虛擬機器代理程式。

當要求本文中未指定這個屬性時,預設行為是將它設定為 true。 這可確保 VM 代理程式已安裝在 VM 上,以便稍後將擴充功能新增至 VM。
bool
timeZone 指定虛擬機的時區。 例如“Pacific Standard Time”。

可能的值可以從 TimeZoneInfo.GetSystemTimeZones 傳回的時區 TimeZoneInfo.Id 值。
字串
winRM 指定 Windows 遠端管理接聽程式。 藉此將啟用遠端 Windows PowerShell。 WinRMConfiguration

AdditionalUnattendContent

名稱 描述
componentName 元件名稱。 目前唯一允許的值是 Microsoft-Windows-Shell-Setup。 “Microsoft-Windows-Shell-Setup”
內容 針對指定的路徑和元件,指定新增至 unattend.xml 檔案的 XML 格式化內容。 XML 必須小於 4KB,而且必須包含要插入之設定或功能的根元素。 字串
passName 傳遞名稱。 目前唯一允許的值是 OobeSystem。 “OobeSystem”
settingName 指定要套用內容之設定的名稱。 可能的值為:FirstLogonCommands 和 AutoLogon。 “AutoLogon”
“FirstLogonCommands”

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 - 作業系統會自動更新虛擬機。 屬性 WindowsConfiguration.enableAutomaticUpdates 必須為 true。

AutomaticByPlatform - 虛擬機將會由平台自動更新。 provisionVMAgent 和 WindowsConfiguration.enableAutomaticUpdates 屬性必須為 true
“AutomaticByOS”
“AutomaticByPlatform”
“手動”

WinRMConfiguration

名稱 描述
接聽程式 Windows 遠端管理接聽程式清單 WinRMListener[]

WinRMListener

名稱 描述
certificateUrl 這是已上傳至 金鑰保存庫 為秘密之憑證的 URL。 如需將秘密新增至 金鑰保存庫,請參閱將密鑰或秘密新增至密鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼方式,此物件是以 UTF-8 編碼:

{
“data”:“{Base64-encoded-certificate}”,
“dataType”:“pfx”,
“password”:“{pfx-file-password}”
}
若要在虛擬機上安裝憑證,建議使用適用於Linux的 Azure 金鑰保存庫 虛擬機擴充功能適用於Windows的 Azure 金鑰保存庫 虛擬機擴充功能
字串
protocol 指定 WinRM 接聽程式的通訊協定。

可能的值包括:
http

https
“Http”
“Https”

VirtualMachineScaleSetVMProtectionPolicy

名稱 描述
protectFromScaleIn 表示虛擬機擴展集 VM 不應在相應縮小作業期間視為要刪除。 bool
protectFromScaleSetActions 指出模型更新或動作 (包括虛擬機擴展集上起始的相應縮小) 不應套用至虛擬機擴展集 VM。 bool

SecurityProfile

名稱 描述
encryptionAtHost 用戶可以在要求中使用此屬性,以啟用或停用虛擬機或虛擬機擴展集的主機加密。 這會啟用所有磁碟的加密,包括主機本身的資源/暫存磁碟。

默認值:除非資源的此屬性設定為 true,否則將會停用主機上的加密。
bool
securityType 指定虛擬機的 SecurityType。 它會設定為 TrustedLaunch 以啟用 UefiSettings。

默認值:除非此屬性設定為 TrustedLaunch,否則不會啟用 UefiSettings。
“TrustedLaunch”
uefiSettings 指定安全性設定,例如建立虛擬機時所使用的安全開機和 vTPM。

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

UefiSettings

名稱 描述
secureBootEnabled 指定是否應在虛擬機上啟用安全開機。

最低 API 版本:2020-12-01
bool
vTpmEnabled 指定是否應在虛擬機上啟用 vTPM。

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

StorageProfile

名稱 描述
dataDisks 指定用來將資料磁碟加入至虛擬機器的參數。

如需磁碟的詳細資訊,請參閱 關於 Azure 虛擬機的磁碟和 VHD
DataDisk[]
imageReference 指定要使用之映像的相關信息。 您可以指定平臺映像、Marketplace 映像或虛擬機映射的相關信息。 當您想要使用平臺映像、市集映像或虛擬機映像,但不會用於其他建立作業時,需要此元素。 ImageReference
osDisk 指定虛擬機所使用的作業系統磁碟相關信息。

如需磁碟的詳細資訊,請參閱 關於 Azure 虛擬機的磁碟和 VHD
OSDisk

DataDisk

名稱 描述
快取 指定快取需求。

可能的值包括:



ReadOnly

讀寫

預設值: 標準記憶體無。進階記憶體的 ReadOnly
"None"
“ReadOnly”
“ReadWrite”
createOption 指定應如何建立虛擬機。

可能的值包括:

附加 \u2013 當您使用特製化磁碟來建立虛擬機時,會使用此值。

FromImage \u2013 當您使用映射來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也會使用上述的 imageReference 元素。 如果您使用 Marketplace 映射,則也會使用先前所述的 plan 元素。
“附加”
"Empty"
“FromImage” (必要)
deleteOption 指定在 VM 刪除時應該刪除或中斷連結資料磁碟。

可能的值:

刪除 如果使用此值,則會在刪除 VM 時刪除資料磁碟。

分離 如果使用此值,則會在刪除 VM 之後保留資料磁碟。

預設值設定為 卸離
"Delete"
“Detach”
detachOption 指定卸離磁碟時所要使用的卸離行為,或已在從虛擬機中斷鏈接的過程中使用。 支援的值: ForceDetach

detachOption: ForceDetach 僅適用於受控數據磁碟。 如果先前的數據磁碟斷連結嘗試因為虛擬機發生非預期的失敗而未完成,但磁碟仍然未釋放,請使用強制中斷連結作為最後一個從 VM 中斷連結磁碟的最後一個選項。 使用此卸離行為時,可能不會排清所有寫入。

此功能仍處於預覽模式,且 VirtualMachineScaleSet 不支援此功能。 若要強制中斷數據磁碟更新至BeDetached 為 『true』,以及設定 detachOption: 'ForceDetach'。
“ForceDetach”
diskSizeGB 指定以 GB 為單位的空白資料磁碟大小。 此元素可用來覆寫虛擬機映像中的磁碟大小。

此值不能大於 1023 GB
int
image 來源使用者映像虛擬硬碟。 虛擬硬碟將會先複製,再連結至虛擬機。 如果提供SourceImage,目的地虛擬硬碟不得存在。 VirtualHardDisk
lun 指定數據磁碟的邏輯單元編號。 此值是用來識別 VM 內的數據磁碟,因此對於連結至 VM 的每個數據磁碟而言,都必須是唯一的。 int (必要)
ManagedDisk 受控磁碟參數。 ManagedDiskParameters
NAME 磁碟名稱。 字串
toBeDetached 指定數據磁碟是否正在從 VirtualMachine/VirtualMachineScaleset 中斷連結 bool
vhd 虛擬硬碟。 VirtualHardDisk
writeAcceleratorEnabled 指定是否應該在磁碟上啟用或停用 writeAccelerator。 bool

VirtualHardDisk

名稱 描述
uri 指定虛擬硬碟的 URI。 字串

ManagedDiskParameters

名稱 描述
diskEncryptionSet 指定受控磁碟的客戶受控磁碟加密集資源標識符。 DiskEncryptionSetParameters
id 資源標識碼 字串
storageAccountType 指定受控磁碟的記憶體帳戶類型。 注意:UltraSSD_LRS只能與數據磁碟搭配使用,它不能與OS磁碟搭配使用。 "Premium_LRS"
“Premium_ZRS”
"StandardSSD_LRS"
“StandardSSD_ZRS”
"Standard_LRS"
“UltraSSD_LRS”

DiskEncryptionSetParameters

名稱 描述
id 資源標識碼 字串

ImageReference

名稱 描述
id 資源標識碼 字串
供應項目 指定用來建立虛擬機的平臺映像或 Marketplace 映像供應專案。 字串
publisher 映像發行者。 字串
sku 映像 SKU。 字串
version 指定用來建立虛擬機的平臺映像或 Marketplace 映像版本。 允許的格式為 Major.Minor.Build 或 'latest'。 主要、次要和組建是十進位數。 指定「最新」以使用部署階段可用的最新映像版本。 即使您使用「最新」,即使有新版本可供使用,VM 映像也不會在部署時間之後自動更新。 字串

OSDisk

名稱 描述
快取 指定快取需求。

可能的值包括:



ReadOnly

讀寫

預設值: 標準記憶體無 。 進階記憶體的 ReadOnly
"None"
“ReadOnly”
“ReadWrite”
createOption 指定虛擬機的建立方式。

可能的值包括:

附加 \u2013 當您使用特製化磁碟來建立虛擬機時,會使用此值。

FromImage \u2013 當您使用映射來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也會使用上述的 imageReference 元素。 如果您使用市集映射,您也會使用先前所述的 plan 元素。
“Attach”
"Empty"
“FromImage” (必要)
deleteOption 指定在 VM 刪除時,是否應該刪除或中斷連結 OS 磁碟。

可能的值:

刪除 如果使用此值,則會在刪除 VM 時刪除 OS 磁碟。

分離 如果使用此值,則會在刪除 VM 之後保留 os 磁碟。

預設值設定為 卸離。 若為暫時OS磁碟,預設值會設定為 Delete。 使用者無法變更暫時 OS 磁碟的刪除選項。
"Delete"
“Detach”
diffDiskSettings 指定虛擬機所使用作業系統磁碟的暫時磁碟設定。 DiffDiskSettings
diskSizeGB 指定以 GB 為單位的空白資料磁碟大小。 此元素可用來覆寫虛擬機映像中的磁碟大小。

此值不能大於 1023 GB
int
encryptionSettings 指定 OS 磁碟的加密設定。

最低 api-version:2015-06-15
DiskEncryptionSettings
image 來源使用者映像虛擬硬碟。 虛擬硬碟將會先複製,再連結至虛擬機。 如果提供SourceImage,目的地虛擬硬碟不得存在。 VirtualHardDisk
ManagedDisk 受控磁碟參數。 ManagedDiskParameters
NAME 磁碟名稱。 字串
osType 此屬性可讓您指定從使用者映像或特製化 VHD 建立 VM 時,磁碟包含的 OS 類型。

可能的值包括:

Windows

Linux
"Linux"
"Windows"
vhd 虛擬硬碟。 VirtualHardDisk
writeAcceleratorEnabled 指定是否應該在磁碟上啟用或停用 writeAccelerator。 bool

DiffDiskSettings

名稱 描述
選項 指定作業系統磁碟的暫時磁碟設定。 “Local”
放置 指定作業系統磁碟的暫時磁碟位置。

可能的值包括:

CacheDisk

ResourceDisk

默認值:如果已針對 VM 大小設定快 取Disk ,否則會使用 ResourceDisk

請參閱 /azure/virtual-machines/windows/size 和 Linux VM 的 VM 大小檔,請參閱 /azure/virtual-machines/linux/size 的 Windows VM 大小檔,以檢查哪些 VM 大小會公開快取磁碟。
“CacheDisk”
“ResourceDisk”

DiskEncryptionSettings

名稱 描述
diskEncryptionKey 指定磁碟加密金鑰的位置,這是 金鑰保存庫 秘密。 KeyVaultSecretReference
已啟用 指定是否應在虛擬機上啟用磁碟加密。 bool
keyEncryptionKey 指定 金鑰保存庫 中金鑰加密金鑰的位置。 KeyVaultKeyReference

KeyVaultSecretReference

名稱 描述
secretUrl 參考 金鑰保存庫 中秘密的URL。 需要字串 ()
sourceVault 包含秘密之 金鑰保存庫的相對 URL。 必要子資源 ()

KeyVaultKeyReference

名稱 描述
keyUrl 在 金鑰保存庫 中參考金鑰加密金鑰的 URL。 需要字串 ()
sourceVault 包含金鑰之 金鑰保存庫 的相對 URL。 必要子資源 ()