共用方式為


Microsoft.Compute virtualMachines 2023-07-01

Bicep 資源定義

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

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

資源格式

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

resource symbolicname 'Microsoft.Compute/virtualMachines@2023-07-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  extendedLocation: {
    name: 'string'
    type: 'EdgeZone'
  }
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  plan: {
    name: 'string'
    product: 'string'
    promotionCode: 'string'
    publisher: 'string'
  }
  properties: {
    additionalCapabilities: {
      hibernationEnabled: bool
      ultraSSDEnabled: bool
    }
    applicationProfile: {
      galleryApplications: [
        {
          configurationReference: 'string'
          enableAutomaticUpgrade: bool
          order: int
          packageReferenceId: 'string'
          tags: 'string'
          treatFailureAsDeploymentFailure: bool
        }
      ]
    }
    availabilitySet: {
      id: 'string'
    }
    billingProfile: {
      maxPrice: json('decimal-as-string')
    }
    capacityReservation: {
      capacityReservationGroup: {
        id: 'string'
      }
    }
    diagnosticsProfile: {
      bootDiagnostics: {
        enabled: bool
        storageUri: 'string'
      }
    }
    evictionPolicy: 'string'
    extensionsTimeBudget: 'string'
    hardwareProfile: {
      vmSize: 'string'
      vmSizeProperties: {
        vCPUsAvailable: int
        vCPUsPerCore: int
      }
    }
    host: {
      id: 'string'
    }
    hostGroup: {
      id: 'string'
    }
    licenseType: 'string'
    networkProfile: {
      networkApiVersion: '2020-11-01'
      networkInterfaceConfigurations: [
        {
          name: 'string'
          properties: {
            auxiliaryMode: 'string'
            auxiliarySku: 'string'
            deleteOption: 'string'
            disableTcpStateTracking: bool
            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'
                        domainNameLabelScope: 'string'
                      }
                      idleTimeoutInMinutes: int
                      ipTags: [
                        {
                          ipTagType: 'string'
                          tag: 'string'
                        }
                      ]
                      publicIPAddressVersion: 'string'
                      publicIPAllocationMethod: 'string'
                      publicIPPrefix: {
                        id: 'string'
                      }
                    }
                    sku: {
                      name: 'string'
                      tier: 'string'
                    }
                  }
                  subnet: {
                    id: 'string'
                  }
                }
              }
            ]
            networkSecurityGroup: {
              id: 'string'
            }
            primary: bool
          }
        }
      ]
      networkInterfaces: [
        {
          id: 'string'
          properties: {
            deleteOption: 'string'
            primary: bool
          }
        }
      ]
    }
    osProfile: {
      adminPassword: 'string'
      adminUsername: 'string'
      allowExtensionOperations: bool
      computerName: 'string'
      customData: 'string'
      linuxConfiguration: {
        disablePasswordAuthentication: bool
        enableVMAgentPlatformUpdates: bool
        patchSettings: {
          assessmentMode: 'string'
          automaticByPlatformSettings: {
            bypassPlatformSafetyChecksOnUserSchedule: bool
            rebootSetting: 'string'
          }
          patchMode: 'string'
        }
        provisionVMAgent: bool
        ssh: {
          publicKeys: [
            {
              keyData: 'string'
              path: 'string'
            }
          ]
        }
      }
      requireGuestProvisionSignal: bool
      secrets: [
        {
          sourceVault: {
            id: 'string'
          }
          vaultCertificates: [
            {
              certificateStore: 'string'
              certificateUrl: 'string'
            }
          ]
        }
      ]
      windowsConfiguration: {
        additionalUnattendContent: [
          {
            componentName: 'Microsoft-Windows-Shell-Setup'
            content: 'string'
            passName: 'OobeSystem'
            settingName: 'string'
          }
        ]
        enableAutomaticUpdates: bool
        enableVMAgentPlatformUpdates: bool
        patchSettings: {
          assessmentMode: 'string'
          automaticByPlatformSettings: {
            bypassPlatformSafetyChecksOnUserSchedule: bool
            rebootSetting: 'string'
          }
          enableHotpatching: bool
          patchMode: 'string'
        }
        provisionVMAgent: bool
        timeZone: 'string'
        winRM: {
          listeners: [
            {
              certificateUrl: 'string'
              protocol: 'string'
            }
          ]
        }
      }
    }
    platformFaultDomain: int
    priority: 'string'
    proximityPlacementGroup: {
      id: 'string'
    }
    scheduledEventsProfile: {
      osImageNotificationProfile: {
        enable: bool
        notBeforeTimeout: 'string'
      }
      terminateNotificationProfile: {
        enable: bool
        notBeforeTimeout: 'string'
      }
    }
    securityProfile: {
      encryptionAtHost: bool
      securityType: 'string'
      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'
            securityProfile: {
              diskEncryptionSet: {
                id: 'string'
              }
              securityEncryptionType: 'string'
            }
            storageAccountType: 'string'
          }
          name: 'string'
          toBeDetached: bool
          vhd: {
            uri: 'string'
          }
          writeAcceleratorEnabled: bool
        }
      ]
      diskControllerType: 'string'
      imageReference: {
        communityGalleryImageId: 'string'
        id: 'string'
        offer: 'string'
        publisher: 'string'
        sharedGalleryImageId: 'string'
        sku: 'string'
        version: 'string'
      }
      osDisk: {
        caching: 'string'
        createOption: 'string'
        deleteOption: 'string'
        diffDiskSettings: {
          option: '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'
          securityProfile: {
            diskEncryptionSet: {
              id: 'string'
            }
            securityEncryptionType: 'string'
          }
          storageAccountType: 'string'
        }
        name: 'string'
        osType: 'string'
        vhd: {
          uri: 'string'
        }
        writeAcceleratorEnabled: bool
      }
    }
    userData: 'string'
    virtualMachineScaleSet: {
      id: 'string'
    }
  }
  zones: [
    'string' or int
  ]
}

屬性值

virtualMachines

名字 描述 價值
名字 資源名稱 字串 (必要)

字元限制:1-15 (Windows)
1-64 (Linux)



合法字元:
無法使用空白、控制字元或下列字元:
~ ! @ # $ % ^ & * ( ) = + _ [ ] { } \ | ; : . ' " , < > / ?

Windows VM 不能包含句點或結尾連字元。

Linux VM 不能以句號或連字元結尾。
位置 資源位置 字串 (必要)
標籤 資源標籤 標記名稱和值的字典。 請參閱範本中的 標籤
extendedLocation 虛擬機的擴充位置。 ExtendedLocation
身份 如果已設定,則為虛擬機的身分識別。 VirtualMachineIdentity
計劃 指定用來建立虛擬機之 Marketplace 映像的相關信息。 此元素僅用於市集映像。 您必須先啟用映像以程序設計方式使用,才能從 API 使用市集映射。 在 Azure 入口網站中,尋找您想要使用的市集映像,然後按兩下 [想要以程序設計方式部署]、[開始使用] ->。 輸入任何必要資訊,然後按下 [儲存] 計劃
性能 描述虛擬機的屬性。 VirtualMachineProperties
虛擬機區域。 可用性區域陣列做為字串或int。

ExtendedLocation

名字 描述 價值
名字 擴充位置的名稱。 字串
類型 擴充位置的類型。 'EdgeZone'

VirtualMachineIdentity

名字 描述 價值
類型 用於虛擬機的身分識別類型。 類型 'SystemAssigned, UserAssigned' 包含隱含建立的身分識別和一組使用者指派的身分識別。 類型 『None』 會從虛擬機中移除任何身分識別。 'None'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned'
userAssignedIdentities 與虛擬機相關聯的使用者身分識別清單。 使用者身分識別字典索引鍵參考的格式為 ARM 資源標識符:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'。 UserAssignedIdentities

UserAssignedIdentities

名字 描述 價值
{自定義屬性} UserAssignedIdentitiesValue

UserAssignedIdentitiesValue

此物件不包含在部署期間設定的任何屬性。 所有屬性都是 ReadOnly。

計劃

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

VirtualMachineProperties

名字 描述 價值
additionalCapabilities 指定在虛擬機上啟用或停用的其他功能。 AdditionalCapabilities
applicationProfile 指定應該提供給 VM/VMSS 使用的資源庫應用程式。 ApplicationProfile
availabilitySet 指定虛擬機應指派之可用性設定組的相關信息。 相同可用性設定組中指定的虛擬機會配置給不同的節點,以將可用性最大化。 如需可用性設定組的詳細資訊,請參閱 可用性設定組概觀。 如需 Azure 計劃性維護的詳細資訊,請參閱 Azure中虛擬機的維護和更新。 目前,VM 只能在建立時新增至可用性設定組。 要新增 VM 的可用性設定組應該位於與可用性設定組資源相同的資源群組之下。 現有的 VM 無法新增至可用性設定組。 這個屬性不能與非 Null properties.virtualMachineScaleSet 參考一起存在。 SubResource
billingProfile 指定 Azure Spot 虛擬機的計費相關詳細數據。 API 版本下限:2019-03-01。 BillingProfile
capacityReservation 指定用來配置虛擬機之容量保留區的相關信息。 API 版本下限:2021-04-01。 CapacityReservationProfile
diagnosticsProfile 指定開機診斷設定狀態。 API 版本下限:2015-06-15。 DiagnosticsProfile
evictionPolicy 指定 Azure Spot 虛擬機和 Azure Spot 擴展集的收回原則。 針對 Azure Spot 虛擬機,支援「解除分配」和「刪除」,且最低 API 版本為 2019-03-01。 針對 Azure Spot 擴展集,支援「解除分配」和「刪除」,且最低 API 版本為 2017-10-30-preview。 'Deallocate'
'Delete'
extensionsTimeBudget 指定所有延伸模組要啟動的時間。 持續時間應介於 15 分鐘到 120 分鐘之間(含),且應以 ISO 8601 格式指定。 預設值為90分鐘(PT1H30M)。 API 版本下限:2020-06-01。 字串
hardwareProfile 指定虛擬機的硬體設定。 HardwareProfile
主機 指定虛擬機所在專用主機的相關信息。 API 版本下限:2018-10-01。 SubResource
hostGroup 指定虛擬機所在專用主機群組的相關信息。 注意: 用戶無法同時指定主機和 hostGroup 屬性。 API 版本下限:2020-06-01。 SubResource
licenseType 指定所使用的映像或磁碟已獲內部部署授權。

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

Windows_Client

Windows_Server

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

RHEL_BYOS (RHEL)

SLES_BYOS (適用於 SUSE)

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

適用於Linux Server的 Azure Hybrid Use Benefit

API 版本下限:2015-06-15
字串
networkProfile 指定虛擬機的網路介面。 NetworkProfile
osProfile 指定建立虛擬機時所使用的作業系統設定。 布建 VM 之後,就無法變更某些設定。 OSProfile
platformFaultDomain 指定要在其中建立虛擬機的擴展集邏輯容錯網域。 根據預設,虛擬機會自動指派給容錯網域,以在可用的容錯網域之間維持平衡。 只有當設定此虛擬機的 'virtualMachineScaleSet' 屬性時,才適用這個屬性。 參考的虛擬機擴展集必須具有大於 1 的 『platformFaultDomainCount』。 建立虛擬機之後,就無法更新這個屬性。 容錯網域指派可以在虛擬機實例檢視中檢視。 最低 api\version:2020\12\01。 int
優先權 指定虛擬機的優先順序。 API 版本下限:2019-03-01 'Low'
'Regular'
'Spot'
proximityPlacementGroup 指定應該指派虛擬機之鄰近放置群組的相關信息。 API 版本下限:2018-04-01。 SubResource
scheduledEventsProfile 指定排程的事件相關組態。 ScheduledEventsProfile
securityProfile 指定虛擬機的安全性相關配置檔設定。 SecurityProfile
storageProfile 指定虛擬機磁碟的記憶體設定。 StorageProfile
userData VM 的 UserData,其必須是base-64編碼。 客戶不應在此傳遞任何秘密。 API 版本下限:2021-03-01。 字串
virtualMachineScaleSet 指定應該指派虛擬機之虛擬機擴展集的相關信息。 相同虛擬機擴展集中指定的虛擬機會配置給不同的節點,以將可用性最大化。 目前,VM 只能在建立時新增至虛擬機擴展集。 現有的 VM 無法新增至虛擬機擴展集。 這個屬性不能與非 Null properties.availabilitySet 參考一起存在。 最低 api\version:2019\03\01。 SubResource

AdditionalCapabilities

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

ApplicationProfile

名字 描述 價值
galleryApplications 指定應該提供給 VM/VMSS 的資源庫應用程式 VMGalleryApplication[]

VMGalleryApplication

名字 描述 價值
configurationReference 選擇性,指定 Azure Blob 的 URI,如果提供的話,將會取代套件的預設組態 字串
enableAutomaticUpgrade 如果設定為 true,當 PIR/SIG 中提供新的資源庫應用程式版本時,VM/VMSS 會自動更新它 bool
次序 選擇性,指定必須安裝套件的順序 int
packageReferenceId 指定 /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/applications/{application}/versions/{version} 形式的 GalleryApplicationVersion 資源標識符 字串 (必要)
標籤 選擇性,指定更多泛型內容的傳遞值。 字串
treatFailureAsDeploymentFailure 選擇性,如果為 true,VmApplication 中任何作業的任何失敗都會使部署失敗 bool

SubResource

名字 描述 價值
id 資源標識碼 字串

BillingProfile

名字 描述 價值
maxPrice 指定您願意為 Azure Spot VM/VMSS 付費的最高價格。 這個價格以美元為單位。

此價格會與 VM 大小的目前 Azure Spot 價格進行比較。 此外,價格會在建立/更新 Azure Spot VM/VMSS 時進行比較,只有在 maxPrice 大於目前的 Azure Spot 價格時,作業才會成功。

如果目前的 Azure Spot 價格超出建立 VM/VMSS 之後的 maxPrice,maxPrice 也會用於收回 Azure Spot VM/VMSS。

可能的值為:

- 任何大於零的十進位值。 範例:0.01538

-1 – 表示預設價格 up-to 隨選。

您可以將 maxPrice 設定為 -1,表示基於價格原因,不應收回 Azure Spot VM/VMSS。 此外,如果預設的最大價格不是由您提供,則為 -1。

API 版本下限:2019-03-01。 若要指定十進位值,請使用 json() 函式。
int 或 json decimal

CapacityReservationProfile

名字 描述 價值
capacityReservationGroup 指定容量保留群組資源標識符,該標識元應該用於配置已保留足夠容量的虛擬機或擴展集 VM 實例。 如需詳細資訊, https://aka.ms/CapacityReservation 請參閱 。 SubResource

DiagnosticsProfile

名字 描述 價值
bootDiagnostics 開機診斷是一項偵錯功能,可讓您檢視控制台輸出和螢幕快照來診斷 VM 狀態。 NOTE:如果指定 storageUri,請確定記憶體帳戶位於與 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'
vmSizeProperties 指定自定義虛擬機大小的屬性。 API 版本下限:2021-07-01。 此功能仍處於預覽模式,VirtualMachineScaleSet 不支援此功能。 如需詳細資訊,請遵循 VM 自定義 中的指示。 VMSizeProperties

VMSizeProperties

名字 描述 價值
vCPUUsAvailable 指定 VM 可用的 vCPU 數目。 當要求本文中未指定此屬性時,預設行為是將它設定為 api 回應中公開的 vCPU 值,列出區域中所有可用的虛擬機大小 int
vCPUUsPerCore 指定 vCPU 與實體核心比率。 當要求本文中未指定此屬性時,預設行為會針對 api 回應中公開的 VM 大小設定為 vCPUUsPerCore 的值,列出區域中所有可用的虛擬機大小,將此屬性設定為 1 也表示已停用超線程處理。 int

NetworkProfile

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

VirtualMachineNetworkInterfaceConfiguration

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

VirtualMachineNetworkInterfaceConfigurationPropertie...

名字 描述 價值
auxiliaryMode 指定是否為網路介面資源啟用輔助模式。 'AcceleratedConnections'
'Floating'
'None'
auxiliarySku 指定是否為網路介面資源啟用輔助 SKU。 'A1'
'A2'
'A4'
'A8'
'None'
deleteOption 指定刪除 VM 時網路介面會發生什麼事 'Delete'
'Detach'
disableTcpStateTracking 指定是否停用 tcp 狀態追蹤的網路介面。 bool
dnsSettings 要套用在網路介面上的 DNS 設定。 VirtualMachineNetworkInterfaceDnsSettingsConfigurati...
dscpConfiguration SubResource
enableAcceleratedNetworking 指定網路介面是否已啟用加速網路功能。 bool
enableFpga 指定網路介面是否已啟用 FPGA 網路功能。 bool
enableIPForwarding 是否在此 NIC 上啟用 IP 轉送。 bool
ipConfigurations 指定網路介面的IP組態。 VirtualMachineNetworkInterfaceIPConfiguration[] (必要)
networkSecurityGroup 網路安全組。 SubResource
主要 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool

VirtualMachineNetworkInterfaceDnsSettingsConfigurati...

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

VirtualMachineNetworkInterfaceIPConfiguration

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

VirtualMachineNetworkInterfaceIPConfigurationPropert...

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

VirtualMachinePublicIPAddressConfiguration

名字 描述 價值
名字 publicIP 位址組態名稱。 字串 (必要)
性能 描述虛擬機IP組態的PublicIPAddress組態 VirtualMachinePublicIPAddressConfigurationProperties
sku 描述公用IP Sku。 它只能將 OrchestrationMode 設定為彈性。 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 網路設定檔唯一識別碼的串連。 字串 (必要)
domainNameLabelScope 將要建立之 PublicIPAddress 資源的功能變數名稱標籤範圍。 產生的名稱標籤是根據功能變數名稱標籤範圍和 vm 網路配置檔唯一識別碼,與原則串連哈希功能變數名稱標籤。 'NoReuse'
'ResourceGroupReuse'
'SubscriptionReuse'
'TenantReuse'

VirtualMachineIpTag

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

PublicIPAddressSku

名字 描述 價值
名字 指定公用IP SKU 名稱 'Basic'
'Standard'
指定公用IP SKU層 'Global'
'地區'

NetworkInterfaceReference

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

NetworkInterfaceReferenceProperties

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

OSProfile

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

最小長度 (Windows): 8 個字元

最小長度 (Linux): 6 個字元

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

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

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

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

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

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

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

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

僅限 Windows 的限制: 不能以 “” 結尾。

不允許的值: “administrator”、“admin”、“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 必須設定為 True 或省略的選擇性屬性。 bool
秘密 指定應該安裝在虛擬機上的憑證集。 若要在虛擬機上安裝憑證,建議使用適用於Linux 的 Azure Key Vault 虛擬機擴充功能,或適用於Windows的 Azure Key Vault 虛擬機擴充功能。 VaultSecretGroup[]
windowsConfiguration 指定虛擬機上的 Windows 作業系統設定。 WindowsConfiguration

LinuxConfiguration

名字 描述 價值
disablePasswordAuthentication 指定是否應停用密碼驗證。 bool
enableVMAgentPlatformUpdates 指出是否為Linux虛擬機啟用VMAgent平臺更新。 默認值為 false。 bool
patchSettings [預覽功能]指定與Linux上的VM客體修補相關的設定。 LinuxPatchSettings
provisionVMAgent 指出虛擬機器代理程式是否應該佈建在虛擬機上。 當要求本文中未指定此屬性時,預設行為是將它設定為 true。 這可確保 VM 代理程式已安裝在 VM 上,以便稍後將擴充功能新增至 VM。 bool
ssh 指定 Linux OS 的 SSH 金鑰組態。 SshConfiguration

LinuxPatchSettings

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

可能的值為:

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

AutomaticByPlatform - 平台將觸發定期修補程序評估。 屬性 provisionVMAgent 必須為 true。
'AutomaticByPlatform'
'ImageDefault'
automaticByPlatformSettings 在 Linux 上的 VM 客體修補中,指定修補程式模式 AutomaticByPlatform 的其他設定。 LinuxVMGuestPatchAutomaticByPlatformSettings
patchMode 將 VM 客體修補模式指定為彈性的 IaaS 虛擬機或與虛擬機擴展集相關聯的虛擬機。

可能的值為:

ImageDefault - 會使用虛擬機的預設修補組態。

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

LinuxVMGuestPatchAutomaticByPlatformSettings

名字 描述 價值
bypassPlatformSafetyChecksOnUserSchedule 讓客戶在不意外升級的情況下排程修補 bool
rebootSetting 指定所有 AutomaticByPlatform 修補程式安裝作業的重新啟動設定。 'Always'
'IfRequired'
'Never'
'Unknown'

SshConfiguration

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

SshPublicKey

名字 描述 價值
keyData 用來透過 ssh 向 VM 進行驗證的 SSH 公鑰憑證。 密鑰至少必須是 2048 位,且格式為 ssh-rsa。 如需建立 ssh 金鑰,請參閱 [在 Azure 中建立 Linux 和 Mac 上的 SSH 密鑰]/azure/virtual-machines/linux/create-ssh-keys-detailed。 字串
路徑 指定已建立 VM 上儲存 SSH 公鑰的完整路徑。 如果檔案已經存在,指定的索引鍵會附加至檔案。 範例:/home/user/.ssh/authorized_keys 字串

VaultSecretGroup

名字 描述 價值
sourceVault Key Vault 的相對 URL,其中包含 VaultCertificates 中的所有憑證。 SubResource
vaultCertificates SourceVault 中包含憑證的金鑰保存庫參考清單。 VaultCertificate[]

VaultCertificate

名字 描述 價值
certificateStore 針對 Windows VM,指定應新增憑證之虛擬機上的證書存儲。 指定的證書存儲隱含在 LocalMachine 帳戶中。 針對 Linux VM,憑證檔案會放在 /var/lib/waagent 目錄底下,檔名 <X509 憑證檔案的大寫Thumbprint>.crt,並針對私鑰 <大寫Thumbprint>.prv。 這兩個檔案都是 .pem 格式。 字串
certificateUrl 這是已上傳至 Key Vault 做為秘密之憑證的 URL。 如需將秘密新增至 Key Vault,請參閱 將金鑰或秘密新增至金鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼,其編碼方式為 UTF-8:

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

WindowsConfiguration

名字 描述 價值
additionalUnattendContent 指定其他base-64編碼的 XML 格式資訊,這些資訊可以包含在 Windows 安裝程式所使用的 Unattend.xml 檔案中。 AdditionalUnattendContent[]
enableAutomaticUpdates 指出是否為 Windows 虛擬機啟用自動更新。 默認值為 true。 針對虛擬機擴展集,此屬性可以更新,更新將會在OS重新佈建上生效。 bool
enableVMAgentPlatformUpdates 指出是否為 Windows 虛擬機啟用 VMAgent 平臺更新。 默認值為 false。 bool
patchSettings [預覽功能]指定與 Windows 上的 VM 客體修補相關的設定。 PatchSettings
provisionVMAgent 指出虛擬機器代理程式是否應該佈建在虛擬機上。 當要求本文中未指定這個屬性時,預設會設定為 true。 這可確保 VM 代理程式已安裝在 VM 上,以便稍後將擴充功能新增至 VM。 bool
timeZone 指定虛擬機的時區。 例如「太平洋標準時間」。 可能的值可以從 TimeZoneInfo.GetSystemTimeZones傳回的時區 TimeZoneInfo.Id 值。 字串
winRM 指定 Windows 遠端管理接聽程式。 這可啟用遠端 Windows PowerShell。 WinRMConfiguration

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'
automaticByPlatformSettings 指定 Windows 上 VM 客體修補中的 Patch 模式 AutomaticByPlatform 的其他設定。 WindowsVMGuestPatchAutomaticByPlatformSettings
enableHotpatching 可讓客戶修補其 Azure VM,而不需要重新啟動。 針對 enableHotpatching,'provisionVMAgent' 必須設定為 true,且 'patchMode' 必須設定為 'AutomaticByPlatform'。 bool
patchMode 將 VM 客體修補模式指定為彈性的 IaaS 虛擬機或與虛擬機擴展集相關聯的虛擬機。

可能的值為:

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

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

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

WindowsVMGuestPatchAutomaticByPlatformSettings

名字 描述 價值
bypassPlatformSafetyChecksOnUserSchedule 讓客戶在不意外升級的情況下排程修補 bool
rebootSetting 指定所有 AutomaticByPlatform 修補程式安裝作業的重新啟動設定。 'Always'
'IfRequired'
'Never'
'Unknown'

WinRMConfiguration

名字 描述 價值
聽眾 Windows 遠端管理接聽程式清單 WinRMListener[]

WinRMListener

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

{
“data”:“{Base64-encoded-certificate}”,
“dataType”:“pfx”,
“password”:“{pfx-file-password}”
}
若要在虛擬機上安裝憑證,建議使用適用於Linux 的 Azure Key Vault 虛擬機擴充功能,或適用於Windows的 Azure Key Vault 虛擬機擴充功能。
字串
協定 指定 WinRM 接聽程式的通訊協定。 可能的值為:HTTP、https。 'Http'
'Https'

ScheduledEventsProfile

名字 描述 價值
osImageNotificationProfile 指定OS映像排程事件相關組態。 OSImageNotificationProfile
terminateNotificationProfile 指定終止已排程的事件相關組態。 TerminateNotificationProfile

OSImageNotificationProfile

名字 描述 價值
使 指定是否啟用或停用OS映像排程事件。 bool
notBeforeTimeout 虛擬機重新映像或升級其操作系統的時間長度,在事件自動核准之前,必須核准OS映射排程事件(逾時)。 設定是以 ISO 8601 格式指定,且值必須是 15 分鐘(PT15M) 字串

TerminateNotificationProfile

名字 描述 價值
使 指定是否啟用或停用終止排程事件。 bool
notBeforeTimeout 刪除虛擬機的可設定時間長度,在事件自動核准之前,必須先核准終止排程事件(逾時)。 設定必須以 ISO 8601 格式指定,預設值為 5 分鐘(PT5M) 字串

SecurityProfile

名字 描述 價值
encryptionAtHost 用戶可以在要求中使用這個屬性來啟用或停用虛擬機或虛擬機擴展集的主機加密。 這會啟用所有磁碟的加密,包括主機本身的資源/暫存磁碟。 默認行為為:除非資源將此屬性設定為 true,否則將會停用主機的加密。 bool
securityType 指定虛擬機的 SecurityType。 它必須設定為任何指定的值,才能啟用 UefiSettings。 默認行為為:除非設定此屬性,否則不會啟用 UefiSettings。 'ConfidentialVM'
'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[]
diskControllerType 指定為 VM 設定的磁碟控制器類型。 注意:如果未指定提供的虛擬機建立時,此屬性會設定為預設磁碟控制器類型,而 'hyperVGeneration' 會根據指定之最低 API 版本之操作系統磁碟和 VM 大小的功能設定為 V2。 您必須在更新 VM 控制器類型之前解除分配 VM,除非您在 VM 設定中更新 VM 大小,以隱含解除分配和重新配置 VM。 API 版本下限:2022-08-01。 'NVMe'
'SCSI'
imageReference 指定要使用之映像的相關信息。 您可以指定平臺映像、市集映像或虛擬機映像的相關信息。 當您想要使用平臺映像、市集映像或虛擬機映像,但未用於其他建立作業時,則需要此元素。 ImageReference
osDisk 指定虛擬機所使用的作業系統磁碟相關信息。 如需磁碟的詳細資訊,請參閱 關於 Azure 虛擬機器的磁碟和 VHD OSDisk

DataDisk

名字 描述 價值
緩存 指定快取需求。 可能的值為:None、ReadOnly、ReadWrite。 預設行為為:標準記憶體的 None。進階記憶體的 ReadOnly。 'None'
'ReadOnly'
'ReadWrite'
createOption 指定應如何建立虛擬機。 可能的值為:Attach。 當您使用特製化磁碟來建立虛擬機時,會使用此值。 FromImage。 當您使用映像來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也應該使用上述的 imageReference 元素。 如果您使用市集映射,則也應該使用先前所述的 plan 元素。 'Attach'
'Empty'
'FromImage' (必要)
deleteOption 指定在 VM 刪除時應該刪除或中斷連結資料磁碟。 可能的值為:Delete。 如果使用此值,刪除 VM 時會刪除資料磁碟。 分離。 如果使用此值,則會在刪除 VM 之後保留資料磁碟。 預設值設定為 Detach 'Delete'
'Detach'
detachOption 指定卸離磁碟時所要使用的卸離行為,或已在從虛擬機中斷鏈接的過程中使用的行為。 支援的值:ForceDetach。 detachOption:ForceDetach 僅適用於受控數據磁碟。 如果先前的數據磁盤中斷鏈接嘗試未完成,因為虛擬機發生非預期的失敗,磁碟仍未釋放,則請使用強制卸離作為最後手段選項,強制中斷連結磁碟與 VM。 使用這個卸離行為時,所有寫入可能都沒有排清。 這項功能仍處於預覽 模式,且 VirtualMachineScaleSet 不支援此功能。 若要強制將數據磁碟更新強制卸離至 『true』,以及設定 detachOption: 'ForceDetach'。 'ForceDetach'
diskSizeGB 指定以 GB 為單位的空白資料磁碟大小。 這個元素可用來覆寫虛擬機映像中的磁碟大小。 屬性 'diskSizeGB' 是磁碟的位元組 x 1024^3,值不能大於 1023。 int
圖像 來源使用者映像虛擬硬碟。 在連接至虛擬機之前,將會先複製虛擬硬碟。 如果提供SourceImage,則目的地虛擬硬碟不得存在。 VirtualHardDisk
指定數據磁碟的邏輯單元編號。 這個值是用來識別 VM 內的數據磁碟,因此對於連結至 VM 的每個數據磁碟而言都必須是唯一的。 int (必要)
managedDisk 受控磁碟參數。 ManagedDiskParameters
名字 磁碟名稱。 字串
toBeDetached 指定數據磁碟是否正在從 VirtualMachine/VirtualMachineScaleset 中斷連結 bool
vhd 虛擬硬碟。 VirtualHardDisk
writeAcceleratorEnabled 指定是否應該在磁碟上啟用或停用 writeAccelerator。 bool

VirtualHardDisk

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

ManagedDiskParameters

名字 描述 價值
diskEncryptionSet 指定受控磁碟的客戶受控磁碟加密集資源標識符。 DiskEncryptionSetParameters
id 資源標識碼 字串
securityProfile 指定受控磁碟的安全性配置檔。 VMDiskSecurityProfile
storageAccountType 指定受控磁碟的記憶體帳戶類型。 注意:UltraSSD_LRS只能與數據磁碟搭配使用,因此無法與OS磁碟搭配使用。 'PremiumV2_LRS'
'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'
'UltraSSD_LRS'

DiskEncryptionSetParameters

名字 描述 價值
id 資源標識碼 字串

VMDiskSecurityProfile

名字 描述 價值
diskEncryptionSet 針對客戶受控密鑰加密的機密VM OS 磁碟和 VMGuest Blob 所使用的受控磁碟,指定客戶受控磁碟加密集資源識別碼。 DiskEncryptionSetParameters
securityEncryptionType 指定受控磁碟的 EncryptionType。 它設定為 DiskWithVMGuestState 以加密受控磁碟以及 VMGuestState Blob,而 VMGuestStateOnly 則只會加密 VMGuestState Blob。 注意: 只能設定機密 VM。 'DiskWithVMGuestState'
'VMGuestStateOnly'

ImageReference

名字 描述 價值
communityGalleryImageId 指定 vm 部署的社群資源庫映像唯一標識碼。 這可以從社群資源庫映像 GET 呼叫擷取。 字串
id 資源標識碼 字串
提供 指定用來建立虛擬機的平臺映像或市集映像供應專案。 字串
發行人 映像發行者。 字串
sharedGalleryImageId 指定 vm 部署的共享資源庫映像唯一標識碼。 這可以從共用資源庫映像 GET 呼叫擷取。 字串
sku 映像 SKU。 字串
版本 指定用來建立虛擬機的平臺映像或市集映像版本。 允許的格式為 Major.Minor.Build 或 'latest'。 主要、次要和組建是十進位數。 指定 'latest' 以在部署時間使用可用映像的最新版本。 即使您使用「最新」,即使有新版本可用,VM 映像也不會在部署時間之後自動更新。 請勿使用欄位 'version' 進行資源庫映射部署,資源庫映射應一律使用 'id' 字段進行部署,若要使用資源庫映射的 'latest' 版本,只要設定 '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/images/{imageName}' 字段,即可不使用版本輸入。 字串

OSDisk

名字 描述 價值
緩存 指定快取需求。 可能的值為:None、ReadOnly、ReadWrite。 預設行為為:標準記憶體的 None。進階記憶體的 ReadOnly。 'None'
'ReadOnly'
'ReadWrite'
createOption 指定應如何建立虛擬機。 可能的值為:Attach。 當您使用特製化磁碟來建立虛擬機時,會使用此值。 FromImage。 當您使用映像來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也應該使用上述的 imageReference 元素。 如果您使用市集映射,則也應該使用先前所述的 plan 元素。 'Attach'
'Empty'
'FromImage' (必要)
deleteOption 指定 VM 刪除時應刪除或中斷連結 OS 磁碟。 可能的值為:Delete。 如果使用這個值,刪除 VM 時會刪除 OS 磁碟。 分離。 如果使用這個值,則會在刪除 VM 之後保留 os 磁碟。 預設值設定為 Detach。 針對暫時的 OS 磁碟,預設值會設定為 [刪除]。 使用者無法變更暫時 OS 磁碟的刪除選項。 'Delete'
'Detach'
diffDiskSettings 指定虛擬機所用作業系統磁碟的暫時磁碟設定。 DiffDiskSettings
diskSizeGB 指定以 GB 為單位的空白資料磁碟大小。 這個元素可用來覆寫虛擬機映像中的磁碟大小。 屬性 'diskSizeGB' 是磁碟的位元組 x 1024^3,值不能大於 1023。 int
encryptionSettings 指定 OS 磁碟的加密設定。 API 版本下限:2015-06-15。 DiskEncryptionSettings
圖像 來源使用者映像虛擬硬碟。 在連接至虛擬機之前,將會先複製虛擬硬碟。 如果提供SourceImage,則目的地虛擬硬碟不得存在。 VirtualHardDisk
managedDisk 受控磁碟參數。 ManagedDiskParameters
名字 磁碟名稱。 字串
osType 此屬性可讓您指定從使用者映像或特製化 VHD 建立 VM 時,磁碟包含的 OS 類型。 可能的值為:Windows、Linux。 'Linux'
'Windows'
vhd 虛擬硬碟。 VirtualHardDisk
writeAcceleratorEnabled 指定是否應該在磁碟上啟用或停用 writeAccelerator。 bool

DiffDiskSettings

名字 描述 價值
選擇 指定作業系統磁碟的暫時磁碟設定。 'Local'
放置 指定作業系統磁碟的暫時磁碟位置。 可能的值為:CacheDisk,ResourceDisk。 默認行為為:如果已針對 VM 大小設定快取Disk,CacheDisk,否則會使用 ResourceDisk 。 請參閱 /azure/virtual-machines/windows/size 和 Linux VM 在 /azure/virtual-machines/linux/size 上 Windows VM 的 VM 大小檔,以檢查哪些 VM 大小會公開快取磁碟。 'CacheDisk'
'ResourceDisk'

DiskEncryptionSettings

名字 描述 價值
diskEncryptionKey 指定磁碟加密密鑰的位置,也就是 Key Vault 秘密。 KeyVaultSecretReference
啟用 指定是否應在虛擬機上啟用磁碟加密。 bool
keyEncryptionKey 指定 Key Vault 中金鑰加密金鑰的位置。 KeyVaultKeyReference

KeyVaultSecretReference

名字 描述 價值
secretUrl 參考 Key Vault 中秘密的 URL。 字串 (必要)
sourceVault 包含秘密之 Key Vault 的相對 URL。 SubResource (必要)

KeyVaultKeyReference

名字 描述 價值
keyUrl 參考 Key Vault 中金鑰加密金鑰的 URL。 字串 (必要)
sourceVault 包含金鑰之 Key Vault 的相對 URL。 SubResource (必要)

快速入門範本

下列快速入門範本會部署此資源類型。

範本 描述
部署簡單的Linux VM並將私人IP更新為靜態

部署至 Azure
此範本可讓您從市集中使用Ubuntu部署簡單的Linux VM。 這會使用動態指派的IP位址,在資源群組位置中部署 VNET、子網和 A1 大小 VM,然後將它轉換成靜態IP。
使用資源迴圈在可用性設定組中建立 VM

部署至 Azure
使用資源迴圈在可用性設定組中建立 2-5 部 VM。 VM 可以是 Unbuntu 或 Windows,最多 5 部 VM,因為此範例會使用單一 storageAccount
使用受控磁碟 多重 VM 範本

部署至 Azure
此範本會建立具有受控磁碟、公用IP和網路介面的VM數目。 它會在單一可用性設定組中建立 VM。 它們將會佈建在虛擬網路中,此虛擬網路也會建立為部署的一部分
在 Windows VM 上安裝檔案

部署至 Azure
此範本可讓您部署 Windows VM 並執行自定義 PowerShell 腳本,以在該 VM 上安裝檔案。
使用自定義數據部署虛擬機

部署至 Azure
此範本可讓您建立虛擬機,並將自定義數據傳遞至 VM。 此範本也會部署記憶體帳戶、虛擬網路、公用IP位址和網路介面。
部署具有診斷 的進階 Windows VM

部署至 Azure
此範本可讓您使用 Windows 版本的幾個不同選項來部署進階 Windows VM,並使用最新的修補版本。
在不同資源群組的 VNET 中建立 VM

部署至 Azure
此範本會在位於不同資源群組的 VNET 中建立 VM
將 VM 加入現有的網域

部署至 Azure
此範本示範在雲端中加入私人 AD 網域。
建立具有動態選取數據磁碟的 VM

部署至 Azure
此範本可讓用戶選取想要新增至 VM 的數據磁碟數目。
從 EfficientIP VHD 建立 VM

部署至 Azure
此範本會從 EfficientIP VHD 建立 VM,並讓您將其連線到現有的 VNET,該 VNET 可以位於另一個資源群組中,然後是虛擬機
從使用者映像建立 VM

部署至 Azure
此範本可讓您從使用者映像建立虛擬機。 此範本也會部署虛擬網路、公用IP位址和網路介面。
從一般化 VHD 在新的或現有的 vnet 中建立 VM

部署至 Azure
此範本會從一般化 VHD 建立 VM,並讓您將其連線到新的或現有的 VNET,該 VNET 可以位於虛擬機以外的另一個資源群組中
CentOS/UbuntuServer 自動動態磁碟 & Docker 1.12(cs)

部署至 Azure
這是建立單一實例 CentOS 7.2/7.1/6.5 或 Ubuntu Server 16.04.0-LTS 的常見範本,其中包含可設定的數據磁碟數目(可設定的大小)。 入口網站參數中可以提及最多 16 個磁碟,而且每個磁碟的大小上限應小於 1023 GB。 MDADM RAID0 Array 已自動掛接,且會繼續重新啟動。 最新的 Docker 1.12(cs3) (Swarm),docker-compose 1.9.0 & docker-machine 0.8.2 可供使用者 azure-cli 使用,以 docker 容器自動執行。 這個單一實例範本是 HPC/GPU 叢集範本 @ https://github.com/azurebigcompute/BigComputeBench
GitLab Omnibus

部署至 Azure
此範本可簡化使用公用 DNS 在虛擬機上部署 GitLab Omnibus,並利用公用 IP 的 DNS。 它會使用Standard_F8s_v2實例大小,其與參考架構一致,且最多可支援1000位使用者(20 RPS)。 實例已預先設定為搭配使用 HTTPS 與 Let's Encrypt 憑證進行安全連線。
使用序列輸出 Linux VM

部署至 Azure
此範本會建立簡單的 Linux VM,並將參數和序列/主控台設定為輸出至記憶體
部署具有監視和診斷功能的簡單 Windows VM

部署至 Azure
此範本可讓您部署簡單的 Windows VM 以及診斷延伸模組,以啟用 VM 的監視和診斷
使用 MSI 部署 Linux 或 Windows VM

部署至 Azure
此範本可讓您使用受控服務識別來部署Linux或Windows VM。
Azure 上的 Terraform

部署至 Azure
此範本可讓您將 Terraform 工作站部署為具有 MSI 的 Linux VM。
使用 MSI 存取記憶體 Linux VM

部署至 Azure
此範本會部署具有系統指派受控識別的Linux VM,其可存取不同資源群組中的記憶體帳戶。
從具有 4 個空白數據磁碟的 Windows 映射建立 VM

部署至 Azure
此範本可讓您從指定的映像建立 Windows 虛擬機。 它也會連結 4 個空的數據磁碟。 請注意,您可以指定空白數據磁碟的大小。
部署具有多個IP的 VM

部署至 Azure
此範本可讓您部署具有 3 個 IP 組態的 VM。 此樣本會部署名為 myVM1 且具有 3 個 IP 組態的 Linux/Windows VM:IPConfig-1IPConfig-2IPConfig-3
部署具有多個 NIC 的 Linux VM

部署至 Azure
此範本會建立具有多個子網的 VNet,並部署具有多個 Ubuntu VM 的 Ubuntu VM
使用條件式資源 虛擬機

部署至 Azure
此範本允許使用虛擬網路、記憶體和公用IP位址的新或現有資源來部署Linux VM。 它也允許在 SSH 和密碼驗證之間進行選擇。 範本會使用條件和邏輯函式來移除巢狀部署的需求。
從現有的 VHD 建立 VM,並將其連線至現有的 VNET

部署至 Azure
此範本會從 VHD (OS + 資料磁碟) 建立 VM,並讓您將其連線到現有的 VNET,該 VNET 可以位於另一個資源群組中,然後是虛擬機
將憑證推送至 Windows VM

部署至 Azure
將憑證推送至 Windows VM。 使用範本在 https://azure.microsoft.com/documentation/templates/101-create-key-vault 建立 Key Vault
使用 Key Vault 保護 VM 密碼

部署至 Azure
此範本可讓您藉由擷取儲存在 Key Vault 中的密碼,來部署簡單的 Windows VM。 因此,密碼永遠不會放在範本參數檔案的純文本中
在資源群組位置部署簡單的FreeBSD VM

部署至 Azure
此範本可讓您使用最新修補的版本,使用FreeBSD版本的幾個不同選項來部署簡單的FreeBSD VM。 這會部署在 D1 VM 大小的資源群組位置。
部署簡單的UbuntuLinux VM 20.04-LTS

部署至 Azure
此範本會部署具有一些 VM 選項的 Ubuntu Server。 您可以提供 VM 名稱、OS 版本、VM 大小,以及系統管理員使用者名稱和密碼。 默認 VM 大小為 Standard_D2s_v3,而 OS 版本為 20.04-LTS。
使用加速網路 部署簡單的Linux VM

部署至 Azure
此範本可讓您使用具有最新修補版本的 Ubuntu 18.04-LTS 18.04-LTS 來部署具有加速網路的簡單 Linux VM。 這會在資源群組位置部署D3_v2大小 VM,並傳回 VM 的 FQDN。
Red Hat Enterprise Linux VM (RHEL 7.8)

部署至 Azure
此範本會部署 Red Hat Enterprise Linux VM (RHEL 7.8),使用標準 D1 VM 上所選版本的隨用隨付You-Go RHEL VM 映射,以及附加至 VM 的額外 100 GiB 數據磁碟。 此映像會收取額外費用 - 如需詳細資訊,請參閱 Azure VM 定價頁面。
Red Hat Enterprise Linux VM (RHEL 7.8 Unmanaged)

部署至 Azure
此範本會部署 Red Hat Enterprise Linux VM (RHEL 7.8),使用隨用隨付You-Go RHEL VM 映射,以取得所選資源群組位置中所選版本的標準A1_v2 VM,以及附加至 VM 的額外 100 GiB 數據磁碟。 此映像會收取額外費用 - 如需詳細資訊,請參閱 Azure VM 定價頁面。
SUSE Linux Enterprise Server VM (SLES 12)

部署至 Azure
此範本可讓您使用隨用隨付You-Go SLES VM 映射,在所選資源群組的位置部署 SUSE Linux Enterprise Server VM (SLES 12),並將額外的 100 GiB 數據磁碟連結至 VM。 此映像會收取額外費用 - 如需詳細資訊,請參閱 Azure VM 定價頁面。
部署簡單的 Windows VM

部署至 Azure
此範本可讓您使用 Windows 版本的幾個不同選項來部署簡單的 Windows VM,並使用最新的修補版本。 這會在資源群組位置部署 A2 大小 VM,並傳回 VM 的 FQDN。
使用 Visual Studio 部署 Windows Server VM

部署至 Azure
此範本會部署具有 Visual Code Studio Community 2019 的 Windows Server VM,並針對 VM 提供一些選項。 您可以提供 VM 的名稱、系統管理員使用者名稱和系統管理員密碼。
將 VM 部署到可用性區域

部署至 Azure
此範本可讓您使用最新的修補版本來部署簡單的 VM(Windows 或 Ubuntu)。 這會在指定的位置部署A2_v2大小 VM,並傳回 VM 的 FQDN。
從自定義 VHD 在新的或現有的 vnet 中建立 VM

部署至 Azure
此範本會從特製化 VHD 建立 VM,並可讓您將它連線到新的或現有的 VNET,該 VNET 可以位於虛擬機以外的另一個資源群組中
SQL Server 2014 SP2 Enterprise with Auto Backup

部署至 Azure
此範本會建立已啟用自動備份功能的 SQL Server 2014 SP2 Enterprise 版本
SQL Server 2014 SP1 Enterprise 與自動修補

部署至 Azure
此範本會建立已啟用自動修補功能的 SQL Server 2014 SP1 Enterprise 版本。
SQL Server 2014 SP1 Enterprise 搭配 Azure Key Vault

部署至 Azure
此範本會建立已啟用 Azure Key Vault 整合功能的 SQL Server 2014 SP1 Enterprise 版本。
部署具有 SSH rsa 公鑰的虛擬機

部署至 Azure
此範本可讓您建立具有 SSH rsa 公鑰的虛擬機
部署具有標籤的簡單 Windows VM

部署至 Azure
此範本會部署D2_v3 Windows VM、NIC、記憶體帳戶、虛擬網路、公用IP位址和網路安全組。 標記物件會在變數中建立,並會在適用時套用至所有資源。
部署支援受信任啟動的Linux虛擬機

部署至 Azure
此範本可讓您使用最新修補的版本,使用幾個不同的 Linux 版本選項來部署具有受信任啟動功能的 Linux 虛擬機。 如果您啟用 Secureboot 和 vTPM,客體證明擴充功能將會安裝在您的 VM 上。 此延伸模組會執行雲端的遠端 證明。 根據預設,這會在資源群組位置部署Standard_D2_v3大小的虛擬機,並傳回虛擬機的 FQDN。
部署支援受信任啟動的 Windows 虛擬機

部署至 Azure
此範本可讓您使用 Windows 版本的幾個不同選項,使用最新的修補版本,部署具有受信任啟動功能的 Windows 虛擬機。 如果您啟用 Secureboot 和 vTPM,客體證明擴充功能將會安裝在您的 VM 上。 此延伸模組會執行雲端的遠端 證明。 根據預設,這會在資源群組位置部署Standard_D2_v3大小的虛擬機,並傳回虛擬機的 FQDN。
使用用戶數據部署虛擬機

部署至 Azure
此範本可讓您建立虛擬機,並將用戶數據傳遞至 VM。 此範本也會部署虛擬網路、公用IP位址和網路介面。
使用 Windows Admin Center 擴充功能部署 Windows VM

部署至 Azure
此範本可讓您使用 Windows Admin Center 擴充功能部署 Windows VM,直接從 Azure 入口網站管理 VM。
使用 Azure 安全基準 Windows VM

部署至 Azure
此範本會在具有公用IP位址的新虛擬網路中建立執行 Windows Server 的虛擬機。 部署機器之後,就會安裝客體設定延伸模組,並套用適用於 Windows Server 的 Azure 安全基準。 如果機器的設定漂移,您可以再次部署範本來重新套用設定。
部署具有可變數據磁碟數目的 Windows VM

部署至 Azure
此範本可讓您部署簡單的 VM,並使用 參數指定部署時間的數據磁碟數目。 請注意,數據磁碟的數目和大小是由 VM 大小所系結。 此範例的 VM 大小是Standard_DS4_v2,預設為 16 個數據磁碟。
使用 SSH Windows Server VM

部署至 Azure
部署已啟用開啟 SSH 的單一 Windows VM,讓您可以使用密鑰型驗證透過 SSH 連線。
建立數據管理閘道並在 Azure VM 上安裝

部署至 Azure
此範本會部署虛擬機,並建立可運作的數據管理閘道
使用 RDP 連接埠 虛擬機

部署至 Azure
建立虛擬機,併為負載平衡器中的 VM 建立 RDP 的 NAT 規則
建立具有多個空白StandardSSD_LRS數據磁碟的 VM

部署至 Azure
此範本可讓您從指定的映像建立 Windows 虛擬機。 它預設也會連結多個空的 StandardSSD 數據磁碟。 請注意,您可以指定空白數據磁碟的大小和記憶體類型(Standard_LRS、StandardSSD_LRS和Premium_LRS)。
Azure VM 上的自我裝載整合運行時間

部署至 Azure
此範本會建立自我裝載整合運行時間,並在 Azure 虛擬機上註冊它
將多個 VM 新增至虛擬機擴展集

部署至 Azure
此範本會建立具有受控磁碟、公用IP和網路介面的VM數目。 它會以彈性協調流程模式,在虛擬機擴展集中建立 VM。 它們將會佈建在虛擬網路中,此虛擬網路也會建立為部署的一部分
在 ILB 後部署具有 Linux VM 的 VM 擴展集

部署至 Azure
此範本可讓您使用最新修補版本的 Ubuntu Linux 15.10 或 14.04.4-LTS 來部署 Linux VM 的 VM 擴展集。 這些 VM 位於內部負載平衡器後方,具有 SSH 連線的 NAT 規則。

ARM 樣本資源定義

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

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

資源格式

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

{
  "type": "Microsoft.Compute/virtualMachines",
  "apiVersion": "2023-07-01",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "extendedLocation": {
    "name": "string",
    "type": "EdgeZone"
  },
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {}
    }
  },
  "plan": {
    "name": "string",
    "product": "string",
    "promotionCode": "string",
    "publisher": "string"
  },
  "properties": {
    "additionalCapabilities": {
      "hibernationEnabled": "bool",
      "ultraSSDEnabled": "bool"
    },
    "applicationProfile": {
      "galleryApplications": [
        {
          "configurationReference": "string",
          "enableAutomaticUpgrade": "bool",
          "order": "int",
          "packageReferenceId": "string",
          "tags": "string",
          "treatFailureAsDeploymentFailure": "bool"
        }
      ]
    },
    "availabilitySet": {
      "id": "string"
    },
    "billingProfile": {
      "maxPrice": "[json('decimal-as-string')]"
    },
    "capacityReservation": {
      "capacityReservationGroup": {
        "id": "string"
      }
    },
    "diagnosticsProfile": {
      "bootDiagnostics": {
        "enabled": "bool",
        "storageUri": "string"
      }
    },
    "evictionPolicy": "string",
    "extensionsTimeBudget": "string",
    "hardwareProfile": {
      "vmSize": "string",
      "vmSizeProperties": {
        "vCPUsAvailable": "int",
        "vCPUsPerCore": "int"
      }
    },
    "host": {
      "id": "string"
    },
    "hostGroup": {
      "id": "string"
    },
    "licenseType": "string",
    "networkProfile": {
      "networkApiVersion": "2020-11-01",
      "networkInterfaceConfigurations": [
        {
          "name": "string",
          "properties": {
            "auxiliaryMode": "string",
            "auxiliarySku": "string",
            "deleteOption": "string",
            "disableTcpStateTracking": "bool",
            "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",
                        "domainNameLabelScope": "string"
                      },
                      "idleTimeoutInMinutes": "int",
                      "ipTags": [
                        {
                          "ipTagType": "string",
                          "tag": "string"
                        }
                      ],
                      "publicIPAddressVersion": "string",
                      "publicIPAllocationMethod": "string",
                      "publicIPPrefix": {
                        "id": "string"
                      }
                    },
                    "sku": {
                      "name": "string",
                      "tier": "string"
                    }
                  },
                  "subnet": {
                    "id": "string"
                  }
                }
              }
            ],
            "networkSecurityGroup": {
              "id": "string"
            },
            "primary": "bool"
          }
        }
      ],
      "networkInterfaces": [
        {
          "id": "string",
          "properties": {
            "deleteOption": "string",
            "primary": "bool"
          }
        }
      ]
    },
    "osProfile": {
      "adminPassword": "string",
      "adminUsername": "string",
      "allowExtensionOperations": "bool",
      "computerName": "string",
      "customData": "string",
      "linuxConfiguration": {
        "disablePasswordAuthentication": "bool",
        "enableVMAgentPlatformUpdates": "bool",
        "patchSettings": {
          "assessmentMode": "string",
          "automaticByPlatformSettings": {
            "bypassPlatformSafetyChecksOnUserSchedule": "bool",
            "rebootSetting": "string"
          },
          "patchMode": "string"
        },
        "provisionVMAgent": "bool",
        "ssh": {
          "publicKeys": [
            {
              "keyData": "string",
              "path": "string"
            }
          ]
        }
      },
      "requireGuestProvisionSignal": "bool",
      "secrets": [
        {
          "sourceVault": {
            "id": "string"
          },
          "vaultCertificates": [
            {
              "certificateStore": "string",
              "certificateUrl": "string"
            }
          ]
        }
      ],
      "windowsConfiguration": {
        "additionalUnattendContent": [
          {
            "componentName": "Microsoft-Windows-Shell-Setup",
            "content": "string",
            "passName": "OobeSystem",
            "settingName": "string"
          }
        ],
        "enableAutomaticUpdates": "bool",
        "enableVMAgentPlatformUpdates": "bool",
        "patchSettings": {
          "assessmentMode": "string",
          "automaticByPlatformSettings": {
            "bypassPlatformSafetyChecksOnUserSchedule": "bool",
            "rebootSetting": "string"
          },
          "enableHotpatching": "bool",
          "patchMode": "string"
        },
        "provisionVMAgent": "bool",
        "timeZone": "string",
        "winRM": {
          "listeners": [
            {
              "certificateUrl": "string",
              "protocol": "string"
            }
          ]
        }
      }
    },
    "platformFaultDomain": "int",
    "priority": "string",
    "proximityPlacementGroup": {
      "id": "string"
    },
    "scheduledEventsProfile": {
      "osImageNotificationProfile": {
        "enable": "bool",
        "notBeforeTimeout": "string"
      },
      "terminateNotificationProfile": {
        "enable": "bool",
        "notBeforeTimeout": "string"
      }
    },
    "securityProfile": {
      "encryptionAtHost": "bool",
      "securityType": "string",
      "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",
            "securityProfile": {
              "diskEncryptionSet": {
                "id": "string"
              },
              "securityEncryptionType": "string"
            },
            "storageAccountType": "string"
          },
          "name": "string",
          "toBeDetached": "bool",
          "vhd": {
            "uri": "string"
          },
          "writeAcceleratorEnabled": "bool"
        }
      ],
      "diskControllerType": "string",
      "imageReference": {
        "communityGalleryImageId": "string",
        "id": "string",
        "offer": "string",
        "publisher": "string",
        "sharedGalleryImageId": "string",
        "sku": "string",
        "version": "string"
      },
      "osDisk": {
        "caching": "string",
        "createOption": "string",
        "deleteOption": "string",
        "diffDiskSettings": {
          "option": "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",
          "securityProfile": {
            "diskEncryptionSet": {
              "id": "string"
            },
            "securityEncryptionType": "string"
          },
          "storageAccountType": "string"
        },
        "name": "string",
        "osType": "string",
        "vhd": {
          "uri": "string"
        },
        "writeAcceleratorEnabled": "bool"
      }
    },
    "userData": "string",
    "virtualMachineScaleSet": {
      "id": "string"
    }
  },
  "zones": [ "string" or int ]
}

屬性值

virtualMachines

名字 描述 價值
類型 資源類型 'Microsoft.Compute/virtualMachines'
apiVersion 資源 API 版本 '2023-07-01'
名字 資源名稱 字串 (必要)

字元限制:1-15 (Windows)
1-64 (Linux)



合法字元:
無法使用空白、控制字元或下列字元:
~ ! @ # $ % ^ & * ( ) = + _ [ ] { } \ | ; : . ' " , < > / ?

Windows VM 不能包含句點或結尾連字元。

Linux VM 不能以句號或連字元結尾。
位置 資源位置 字串 (必要)
標籤 資源標籤 標記名稱和值的字典。 請參閱範本中的 標籤
extendedLocation 虛擬機的擴充位置。 ExtendedLocation
身份 如果已設定,則為虛擬機的身分識別。 VirtualMachineIdentity
計劃 指定用來建立虛擬機之 Marketplace 映像的相關信息。 此元素僅用於市集映像。 您必須先啟用映像以程序設計方式使用,才能從 API 使用市集映射。 在 Azure 入口網站中,尋找您想要使用的市集映像,然後按兩下 [想要以程序設計方式部署]、[開始使用] ->。 輸入任何必要資訊,然後按下 [儲存] 計劃
性能 描述虛擬機的屬性。 VirtualMachineProperties
虛擬機區域。 可用性區域陣列做為字串或int。

ExtendedLocation

名字 描述 價值
名字 擴充位置的名稱。 字串
類型 擴充位置的類型。 'EdgeZone'

VirtualMachineIdentity

名字 描述 價值
類型 用於虛擬機的身分識別類型。 類型 'SystemAssigned, UserAssigned' 包含隱含建立的身分識別和一組使用者指派的身分識別。 類型 『None』 會從虛擬機中移除任何身分識別。 'None'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned'
userAssignedIdentities 與虛擬機相關聯的使用者身分識別清單。 使用者身分識別字典索引鍵參考的格式為 ARM 資源標識符:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'。 UserAssignedIdentities

UserAssignedIdentities

名字 描述 價值
{自定義屬性} UserAssignedIdentitiesValue

UserAssignedIdentitiesValue

此物件不包含在部署期間設定的任何屬性。 所有屬性都是 ReadOnly。

計劃

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

VirtualMachineProperties

名字 描述 價值
additionalCapabilities 指定在虛擬機上啟用或停用的其他功能。 AdditionalCapabilities
applicationProfile 指定應該提供給 VM/VMSS 使用的資源庫應用程式。 ApplicationProfile
availabilitySet 指定虛擬機應指派之可用性設定組的相關信息。 相同可用性設定組中指定的虛擬機會配置給不同的節點,以將可用性最大化。 如需可用性設定組的詳細資訊,請參閱 可用性設定組概觀。 如需 Azure 計劃性維護的詳細資訊,請參閱 Azure中虛擬機的維護和更新。 目前,VM 只能在建立時新增至可用性設定組。 要新增 VM 的可用性設定組應該位於與可用性設定組資源相同的資源群組之下。 現有的 VM 無法新增至可用性設定組。 這個屬性不能與非 Null properties.virtualMachineScaleSet 參考一起存在。 SubResource
billingProfile 指定 Azure Spot 虛擬機的計費相關詳細數據。 API 版本下限:2019-03-01。 BillingProfile
capacityReservation 指定用來配置虛擬機之容量保留區的相關信息。 API 版本下限:2021-04-01。 CapacityReservationProfile
diagnosticsProfile 指定開機診斷設定狀態。 API 版本下限:2015-06-15。 DiagnosticsProfile
evictionPolicy 指定 Azure Spot 虛擬機和 Azure Spot 擴展集的收回原則。 針對 Azure Spot 虛擬機,支援「解除分配」和「刪除」,且最低 API 版本為 2019-03-01。 針對 Azure Spot 擴展集,支援「解除分配」和「刪除」,且最低 API 版本為 2017-10-30-preview。 'Deallocate'
'Delete'
extensionsTimeBudget 指定所有延伸模組要啟動的時間。 持續時間應介於 15 分鐘到 120 分鐘之間(含),且應以 ISO 8601 格式指定。 預設值為90分鐘(PT1H30M)。 API 版本下限:2020-06-01。 字串
hardwareProfile 指定虛擬機的硬體設定。 HardwareProfile
主機 指定虛擬機所在專用主機的相關信息。 API 版本下限:2018-10-01。 SubResource
hostGroup 指定虛擬機所在專用主機群組的相關信息。 注意: 用戶無法同時指定主機和 hostGroup 屬性。 API 版本下限:2020-06-01。 SubResource
licenseType 指定所使用的映像或磁碟已獲內部部署授權。

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

Windows_Client

Windows_Server

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

RHEL_BYOS (RHEL)

SLES_BYOS (適用於 SUSE)

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

適用於Linux Server的 Azure Hybrid Use Benefit

API 版本下限:2015-06-15
字串
networkProfile 指定虛擬機的網路介面。 NetworkProfile
osProfile 指定建立虛擬機時所使用的作業系統設定。 布建 VM 之後,就無法變更某些設定。 OSProfile
platformFaultDomain 指定要在其中建立虛擬機的擴展集邏輯容錯網域。 根據預設,虛擬機會自動指派給容錯網域,以在可用的容錯網域之間維持平衡。 只有當設定此虛擬機的 'virtualMachineScaleSet' 屬性時,才適用這個屬性。 參考的虛擬機擴展集必須具有大於 1 的 『platformFaultDomainCount』。 建立虛擬機之後,就無法更新這個屬性。 容錯網域指派可以在虛擬機實例檢視中檢視。 最低 api\version:2020\12\01。 int
優先權 指定虛擬機的優先順序。 API 版本下限:2019-03-01 'Low'
'Regular'
'Spot'
proximityPlacementGroup 指定應該指派虛擬機之鄰近放置群組的相關信息。 API 版本下限:2018-04-01。 SubResource
scheduledEventsProfile 指定排程的事件相關組態。 ScheduledEventsProfile
securityProfile 指定虛擬機的安全性相關配置檔設定。 SecurityProfile
storageProfile 指定虛擬機磁碟的記憶體設定。 StorageProfile
userData VM 的 UserData,其必須是base-64編碼。 客戶不應在此傳遞任何秘密。 API 版本下限:2021-03-01。 字串
virtualMachineScaleSet 指定應該指派虛擬機之虛擬機擴展集的相關信息。 相同虛擬機擴展集中指定的虛擬機會配置給不同的節點,以將可用性最大化。 目前,VM 只能在建立時新增至虛擬機擴展集。 現有的 VM 無法新增至虛擬機擴展集。 這個屬性不能與非 Null properties.availabilitySet 參考一起存在。 最低 api\version:2019\03\01。 SubResource

AdditionalCapabilities

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

ApplicationProfile

名字 描述 價值
galleryApplications 指定應該提供給 VM/VMSS 的資源庫應用程式 VMGalleryApplication[]

VMGalleryApplication

名字 描述 價值
configurationReference 選擇性,指定 Azure Blob 的 URI,如果提供的話,將會取代套件的預設組態 字串
enableAutomaticUpgrade 如果設定為 true,當 PIR/SIG 中提供新的資源庫應用程式版本時,VM/VMSS 會自動更新它 bool
次序 選擇性,指定必須安裝套件的順序 int
packageReferenceId 指定 /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/applications/{application}/versions/{version} 形式的 GalleryApplicationVersion 資源標識符 字串 (必要)
標籤 選擇性,指定更多泛型內容的傳遞值。 字串
treatFailureAsDeploymentFailure 選擇性,如果為 true,VmApplication 中任何作業的任何失敗都會使部署失敗 bool

SubResource

名字 描述 價值
id 資源標識碼 字串

BillingProfile

名字 描述 價值
maxPrice 指定您願意為 Azure Spot VM/VMSS 付費的最高價格。 這個價格以美元為單位。

此價格會與 VM 大小的目前 Azure Spot 價格進行比較。 此外,價格會在建立/更新 Azure Spot VM/VMSS 時進行比較,只有在 maxPrice 大於目前的 Azure Spot 價格時,作業才會成功。

如果目前的 Azure Spot 價格超出建立 VM/VMSS 之後的 maxPrice,maxPrice 也會用於收回 Azure Spot VM/VMSS。

可能的值為:

- 任何大於零的十進位值。 範例:0.01538

-1 – 表示預設價格 up-to 隨選。

您可以將 maxPrice 設定為 -1,表示基於價格原因,不應收回 Azure Spot VM/VMSS。 此外,如果預設的最大價格不是由您提供,則為 -1。

API 版本下限:2019-03-01。 若要指定十進位值,請使用 json() 函式。
int 或 json decimal

CapacityReservationProfile

名字 描述 價值
capacityReservationGroup 指定容量保留群組資源標識符,該標識元應該用於配置已保留足夠容量的虛擬機或擴展集 VM 實例。 如需詳細資訊, https://aka.ms/CapacityReservation 請參閱 。 SubResource

DiagnosticsProfile

名字 描述 價值
bootDiagnostics 開機診斷是一項偵錯功能,可讓您檢視控制台輸出和螢幕快照來診斷 VM 狀態。 NOTE:如果指定 storageUri,請確定記憶體帳戶位於與 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'
vmSizeProperties 指定自定義虛擬機大小的屬性。 API 版本下限:2021-07-01。 此功能仍處於預覽模式,VirtualMachineScaleSet 不支援此功能。 如需詳細資訊,請遵循 VM 自定義 中的指示。 VMSizeProperties

VMSizeProperties

名字 描述 價值
vCPUUsAvailable 指定 VM 可用的 vCPU 數目。 當要求本文中未指定此屬性時,預設行為是將它設定為 api 回應中公開的 vCPU 值,列出區域中所有可用的虛擬機大小 int
vCPUUsPerCore 指定 vCPU 與實體核心比率。 當要求本文中未指定此屬性時,預設行為會針對 api 回應中公開的 VM 大小設定為 vCPUUsPerCore 的值,列出區域中所有可用的虛擬機大小,將此屬性設定為 1 也表示已停用超線程處理。 int

NetworkProfile

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

VirtualMachineNetworkInterfaceConfiguration

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

VirtualMachineNetworkInterfaceConfigurationPropertie...

名字 描述 價值
auxiliaryMode 指定是否為網路介面資源啟用輔助模式。 'AcceleratedConnections'
'Floating'
'None'
auxiliarySku 指定是否為網路介面資源啟用輔助 SKU。 'A1'
'A2'
'A4'
'A8'
'None'
deleteOption 指定刪除 VM 時網路介面會發生什麼事 'Delete'
'Detach'
disableTcpStateTracking 指定是否停用 tcp 狀態追蹤的網路介面。 bool
dnsSettings 要套用在網路介面上的 DNS 設定。 VirtualMachineNetworkInterfaceDnsSettingsConfigurati...
dscpConfiguration SubResource
enableAcceleratedNetworking 指定網路介面是否已啟用加速網路功能。 bool
enableFpga 指定網路介面是否已啟用 FPGA 網路功能。 bool
enableIPForwarding 是否在此 NIC 上啟用 IP 轉送。 bool
ipConfigurations 指定網路介面的IP組態。 VirtualMachineNetworkInterfaceIPConfiguration[] (必要)
networkSecurityGroup 網路安全組。 SubResource
主要 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool

VirtualMachineNetworkInterfaceDnsSettingsConfigurati...

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

VirtualMachineNetworkInterfaceIPConfiguration

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

VirtualMachineNetworkInterfaceIPConfigurationPropert...

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

VirtualMachinePublicIPAddressConfiguration

名字 描述 價值
名字 publicIP 位址組態名稱。 字串 (必要)
性能 描述虛擬機IP組態的PublicIPAddress組態 VirtualMachinePublicIPAddressConfigurationProperties
sku 描述公用IP Sku。 它只能將 OrchestrationMode 設定為彈性。 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 網路設定檔唯一識別碼的串連。 字串 (必要)
domainNameLabelScope 將要建立之 PublicIPAddress 資源的功能變數名稱標籤範圍。 產生的名稱標籤是根據功能變數名稱標籤範圍和 vm 網路配置檔唯一識別碼,與原則串連哈希功能變數名稱標籤。 'NoReuse'
'ResourceGroupReuse'
'SubscriptionReuse'
'TenantReuse'

VirtualMachineIpTag

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

PublicIPAddressSku

名字 描述 價值
名字 指定公用IP SKU 名稱 'Basic'
'Standard'
指定公用IP SKU層 'Global'
'地區'

NetworkInterfaceReference

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

NetworkInterfaceReferenceProperties

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

OSProfile

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

最小長度 (Windows): 8 個字元

最小長度 (Linux): 6 個字元

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

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

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

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

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

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

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

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

僅限 Windows 的限制: 不能以 “” 結尾。

不允許的值: “administrator”、“admin”、“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 必須設定為 True 或省略的選擇性屬性。 bool
秘密 指定應該安裝在虛擬機上的憑證集。 若要在虛擬機上安裝憑證,建議使用適用於Linux 的 Azure Key Vault 虛擬機擴充功能,或適用於Windows的 Azure Key Vault 虛擬機擴充功能。 VaultSecretGroup[]
windowsConfiguration 指定虛擬機上的 Windows 作業系統設定。 WindowsConfiguration

LinuxConfiguration

名字 描述 價值
disablePasswordAuthentication 指定是否應停用密碼驗證。 bool
enableVMAgentPlatformUpdates 指出是否為Linux虛擬機啟用VMAgent平臺更新。 默認值為 false。 bool
patchSettings [預覽功能]指定與Linux上的VM客體修補相關的設定。 LinuxPatchSettings
provisionVMAgent 指出虛擬機器代理程式是否應該佈建在虛擬機上。 當要求本文中未指定此屬性時,預設行為是將它設定為 true。 這可確保 VM 代理程式已安裝在 VM 上,以便稍後將擴充功能新增至 VM。 bool
ssh 指定 Linux OS 的 SSH 金鑰組態。 SshConfiguration

LinuxPatchSettings

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

可能的值為:

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

AutomaticByPlatform - 平台將觸發定期修補程序評估。 屬性 provisionVMAgent 必須為 true。
'AutomaticByPlatform'
'ImageDefault'
automaticByPlatformSettings 在 Linux 上的 VM 客體修補中,指定修補程式模式 AutomaticByPlatform 的其他設定。 LinuxVMGuestPatchAutomaticByPlatformSettings
patchMode 將 VM 客體修補模式指定為彈性的 IaaS 虛擬機或與虛擬機擴展集相關聯的虛擬機。

可能的值為:

ImageDefault - 會使用虛擬機的預設修補組態。

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

LinuxVMGuestPatchAutomaticByPlatformSettings

名字 描述 價值
bypassPlatformSafetyChecksOnUserSchedule 讓客戶在不意外升級的情況下排程修補 bool
rebootSetting 指定所有 AutomaticByPlatform 修補程式安裝作業的重新啟動設定。 'Always'
'IfRequired'
'Never'
'Unknown'

SshConfiguration

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

SshPublicKey

名字 描述 價值
keyData 用來透過 ssh 向 VM 進行驗證的 SSH 公鑰憑證。 密鑰至少必須是 2048 位,且格式為 ssh-rsa。 如需建立 ssh 金鑰,請參閱 [在 Azure 中建立 Linux 和 Mac 上的 SSH 密鑰]/azure/virtual-machines/linux/create-ssh-keys-detailed。 字串
路徑 指定已建立 VM 上儲存 SSH 公鑰的完整路徑。 如果檔案已經存在,指定的索引鍵會附加至檔案。 範例:/home/user/.ssh/authorized_keys 字串

VaultSecretGroup

名字 描述 價值
sourceVault Key Vault 的相對 URL,其中包含 VaultCertificates 中的所有憑證。 SubResource
vaultCertificates SourceVault 中包含憑證的金鑰保存庫參考清單。 VaultCertificate[]

VaultCertificate

名字 描述 價值
certificateStore 針對 Windows VM,指定應新增憑證之虛擬機上的證書存儲。 指定的證書存儲隱含在 LocalMachine 帳戶中。 針對 Linux VM,憑證檔案會放在 /var/lib/waagent 目錄底下,檔名 <X509 憑證檔案的大寫Thumbprint>.crt,並針對私鑰 <大寫Thumbprint>.prv。 這兩個檔案都是 .pem 格式。 字串
certificateUrl 這是已上傳至 Key Vault 做為秘密之憑證的 URL。 如需將秘密新增至 Key Vault,請參閱 將金鑰或秘密新增至金鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼,其編碼方式為 UTF-8:

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

WindowsConfiguration

名字 描述 價值
additionalUnattendContent 指定其他base-64編碼的 XML 格式資訊,這些資訊可以包含在 Windows 安裝程式所使用的 Unattend.xml 檔案中。 AdditionalUnattendContent[]
enableAutomaticUpdates 指出是否為 Windows 虛擬機啟用自動更新。 默認值為 true。 針對虛擬機擴展集,此屬性可以更新,更新將會在OS重新佈建上生效。 bool
enableVMAgentPlatformUpdates 指出是否為 Windows 虛擬機啟用 VMAgent 平臺更新。 默認值為 false。 bool
patchSettings [預覽功能]指定與 Windows 上的 VM 客體修補相關的設定。 PatchSettings
provisionVMAgent 指出虛擬機器代理程式是否應該佈建在虛擬機上。 當要求本文中未指定這個屬性時,預設會設定為 true。 這可確保 VM 代理程式已安裝在 VM 上,以便稍後將擴充功能新增至 VM。 bool
timeZone 指定虛擬機的時區。 例如「太平洋標準時間」。 可能的值可以從 TimeZoneInfo.GetSystemTimeZones傳回的時區 TimeZoneInfo.Id 值。 字串
winRM 指定 Windows 遠端管理接聽程式。 這可啟用遠端 Windows PowerShell。 WinRMConfiguration

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'
automaticByPlatformSettings 指定 Windows 上 VM 客體修補中的 Patch 模式 AutomaticByPlatform 的其他設定。 WindowsVMGuestPatchAutomaticByPlatformSettings
enableHotpatching 可讓客戶修補其 Azure VM,而不需要重新啟動。 針對 enableHotpatching,'provisionVMAgent' 必須設定為 true,且 'patchMode' 必須設定為 'AutomaticByPlatform'。 bool
patchMode 將 VM 客體修補模式指定為彈性的 IaaS 虛擬機或與虛擬機擴展集相關聯的虛擬機。

可能的值為:

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

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

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

WindowsVMGuestPatchAutomaticByPlatformSettings

名字 描述 價值
bypassPlatformSafetyChecksOnUserSchedule 讓客戶在不意外升級的情況下排程修補 bool
rebootSetting 指定所有 AutomaticByPlatform 修補程式安裝作業的重新啟動設定。 'Always'
'IfRequired'
'Never'
'Unknown'

WinRMConfiguration

名字 描述 價值
聽眾 Windows 遠端管理接聽程式清單 WinRMListener[]

WinRMListener

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

{
“data”:“{Base64-encoded-certificate}”,
“dataType”:“pfx”,
“password”:“{pfx-file-password}”
}
若要在虛擬機上安裝憑證,建議使用適用於Linux 的 Azure Key Vault 虛擬機擴充功能,或適用於Windows的 Azure Key Vault 虛擬機擴充功能。
字串
協定 指定 WinRM 接聽程式的通訊協定。 可能的值為:HTTP、https。 'Http'
'Https'

ScheduledEventsProfile

名字 描述 價值
osImageNotificationProfile 指定OS映像排程事件相關組態。 OSImageNotificationProfile
terminateNotificationProfile 指定終止已排程的事件相關組態。 TerminateNotificationProfile

OSImageNotificationProfile

名字 描述 價值
使 指定是否啟用或停用OS映像排程事件。 bool
notBeforeTimeout 虛擬機重新映像或升級其操作系統的時間長度,在事件自動核准之前,必須核准OS映射排程事件(逾時)。 設定是以 ISO 8601 格式指定,且值必須是 15 分鐘(PT15M) 字串

TerminateNotificationProfile

名字 描述 價值
使 指定是否啟用或停用終止排程事件。 bool
notBeforeTimeout 刪除虛擬機的可設定時間長度,在事件自動核准之前,必須先核准終止排程事件(逾時)。 設定必須以 ISO 8601 格式指定,預設值為 5 分鐘(PT5M) 字串

SecurityProfile

名字 描述 價值
encryptionAtHost 用戶可以在要求中使用這個屬性來啟用或停用虛擬機或虛擬機擴展集的主機加密。 這會啟用所有磁碟的加密,包括主機本身的資源/暫存磁碟。 默認行為為:除非資源將此屬性設定為 true,否則將會停用主機的加密。 bool
securityType 指定虛擬機的 SecurityType。 它必須設定為任何指定的值,才能啟用 UefiSettings。 默認行為為:除非設定此屬性,否則不會啟用 UefiSettings。 'ConfidentialVM'
'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[]
diskControllerType 指定為 VM 設定的磁碟控制器類型。 注意:如果未指定提供的虛擬機建立時,此屬性會設定為預設磁碟控制器類型,而 'hyperVGeneration' 會根據指定之最低 API 版本之操作系統磁碟和 VM 大小的功能設定為 V2。 您必須在更新 VM 控制器類型之前解除分配 VM,除非您在 VM 設定中更新 VM 大小,以隱含解除分配和重新配置 VM。 API 版本下限:2022-08-01。 'NVMe'
'SCSI'
imageReference 指定要使用之映像的相關信息。 您可以指定平臺映像、市集映像或虛擬機映像的相關信息。 當您想要使用平臺映像、市集映像或虛擬機映像,但未用於其他建立作業時,則需要此元素。 ImageReference
osDisk 指定虛擬機所使用的作業系統磁碟相關信息。 如需磁碟的詳細資訊,請參閱 關於 Azure 虛擬機器的磁碟和 VHD OSDisk

DataDisk

名字 描述 價值
緩存 指定快取需求。 可能的值為:None、ReadOnly、ReadWrite。 預設行為為:標準記憶體的 None。進階記憶體的 ReadOnly。 'None'
'ReadOnly'
'ReadWrite'
createOption 指定應如何建立虛擬機。 可能的值為:Attach。 當您使用特製化磁碟來建立虛擬機時,會使用此值。 FromImage。 當您使用映像來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也應該使用上述的 imageReference 元素。 如果您使用市集映射,則也應該使用先前所述的 plan 元素。 'Attach'
'Empty'
'FromImage' (必要)
deleteOption 指定在 VM 刪除時應該刪除或中斷連結資料磁碟。 可能的值為:Delete。 如果使用此值,刪除 VM 時會刪除資料磁碟。 分離。 如果使用此值,則會在刪除 VM 之後保留資料磁碟。 預設值設定為 Detach 'Delete'
'Detach'
detachOption 指定卸離磁碟時所要使用的卸離行為,或已在從虛擬機中斷鏈接的過程中使用的行為。 支援的值:ForceDetach。 detachOption:ForceDetach 僅適用於受控數據磁碟。 如果先前的數據磁盤中斷鏈接嘗試未完成,因為虛擬機發生非預期的失敗,磁碟仍未釋放,則請使用強制卸離作為最後手段選項,強制中斷連結磁碟與 VM。 使用這個卸離行為時,所有寫入可能都沒有排清。 這項功能仍處於預覽 模式,且 VirtualMachineScaleSet 不支援此功能。 若要強制將數據磁碟更新強制卸離至 『true』,以及設定 detachOption: 'ForceDetach'。 'ForceDetach'
diskSizeGB 指定以 GB 為單位的空白資料磁碟大小。 這個元素可用來覆寫虛擬機映像中的磁碟大小。 屬性 'diskSizeGB' 是磁碟的位元組 x 1024^3,值不能大於 1023。 int
圖像 來源使用者映像虛擬硬碟。 在連接至虛擬機之前,將會先複製虛擬硬碟。 如果提供SourceImage,則目的地虛擬硬碟不得存在。 VirtualHardDisk
指定數據磁碟的邏輯單元編號。 這個值是用來識別 VM 內的數據磁碟,因此對於連結至 VM 的每個數據磁碟而言都必須是唯一的。 int (必要)
managedDisk 受控磁碟參數。 ManagedDiskParameters
名字 磁碟名稱。 字串
toBeDetached 指定數據磁碟是否正在從 VirtualMachine/VirtualMachineScaleset 中斷連結 bool
vhd 虛擬硬碟。 VirtualHardDisk
writeAcceleratorEnabled 指定是否應該在磁碟上啟用或停用 writeAccelerator。 bool

VirtualHardDisk

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

ManagedDiskParameters

名字 描述 價值
diskEncryptionSet 指定受控磁碟的客戶受控磁碟加密集資源標識符。 DiskEncryptionSetParameters
id 資源標識碼 字串
securityProfile 指定受控磁碟的安全性配置檔。 VMDiskSecurityProfile
storageAccountType 指定受控磁碟的記憶體帳戶類型。 注意:UltraSSD_LRS只能與數據磁碟搭配使用,因此無法與OS磁碟搭配使用。 'PremiumV2_LRS'
'Premium_LRS'
'Premium_ZRS'
'StandardSSD_LRS'
'StandardSSD_ZRS'
'Standard_LRS'
'UltraSSD_LRS'

DiskEncryptionSetParameters

名字 描述 價值
id 資源標識碼 字串

VMDiskSecurityProfile

名字 描述 價值
diskEncryptionSet 針對客戶受控密鑰加密的機密VM OS 磁碟和 VMGuest Blob 所使用的受控磁碟,指定客戶受控磁碟加密集資源識別碼。 DiskEncryptionSetParameters
securityEncryptionType 指定受控磁碟的 EncryptionType。 它設定為 DiskWithVMGuestState 以加密受控磁碟以及 VMGuestState Blob,而 VMGuestStateOnly 則只會加密 VMGuestState Blob。 注意: 只能設定機密 VM。 'DiskWithVMGuestState'
'VMGuestStateOnly'

ImageReference

名字 描述 價值
communityGalleryImageId 指定 vm 部署的社群資源庫映像唯一標識碼。 這可以從社群資源庫映像 GET 呼叫擷取。 字串
id 資源標識碼 字串
提供 指定用來建立虛擬機的平臺映像或市集映像供應專案。 字串
發行人 映像發行者。 字串
sharedGalleryImageId 指定 vm 部署的共享資源庫映像唯一標識碼。 這可以從共用資源庫映像 GET 呼叫擷取。 字串
sku 映像 SKU。 字串
版本 指定用來建立虛擬機的平臺映像或市集映像版本。 允許的格式為 Major.Minor.Build 或 'latest'。 主要、次要和組建是十進位數。 指定 'latest' 以在部署時間使用可用映像的最新版本。 即使您使用「最新」,即使有新版本可用,VM 映像也不會在部署時間之後自動更新。 請勿使用欄位 'version' 進行資源庫映射部署,資源庫映射應一律使用 'id' 字段進行部署,若要使用資源庫映射的 'latest' 版本,只要設定 '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/images/{imageName}' 字段,即可不使用版本輸入。 字串

OSDisk

名字 描述 價值
緩存 指定快取需求。 可能的值為:None、ReadOnly、ReadWrite。 預設行為為:標準記憶體的 None。進階記憶體的 ReadOnly。 'None'
'ReadOnly'
'ReadWrite'
createOption 指定應如何建立虛擬機。 可能的值為:Attach。 當您使用特製化磁碟來建立虛擬機時,會使用此值。 FromImage。 當您使用映像來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也應該使用上述的 imageReference 元素。 如果您使用市集映射,則也應該使用先前所述的 plan 元素。 'Attach'
'Empty'
'FromImage' (必要)
deleteOption 指定 VM 刪除時應刪除或中斷連結 OS 磁碟。 可能的值為:Delete。 如果使用這個值,刪除 VM 時會刪除 OS 磁碟。 分離。 如果使用這個值,則會在刪除 VM 之後保留 os 磁碟。 預設值設定為 Detach。 針對暫時的 OS 磁碟,預設值會設定為 [刪除]。 使用者無法變更暫時 OS 磁碟的刪除選項。 'Delete'
'Detach'
diffDiskSettings 指定虛擬機所用作業系統磁碟的暫時磁碟設定。 DiffDiskSettings
diskSizeGB 指定以 GB 為單位的空白資料磁碟大小。 這個元素可用來覆寫虛擬機映像中的磁碟大小。 屬性 'diskSizeGB' 是磁碟的位元組 x 1024^3,值不能大於 1023。 int
encryptionSettings 指定 OS 磁碟的加密設定。 API 版本下限:2015-06-15。 DiskEncryptionSettings
圖像 來源使用者映像虛擬硬碟。 在連接至虛擬機之前,將會先複製虛擬硬碟。 如果提供SourceImage,則目的地虛擬硬碟不得存在。 VirtualHardDisk
managedDisk 受控磁碟參數。 ManagedDiskParameters
名字 磁碟名稱。 字串
osType 此屬性可讓您指定從使用者映像或特製化 VHD 建立 VM 時,磁碟包含的 OS 類型。 可能的值為:Windows、Linux。 'Linux'
'Windows'
vhd 虛擬硬碟。 VirtualHardDisk
writeAcceleratorEnabled 指定是否應該在磁碟上啟用或停用 writeAccelerator。 bool

DiffDiskSettings

名字 描述 價值
選擇 指定作業系統磁碟的暫時磁碟設定。 'Local'
放置 指定作業系統磁碟的暫時磁碟位置。 可能的值為:CacheDisk,ResourceDisk。 默認行為為:如果已針對 VM 大小設定快取Disk,CacheDisk,否則會使用 ResourceDisk 。 請參閱 /azure/virtual-machines/windows/size 和 Linux VM 在 /azure/virtual-machines/linux/size 上 Windows VM 的 VM 大小檔,以檢查哪些 VM 大小會公開快取磁碟。 'CacheDisk'
'ResourceDisk'

DiskEncryptionSettings

名字 描述 價值
diskEncryptionKey 指定磁碟加密密鑰的位置,也就是 Key Vault 秘密。 KeyVaultSecretReference
啟用 指定是否應在虛擬機上啟用磁碟加密。 bool
keyEncryptionKey 指定 Key Vault 中金鑰加密金鑰的位置。 KeyVaultKeyReference

KeyVaultSecretReference

名字 描述 價值
secretUrl 參考 Key Vault 中秘密的 URL。 字串 (必要)
sourceVault 包含秘密之 Key Vault 的相對 URL。 SubResource (必要)

KeyVaultKeyReference

名字 描述 價值
keyUrl 參考 Key Vault 中金鑰加密金鑰的 URL。 字串 (必要)
sourceVault 包含金鑰之 Key Vault 的相對 URL。 SubResource (必要)

快速入門範本

下列快速入門範本會部署此資源類型。

範本 描述
部署簡單的Linux VM並將私人IP更新為靜態

部署至 Azure
此範本可讓您從市集中使用Ubuntu部署簡單的Linux VM。 這會使用動態指派的IP位址,在資源群組位置中部署 VNET、子網和 A1 大小 VM,然後將它轉換成靜態IP。
使用資源迴圈在可用性設定組中建立 VM

部署至 Azure
使用資源迴圈在可用性設定組中建立 2-5 部 VM。 VM 可以是 Unbuntu 或 Windows,最多 5 部 VM,因為此範例會使用單一 storageAccount
使用受控磁碟 多重 VM 範本

部署至 Azure
此範本會建立具有受控磁碟、公用IP和網路介面的VM數目。 它會在單一可用性設定組中建立 VM。 它們將會佈建在虛擬網路中,此虛擬網路也會建立為部署的一部分
在 Windows VM 上安裝檔案

部署至 Azure
此範本可讓您部署 Windows VM 並執行自定義 PowerShell 腳本,以在該 VM 上安裝檔案。
使用自定義數據部署虛擬機

部署至 Azure
此範本可讓您建立虛擬機,並將自定義數據傳遞至 VM。 此範本也會部署記憶體帳戶、虛擬網路、公用IP位址和網路介面。
部署具有診斷 的進階 Windows VM

部署至 Azure
此範本可讓您使用 Windows 版本的幾個不同選項來部署進階 Windows VM,並使用最新的修補版本。
在不同資源群組的 VNET 中建立 VM

部署至 Azure
此範本會在位於不同資源群組的 VNET 中建立 VM
將 VM 加入現有的網域

部署至 Azure
此範本示範在雲端中加入私人 AD 網域。
建立具有動態選取數據磁碟的 VM

部署至 Azure
此範本可讓用戶選取想要新增至 VM 的數據磁碟數目。
從 EfficientIP VHD 建立 VM

部署至 Azure
此範本會從 EfficientIP VHD 建立 VM,並讓您將其連線到現有的 VNET,該 VNET 可以位於另一個資源群組中,然後是虛擬機
從使用者映像建立 VM

部署至 Azure
此範本可讓您從使用者映像建立虛擬機。 此範本也會部署虛擬網路、公用IP位址和網路介面。
從一般化 VHD 在新的或現有的 vnet 中建立 VM

部署至 Azure
此範本會從一般化 VHD 建立 VM,並讓您將其連線到新的或現有的 VNET,該 VNET 可以位於虛擬機以外的另一個資源群組中
CentOS/UbuntuServer 自動動態磁碟 & Docker 1.12(cs)

部署至 Azure
這是建立單一實例 CentOS 7.2/7.1/6.5 或 Ubuntu Server 16.04.0-LTS 的常見範本,其中包含可設定的數據磁碟數目(可設定的大小)。 入口網站參數中可以提及最多 16 個磁碟,而且每個磁碟的大小上限應小於 1023 GB。 MDADM RAID0 Array 已自動掛接,且會繼續重新啟動。 最新的 Docker 1.12(cs3) (Swarm),docker-compose 1.9.0 & docker-machine 0.8.2 可供使用者 azure-cli 使用,以 docker 容器自動執行。 這個單一實例範本是 HPC/GPU 叢集範本 @ https://github.com/azurebigcompute/BigComputeBench
GitLab Omnibus

部署至 Azure
此範本可簡化使用公用 DNS 在虛擬機上部署 GitLab Omnibus,並利用公用 IP 的 DNS。 它會使用Standard_F8s_v2實例大小,其與參考架構一致,且最多可支援1000位使用者(20 RPS)。 實例已預先設定為搭配使用 HTTPS 與 Let's Encrypt 憑證進行安全連線。
使用序列輸出 Linux VM

部署至 Azure
此範本會建立簡單的 Linux VM,並將參數和序列/主控台設定為輸出至記憶體
部署具有監視和診斷功能的簡單 Windows VM

部署至 Azure
此範本可讓您部署簡單的 Windows VM 以及診斷延伸模組,以啟用 VM 的監視和診斷
使用 MSI 部署 Linux 或 Windows VM

部署至 Azure
此範本可讓您使用受控服務識別來部署Linux或Windows VM。
Azure 上的 Terraform

部署至 Azure
此範本可讓您將 Terraform 工作站部署為具有 MSI 的 Linux VM。
使用 MSI 存取記憶體 Linux VM

部署至 Azure
此範本會部署具有系統指派受控識別的Linux VM,其可存取不同資源群組中的記憶體帳戶。
從具有 4 個空白數據磁碟的 Windows 映射建立 VM

部署至 Azure
此範本可讓您從指定的映像建立 Windows 虛擬機。 它也會連結 4 個空的數據磁碟。 請注意,您可以指定空白數據磁碟的大小。
部署具有多個IP的 VM

部署至 Azure
此範本可讓您部署具有 3 個 IP 組態的 VM。 此樣本會部署名為 myVM1 且具有 3 個 IP 組態的 Linux/Windows VM:IPConfig-1IPConfig-2IPConfig-3
部署具有多個 NIC 的 Linux VM

部署至 Azure
此範本會建立具有多個子網的 VNet,並部署具有多個 Ubuntu VM 的 Ubuntu VM
使用條件式資源 虛擬機

部署至 Azure
此範本允許使用虛擬網路、記憶體和公用IP位址的新或現有資源來部署Linux VM。 它也允許在 SSH 和密碼驗證之間進行選擇。 範本會使用條件和邏輯函式來移除巢狀部署的需求。
從現有的 VHD 建立 VM,並將其連線至現有的 VNET

部署至 Azure
此範本會從 VHD (OS + 資料磁碟) 建立 VM,並讓您將其連線到現有的 VNET,該 VNET 可以位於另一個資源群組中,然後是虛擬機
將憑證推送至 Windows VM

部署至 Azure
將憑證推送至 Windows VM。 使用範本在 https://azure.microsoft.com/documentation/templates/101-create-key-vault 建立 Key Vault
使用 Key Vault 保護 VM 密碼

部署至 Azure
此範本可讓您藉由擷取儲存在 Key Vault 中的密碼,來部署簡單的 Windows VM。 因此,密碼永遠不會放在範本參數檔案的純文本中
在資源群組位置部署簡單的FreeBSD VM

部署至 Azure
此範本可讓您使用最新修補的版本,使用FreeBSD版本的幾個不同選項來部署簡單的FreeBSD VM。 這會部署在 D1 VM 大小的資源群組位置。
部署簡單的UbuntuLinux VM 20.04-LTS

部署至 Azure
此範本會部署具有一些 VM 選項的 Ubuntu Server。 您可以提供 VM 名稱、OS 版本、VM 大小,以及系統管理員使用者名稱和密碼。 默認 VM 大小為 Standard_D2s_v3,而 OS 版本為 20.04-LTS。
使用加速網路 部署簡單的Linux VM

部署至 Azure
此範本可讓您使用具有最新修補版本的 Ubuntu 18.04-LTS 18.04-LTS 來部署具有加速網路的簡單 Linux VM。 這會在資源群組位置部署D3_v2大小 VM,並傳回 VM 的 FQDN。
Red Hat Enterprise Linux VM (RHEL 7.8)

部署至 Azure
此範本會部署 Red Hat Enterprise Linux VM (RHEL 7.8),使用標準 D1 VM 上所選版本的隨用隨付You-Go RHEL VM 映射,以及附加至 VM 的額外 100 GiB 數據磁碟。 此映像會收取額外費用 - 如需詳細資訊,請參閱 Azure VM 定價頁面。
Red Hat Enterprise Linux VM (RHEL 7.8 Unmanaged)

部署至 Azure
此範本會部署 Red Hat Enterprise Linux VM (RHEL 7.8),使用隨用隨付You-Go RHEL VM 映射,以取得所選資源群組位置中所選版本的標準A1_v2 VM,以及附加至 VM 的額外 100 GiB 數據磁碟。 此映像會收取額外費用 - 如需詳細資訊,請參閱 Azure VM 定價頁面。
SUSE Linux Enterprise Server VM (SLES 12)

部署至 Azure
此範本可讓您使用隨用隨付You-Go SLES VM 映射,在所選資源群組的位置部署 SUSE Linux Enterprise Server VM (SLES 12),並將額外的 100 GiB 數據磁碟連結至 VM。 此映像會收取額外費用 - 如需詳細資訊,請參閱 Azure VM 定價頁面。
部署簡單的 Windows VM

部署至 Azure
此範本可讓您使用 Windows 版本的幾個不同選項來部署簡單的 Windows VM,並使用最新的修補版本。 這會在資源群組位置部署 A2 大小 VM,並傳回 VM 的 FQDN。
使用 Visual Studio 部署 Windows Server VM

部署至 Azure
此範本會部署具有 Visual Code Studio Community 2019 的 Windows Server VM,並針對 VM 提供一些選項。 您可以提供 VM 的名稱、系統管理員使用者名稱和系統管理員密碼。
將 VM 部署到可用性區域

部署至 Azure
此範本可讓您使用最新的修補版本來部署簡單的 VM(Windows 或 Ubuntu)。 這會在指定的位置部署A2_v2大小 VM,並傳回 VM 的 FQDN。
從自定義 VHD 在新的或現有的 vnet 中建立 VM

部署至 Azure
此範本會從特製化 VHD 建立 VM,並可讓您將它連線到新的或現有的 VNET,該 VNET 可以位於虛擬機以外的另一個資源群組中
SQL Server 2014 SP2 Enterprise with Auto Backup

部署至 Azure
此範本會建立已啟用自動備份功能的 SQL Server 2014 SP2 Enterprise 版本
SQL Server 2014 SP1 Enterprise 與自動修補

部署至 Azure
此範本會建立已啟用自動修補功能的 SQL Server 2014 SP1 Enterprise 版本。
SQL Server 2014 SP1 Enterprise 搭配 Azure Key Vault

部署至 Azure
此範本會建立已啟用 Azure Key Vault 整合功能的 SQL Server 2014 SP1 Enterprise 版本。
部署具有 SSH rsa 公鑰的虛擬機

部署至 Azure
此範本可讓您建立具有 SSH rsa 公鑰的虛擬機
部署具有標籤的簡單 Windows VM

部署至 Azure
此範本會部署D2_v3 Windows VM、NIC、記憶體帳戶、虛擬網路、公用IP位址和網路安全組。 標記物件會在變數中建立,並會在適用時套用至所有資源。
部署支援受信任啟動的Linux虛擬機

部署至 Azure
此範本可讓您使用最新修補的版本,使用幾個不同的 Linux 版本選項來部署具有受信任啟動功能的 Linux 虛擬機。 如果您啟用 Secureboot 和 vTPM,客體證明擴充功能將會安裝在您的 VM 上。 此延伸模組會執行雲端的遠端 證明。 根據預設,這會在資源群組位置部署Standard_D2_v3大小的虛擬機,並傳回虛擬機的 FQDN。
部署支援受信任啟動的 Windows 虛擬機

部署至 Azure
此範本可讓您使用 Windows 版本的幾個不同選項,使用最新的修補版本,部署具有受信任啟動功能的 Windows 虛擬機。 如果您啟用 Secureboot 和 vTPM,客體證明擴充功能將會安裝在您的 VM 上。 此延伸模組會執行雲端的遠端 證明。 根據預設,這會在資源群組位置部署Standard_D2_v3大小的虛擬機,並傳回虛擬機的 FQDN。
使用用戶數據部署虛擬機

部署至 Azure
此範本可讓您建立虛擬機,並將用戶數據傳遞至 VM。 此範本也會部署虛擬網路、公用IP位址和網路介面。
使用 Windows Admin Center 擴充功能部署 Windows VM

部署至 Azure
此範本可讓您使用 Windows Admin Center 擴充功能部署 Windows VM,直接從 Azure 入口網站管理 VM。
使用 Azure 安全基準 Windows VM

部署至 Azure
此範本會在具有公用IP位址的新虛擬網路中建立執行 Windows Server 的虛擬機。 部署機器之後,就會安裝客體設定延伸模組,並套用適用於 Windows Server 的 Azure 安全基準。 如果機器的設定漂移,您可以再次部署範本來重新套用設定。
部署具有可變數據磁碟數目的 Windows VM

部署至 Azure
此範本可讓您部署簡單的 VM,並使用 參數指定部署時間的數據磁碟數目。 請注意,數據磁碟的數目和大小是由 VM 大小所系結。 此範例的 VM 大小是Standard_DS4_v2,預設為 16 個數據磁碟。
使用 SSH Windows Server VM

部署至 Azure
部署已啟用開啟 SSH 的單一 Windows VM,讓您可以使用密鑰型驗證透過 SSH 連線。
建立數據管理閘道並在 Azure VM 上安裝

部署至 Azure
此範本會部署虛擬機,並建立可運作的數據管理閘道
使用 RDP 連接埠 虛擬機

部署至 Azure
建立虛擬機,併為負載平衡器中的 VM 建立 RDP 的 NAT 規則
建立具有多個空白StandardSSD_LRS數據磁碟的 VM

部署至 Azure
此範本可讓您從指定的映像建立 Windows 虛擬機。 它預設也會連結多個空的 StandardSSD 數據磁碟。 請注意,您可以指定空白數據磁碟的大小和記憶體類型(Standard_LRS、StandardSSD_LRS和Premium_LRS)。
Azure VM 上的自我裝載整合運行時間

部署至 Azure
此範本會建立自我裝載整合運行時間,並在 Azure 虛擬機上註冊它
將多個 VM 新增至虛擬機擴展集

部署至 Azure
此範本會建立具有受控磁碟、公用IP和網路介面的VM數目。 它會以彈性協調流程模式,在虛擬機擴展集中建立 VM。 它們將會佈建在虛擬網路中,此虛擬網路也會建立為部署的一部分
在 ILB 後部署具有 Linux VM 的 VM 擴展集

部署至 Azure
此範本可讓您使用最新修補版本的 Ubuntu Linux 15.10 或 14.04.4-LTS 來部署 Linux VM 的 VM 擴展集。 這些 VM 位於內部負載平衡器後方,具有 SSH 連線的 NAT 規則。

Terraform (AzAPI 提供者) 資源定義

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

  • 資源群組

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

資源格式

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

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Compute/virtualMachines@2023-07-01"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  identity {
    type = "string"
    identity_ids = []
  }
  body = jsonencode({
    properties = {
      additionalCapabilities = {
        hibernationEnabled = bool
        ultraSSDEnabled = bool
      }
      applicationProfile = {
        galleryApplications = [
          {
            configurationReference = "string"
            enableAutomaticUpgrade = bool
            order = int
            packageReferenceId = "string"
            tags = "string"
            treatFailureAsDeploymentFailure = bool
          }
        ]
      }
      availabilitySet = {
        id = "string"
      }
      billingProfile = {
        maxPrice = "decimal-as-string"
      }
      capacityReservation = {
        capacityReservationGroup = {
          id = "string"
        }
      }
      diagnosticsProfile = {
        bootDiagnostics = {
          enabled = bool
          storageUri = "string"
        }
      }
      evictionPolicy = "string"
      extensionsTimeBudget = "string"
      hardwareProfile = {
        vmSize = "string"
        vmSizeProperties = {
          vCPUsAvailable = int
          vCPUsPerCore = int
        }
      }
      host = {
        id = "string"
      }
      hostGroup = {
        id = "string"
      }
      licenseType = "string"
      networkProfile = {
        networkApiVersion = "2020-11-01"
        networkInterfaceConfigurations = [
          {
            name = "string"
            properties = {
              auxiliaryMode = "string"
              auxiliarySku = "string"
              deleteOption = "string"
              disableTcpStateTracking = bool
              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"
                          domainNameLabelScope = "string"
                        }
                        idleTimeoutInMinutes = int
                        ipTags = [
                          {
                            ipTagType = "string"
                            tag = "string"
                          }
                        ]
                        publicIPAddressVersion = "string"
                        publicIPAllocationMethod = "string"
                        publicIPPrefix = {
                          id = "string"
                        }
                      }
                      sku = {
                        name = "string"
                        tier = "string"
                      }
                    }
                    subnet = {
                      id = "string"
                    }
                  }
                }
              ]
              networkSecurityGroup = {
                id = "string"
              }
              primary = bool
            }
          }
        ]
        networkInterfaces = [
          {
            id = "string"
            properties = {
              deleteOption = "string"
              primary = bool
            }
          }
        ]
      }
      osProfile = {
        adminPassword = "string"
        adminUsername = "string"
        allowExtensionOperations = bool
        computerName = "string"
        customData = "string"
        linuxConfiguration = {
          disablePasswordAuthentication = bool
          enableVMAgentPlatformUpdates = bool
          patchSettings = {
            assessmentMode = "string"
            automaticByPlatformSettings = {
              bypassPlatformSafetyChecksOnUserSchedule = bool
              rebootSetting = "string"
            }
            patchMode = "string"
          }
          provisionVMAgent = bool
          ssh = {
            publicKeys = [
              {
                keyData = "string"
                path = "string"
              }
            ]
          }
        }
        requireGuestProvisionSignal = bool
        secrets = [
          {
            sourceVault = {
              id = "string"
            }
            vaultCertificates = [
              {
                certificateStore = "string"
                certificateUrl = "string"
              }
            ]
          }
        ]
        windowsConfiguration = {
          additionalUnattendContent = [
            {
              componentName = "Microsoft-Windows-Shell-Setup"
              content = "string"
              passName = "OobeSystem"
              settingName = "string"
            }
          ]
          enableAutomaticUpdates = bool
          enableVMAgentPlatformUpdates = bool
          patchSettings = {
            assessmentMode = "string"
            automaticByPlatformSettings = {
              bypassPlatformSafetyChecksOnUserSchedule = bool
              rebootSetting = "string"
            }
            enableHotpatching = bool
            patchMode = "string"
          }
          provisionVMAgent = bool
          timeZone = "string"
          winRM = {
            listeners = [
              {
                certificateUrl = "string"
                protocol = "string"
              }
            ]
          }
        }
      }
      platformFaultDomain = int
      priority = "string"
      proximityPlacementGroup = {
        id = "string"
      }
      scheduledEventsProfile = {
        osImageNotificationProfile = {
          enable = bool
          notBeforeTimeout = "string"
        }
        terminateNotificationProfile = {
          enable = bool
          notBeforeTimeout = "string"
        }
      }
      securityProfile = {
        encryptionAtHost = bool
        securityType = "string"
        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"
              securityProfile = {
                diskEncryptionSet = {
                  id = "string"
                }
                securityEncryptionType = "string"
              }
              storageAccountType = "string"
            }
            name = "string"
            toBeDetached = bool
            vhd = {
              uri = "string"
            }
            writeAcceleratorEnabled = bool
          }
        ]
        diskControllerType = "string"
        imageReference = {
          communityGalleryImageId = "string"
          id = "string"
          offer = "string"
          publisher = "string"
          sharedGalleryImageId = "string"
          sku = "string"
          version = "string"
        }
        osDisk = {
          caching = "string"
          createOption = "string"
          deleteOption = "string"
          diffDiskSettings = {
            option = "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"
            securityProfile = {
              diskEncryptionSet = {
                id = "string"
              }
              securityEncryptionType = "string"
            }
            storageAccountType = "string"
          }
          name = "string"
          osType = "string"
          vhd = {
            uri = "string"
          }
          writeAcceleratorEnabled = bool
        }
      }
      userData = "string"
      virtualMachineScaleSet = {
        id = "string"
      }
    }
    zones = [
      "string" or int
    ]
    extendedLocation = {
      name = "string"
      type = "EdgeZone"
    }
    plan = {
      name = "string"
      product = "string"
      promotionCode = "string"
      publisher = "string"
    }
  })
}

屬性值

virtualMachines

名字 描述 價值
類型 資源類型 “Microsoft.Compute/virtualMachines@2023-07-01”
名字 資源名稱 字串 (必要)

字元限制:1-15 (Windows)
1-64 (Linux)



合法字元:
無法使用空白、控制字元或下列字元:
~ ! @ # $ % ^ & * ( ) = + _ [ ] { } \ | ; : . ' " , < > / ?

Windows VM 不能包含句點或結尾連字元。

Linux VM 不能以句號或連字元結尾。
位置 資源位置 字串 (必要)
parent_id 若要部署至資源群組,請使用該資源群組的標識碼。 字串 (必要)
標籤 資源標籤 標記名稱和值的字典。
extendedLocation 虛擬機的擴充位置。 ExtendedLocation
身份 如果已設定,則為虛擬機的身分識別。 VirtualMachineIdentity
計劃 指定用來建立虛擬機之 Marketplace 映像的相關信息。 此元素僅用於市集映像。 您必須先啟用映像以程序設計方式使用,才能從 API 使用市集映射。 在 Azure 入口網站中,尋找您想要使用的市集映像,然後按兩下 [想要以程序設計方式部署]、[開始使用] ->。 輸入任何必要資訊,然後按下 [儲存] 計劃
性能 描述虛擬機的屬性。 VirtualMachineProperties
虛擬機區域。 可用性區域陣列做為字串或int。

ExtendedLocation

名字 描述 價值
名字 擴充位置的名稱。 字串
類型 擴充位置的類型。 “EdgeZone”

VirtualMachineIdentity

名字 描述 價值
類型 用於虛擬機的身分識別類型。 類型 'SystemAssigned, UserAssigned' 包含隱含建立的身分識別和一組使用者指派的身分識別。 類型 『None』 會從虛擬機中移除任何身分識別。 “SystemAssigned”
“SystemAssigned, UserAssigned”
“UserAssigned”
identity_ids 與虛擬機相關聯的使用者身分識別清單。 使用者身分識別字典索引鍵參考的格式為 ARM 資源標識符:'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'。 使用者身分識別標識碼的陣列。

UserAssignedIdentities

名字 描述 價值
{自定義屬性} UserAssignedIdentitiesValue

UserAssignedIdentitiesValue

此物件不包含在部署期間設定的任何屬性。 所有屬性都是 ReadOnly。

計劃

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

VirtualMachineProperties

名字 描述 價值
additionalCapabilities 指定在虛擬機上啟用或停用的其他功能。 AdditionalCapabilities
applicationProfile 指定應該提供給 VM/VMSS 使用的資源庫應用程式。 ApplicationProfile
availabilitySet 指定虛擬機應指派之可用性設定組的相關信息。 相同可用性設定組中指定的虛擬機會配置給不同的節點,以將可用性最大化。 如需可用性設定組的詳細資訊,請參閱 可用性設定組概觀。 如需 Azure 計劃性維護的詳細資訊,請參閱 Azure中虛擬機的維護和更新。 目前,VM 只能在建立時新增至可用性設定組。 要新增 VM 的可用性設定組應該位於與可用性設定組資源相同的資源群組之下。 現有的 VM 無法新增至可用性設定組。 這個屬性不能與非 Null properties.virtualMachineScaleSet 參考一起存在。 SubResource
billingProfile 指定 Azure Spot 虛擬機的計費相關詳細數據。 API 版本下限:2019-03-01。 BillingProfile
capacityReservation 指定用來配置虛擬機之容量保留區的相關信息。 API 版本下限:2021-04-01。 CapacityReservationProfile
diagnosticsProfile 指定開機診斷設定狀態。 API 版本下限:2015-06-15。 DiagnosticsProfile
evictionPolicy 指定 Azure Spot 虛擬機和 Azure Spot 擴展集的收回原則。 針對 Azure Spot 虛擬機,支援「解除分配」和「刪除」,且最低 API 版本為 2019-03-01。 針對 Azure Spot 擴展集,支援「解除分配」和「刪除」,且最低 API 版本為 2017-10-30-preview。 “解除分配”
“Delete”
extensionsTimeBudget 指定所有延伸模組要啟動的時間。 持續時間應介於 15 分鐘到 120 分鐘之間(含),且應以 ISO 8601 格式指定。 預設值為90分鐘(PT1H30M)。 API 版本下限:2020-06-01。 字串
hardwareProfile 指定虛擬機的硬體設定。 HardwareProfile
主機 指定虛擬機所在專用主機的相關信息。 API 版本下限:2018-10-01。 SubResource
hostGroup 指定虛擬機所在專用主機群組的相關信息。 注意: 用戶無法同時指定主機和 hostGroup 屬性。 API 版本下限:2020-06-01。 SubResource
licenseType 指定所使用的映像或磁碟已獲內部部署授權。

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

Windows_Client

Windows_Server

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

RHEL_BYOS (RHEL)

SLES_BYOS (適用於 SUSE)

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

適用於Linux Server的 Azure Hybrid Use Benefit

API 版本下限:2015-06-15
字串
networkProfile 指定虛擬機的網路介面。 NetworkProfile
osProfile 指定建立虛擬機時所使用的作業系統設定。 布建 VM 之後,就無法變更某些設定。 OSProfile
platformFaultDomain 指定要在其中建立虛擬機的擴展集邏輯容錯網域。 根據預設,虛擬機會自動指派給容錯網域,以在可用的容錯網域之間維持平衡。 只有當設定此虛擬機的 'virtualMachineScaleSet' 屬性時,才適用這個屬性。 參考的虛擬機擴展集必須具有大於 1 的 『platformFaultDomainCount』。 建立虛擬機之後,就無法更新這個屬性。 容錯網域指派可以在虛擬機實例檢視中檢視。 最低 api\version:2020\12\01。 int
優先權 指定虛擬機的優先順序。 API 版本下限:2019-03-01 “Low”
“Regular”
“Spot”
proximityPlacementGroup 指定應該指派虛擬機之鄰近放置群組的相關信息。 API 版本下限:2018-04-01。 SubResource
scheduledEventsProfile 指定排程的事件相關組態。 ScheduledEventsProfile
securityProfile 指定虛擬機的安全性相關配置檔設定。 SecurityProfile
storageProfile 指定虛擬機磁碟的記憶體設定。 StorageProfile
userData VM 的 UserData,其必須是base-64編碼。 客戶不應在此傳遞任何秘密。 API 版本下限:2021-03-01。 字串
virtualMachineScaleSet 指定應該指派虛擬機之虛擬機擴展集的相關信息。 相同虛擬機擴展集中指定的虛擬機會配置給不同的節點,以將可用性最大化。 目前,VM 只能在建立時新增至虛擬機擴展集。 現有的 VM 無法新增至虛擬機擴展集。 這個屬性不能與非 Null properties.availabilitySet 參考一起存在。 最低 api\version:2019\03\01。 SubResource

AdditionalCapabilities

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

ApplicationProfile

名字 描述 價值
galleryApplications 指定應該提供給 VM/VMSS 的資源庫應用程式 VMGalleryApplication[]

VMGalleryApplication

名字 描述 價值
configurationReference 選擇性,指定 Azure Blob 的 URI,如果提供的話,將會取代套件的預設組態 字串
enableAutomaticUpgrade 如果設定為 true,當 PIR/SIG 中提供新的資源庫應用程式版本時,VM/VMSS 會自動更新它 bool
次序 選擇性,指定必須安裝套件的順序 int
packageReferenceId 指定 /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/applications/{application}/versions/{version} 形式的 GalleryApplicationVersion 資源標識符 字串 (必要)
標籤 選擇性,指定更多泛型內容的傳遞值。 字串
treatFailureAsDeploymentFailure 選擇性,如果為 true,VmApplication 中任何作業的任何失敗都會使部署失敗 bool

SubResource

名字 描述 價值
id 資源標識碼 字串

BillingProfile

名字 描述 價值
maxPrice 指定您願意為 Azure Spot VM/VMSS 付費的最高價格。 這個價格以美元為單位。

此價格會與 VM 大小的目前 Azure Spot 價格進行比較。 此外,價格會在建立/更新 Azure Spot VM/VMSS 時進行比較,只有在 maxPrice 大於目前的 Azure Spot 價格時,作業才會成功。

如果目前的 Azure Spot 價格超出建立 VM/VMSS 之後的 maxPrice,maxPrice 也會用於收回 Azure Spot VM/VMSS。

可能的值為:

- 任何大於零的十進位值。 範例:0.01538

-1 – 表示預設價格 up-to 隨選。

您可以將 maxPrice 設定為 -1,表示基於價格原因,不應收回 Azure Spot VM/VMSS。 此外,如果預設的最大價格不是由您提供,則為 -1。

API 版本下限:2019-03-01。 將十進位值指定為字串。
int 或 json decimal

CapacityReservationProfile

名字 描述 價值
capacityReservationGroup 指定容量保留群組資源標識符,該標識元應該用於配置已保留足夠容量的虛擬機或擴展集 VM 實例。 如需詳細資訊, https://aka.ms/CapacityReservation 請參閱 。 SubResource

DiagnosticsProfile

名字 描述 價值
bootDiagnostics 開機診斷是一項偵錯功能,可讓您檢視控制台輸出和螢幕快照來診斷 VM 狀態。 NOTE:如果指定 storageUri,請確定記憶體帳戶位於與 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”
vmSizeProperties 指定自定義虛擬機大小的屬性。 API 版本下限:2021-07-01。 此功能仍處於預覽模式,VirtualMachineScaleSet 不支援此功能。 如需詳細資訊,請遵循 VM 自定義 中的指示。 VMSizeProperties

VMSizeProperties

名字 描述 價值
vCPUUsAvailable 指定 VM 可用的 vCPU 數目。 當要求本文中未指定此屬性時,預設行為是將它設定為 api 回應中公開的 vCPU 值,列出區域中所有可用的虛擬機大小 int
vCPUUsPerCore 指定 vCPU 與實體核心比率。 當要求本文中未指定此屬性時,預設行為會針對 api 回應中公開的 VM 大小設定為 vCPUUsPerCore 的值,列出區域中所有可用的虛擬機大小,將此屬性設定為 1 也表示已停用超線程處理。 int

NetworkProfile

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

VirtualMachineNetworkInterfaceConfiguration

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

VirtualMachineNetworkInterfaceConfigurationPropertie...

名字 描述 價值
auxiliaryMode 指定是否為網路介面資源啟用輔助模式。 “AcceleratedConnections”
“Floating”
“None”
auxiliarySku 指定是否為網路介面資源啟用輔助 SKU。 “A1”
“A2”
“A4”
“A8”
“None”
deleteOption 指定刪除 VM 時網路介面會發生什麼事 “Delete”
“Detach”
disableTcpStateTracking 指定是否停用 tcp 狀態追蹤的網路介面。 bool
dnsSettings 要套用在網路介面上的 DNS 設定。 VirtualMachineNetworkInterfaceDnsSettingsConfigurati...
dscpConfiguration SubResource
enableAcceleratedNetworking 指定網路介面是否已啟用加速網路功能。 bool
enableFpga 指定網路介面是否已啟用 FPGA 網路功能。 bool
enableIPForwarding 是否在此 NIC 上啟用 IP 轉送。 bool
ipConfigurations 指定網路介面的IP組態。 VirtualMachineNetworkInterfaceIPConfiguration[] (必要)
networkSecurityGroup 網路安全組。 SubResource
主要 指定虛擬機有1個以上的網路介面時的主要網路介面。 bool

VirtualMachineNetworkInterfaceDnsSettingsConfigurati...

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

VirtualMachineNetworkInterfaceIPConfiguration

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

VirtualMachineNetworkInterfaceIPConfigurationPropert...

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

VirtualMachinePublicIPAddressConfiguration

名字 描述 價值
名字 publicIP 位址組態名稱。 字串 (必要)
性能 描述虛擬機IP組態的PublicIPAddress組態 VirtualMachinePublicIPAddressConfigurationProperties
sku 描述公用IP Sku。 它只能將 OrchestrationMode 設定為彈性。 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 網路設定檔唯一識別碼的串連。 字串 (必要)
domainNameLabelScope 將要建立之 PublicIPAddress 資源的功能變數名稱標籤範圍。 產生的名稱標籤是根據功能變數名稱標籤範圍和 vm 網路配置檔唯一識別碼,與原則串連哈希功能變數名稱標籤。 “NoReuse”
“ResourceGroupReuse”
“SubscriptionReuse”
“TenantReuse”

VirtualMachineIpTag

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

PublicIPAddressSku

名字 描述 價值
名字 指定公用IP SKU 名稱 “Basic”
“Standard”
指定公用IP SKU層 “Global”
“地區”

NetworkInterfaceReference

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

NetworkInterfaceReferenceProperties

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

OSProfile

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

最小長度 (Windows): 8 個字元

最小長度 (Linux): 6 個字元

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

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

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

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

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

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

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

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

僅限 Windows 的限制: 不能以 “” 結尾。

不允許的值: “administrator”、“admin”、“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 必須設定為 True 或省略的選擇性屬性。 bool
秘密 指定應該安裝在虛擬機上的憑證集。 若要在虛擬機上安裝憑證,建議使用適用於Linux 的 Azure Key Vault 虛擬機擴充功能,或適用於Windows的 Azure Key Vault 虛擬機擴充功能。 VaultSecretGroup[]
windowsConfiguration 指定虛擬機上的 Windows 作業系統設定。 WindowsConfiguration

LinuxConfiguration

名字 描述 價值
disablePasswordAuthentication 指定是否應停用密碼驗證。 bool
enableVMAgentPlatformUpdates 指出是否為Linux虛擬機啟用VMAgent平臺更新。 默認值為 false。 bool
patchSettings [預覽功能]指定與Linux上的VM客體修補相關的設定。 LinuxPatchSettings
provisionVMAgent 指出虛擬機器代理程式是否應該佈建在虛擬機上。 當要求本文中未指定此屬性時,預設行為是將它設定為 true。 這可確保 VM 代理程式已安裝在 VM 上,以便稍後將擴充功能新增至 VM。 bool
ssh 指定 Linux OS 的 SSH 金鑰組態。 SshConfiguration

LinuxPatchSettings

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

可能的值為:

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

AutomaticByPlatform - 平台將觸發定期修補程序評估。 屬性 provisionVMAgent 必須為 true。
“AutomaticByPlatform”
“ImageDefault”
automaticByPlatformSettings 在 Linux 上的 VM 客體修補中,指定修補程式模式 AutomaticByPlatform 的其他設定。 LinuxVMGuestPatchAutomaticByPlatformSettings
patchMode 將 VM 客體修補模式指定為彈性的 IaaS 虛擬機或與虛擬機擴展集相關聯的虛擬機。

可能的值為:

ImageDefault - 會使用虛擬機的預設修補組態。

AutomaticByPlatform - 虛擬機將由平台自動更新。 屬性 provisionVMAgent 必須為 true
“AutomaticByPlatform”
“ImageDefault”

LinuxVMGuestPatchAutomaticByPlatformSettings

名字 描述 價值
bypassPlatformSafetyChecksOnUserSchedule 讓客戶在不意外升級的情況下排程修補 bool
rebootSetting 指定所有 AutomaticByPlatform 修補程式安裝作業的重新啟動設定。 “Always”
“IfRequired”
“Never”
“Unknown”

SshConfiguration

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

SshPublicKey

名字 描述 價值
keyData 用來透過 ssh 向 VM 進行驗證的 SSH 公鑰憑證。 密鑰至少必須是 2048 位,且格式為 ssh-rsa。 如需建立 ssh 金鑰,請參閱 [在 Azure 中建立 Linux 和 Mac 上的 SSH 密鑰]/azure/virtual-machines/linux/create-ssh-keys-detailed。 字串
路徑 指定已建立 VM 上儲存 SSH 公鑰的完整路徑。 如果檔案已經存在,指定的索引鍵會附加至檔案。 範例:/home/user/.ssh/authorized_keys 字串

VaultSecretGroup

名字 描述 價值
sourceVault Key Vault 的相對 URL,其中包含 VaultCertificates 中的所有憑證。 SubResource
vaultCertificates SourceVault 中包含憑證的金鑰保存庫參考清單。 VaultCertificate[]

VaultCertificate

名字 描述 價值
certificateStore 針對 Windows VM,指定應新增憑證之虛擬機上的證書存儲。 指定的證書存儲隱含在 LocalMachine 帳戶中。 針對 Linux VM,憑證檔案會放在 /var/lib/waagent 目錄底下,檔名 <X509 憑證檔案的大寫Thumbprint>.crt,並針對私鑰 <大寫Thumbprint>.prv。 這兩個檔案都是 .pem 格式。 字串
certificateUrl 這是已上傳至 Key Vault 做為秘密之憑證的 URL。 如需將秘密新增至 Key Vault,請參閱 將金鑰或秘密新增至金鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼,其編碼方式為 UTF-8:

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

WindowsConfiguration

名字 描述 價值
additionalUnattendContent 指定其他base-64編碼的 XML 格式資訊,這些資訊可以包含在 Windows 安裝程式所使用的 Unattend.xml 檔案中。 AdditionalUnattendContent[]
enableAutomaticUpdates 指出是否為 Windows 虛擬機啟用自動更新。 默認值為 true。 針對虛擬機擴展集,此屬性可以更新,更新將會在OS重新佈建上生效。 bool
enableVMAgentPlatformUpdates 指出是否為 Windows 虛擬機啟用 VMAgent 平臺更新。 默認值為 false。 bool
patchSettings [預覽功能]指定與 Windows 上的 VM 客體修補相關的設定。 PatchSettings
provisionVMAgent 指出虛擬機器代理程式是否應該佈建在虛擬機上。 當要求本文中未指定這個屬性時,預設會設定為 true。 這可確保 VM 代理程式已安裝在 VM 上,以便稍後將擴充功能新增至 VM。 bool
timeZone 指定虛擬機的時區。 例如「太平洋標準時間」。 可能的值可以從 TimeZoneInfo.GetSystemTimeZones傳回的時區 TimeZoneInfo.Id 值。 字串
winRM 指定 Windows 遠端管理接聽程式。 這可啟用遠端 Windows PowerShell。 WinRMConfiguration

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”
automaticByPlatformSettings 指定 Windows 上 VM 客體修補中的 Patch 模式 AutomaticByPlatform 的其他設定。 WindowsVMGuestPatchAutomaticByPlatformSettings
enableHotpatching 可讓客戶修補其 Azure VM,而不需要重新啟動。 針對 enableHotpatching,'provisionVMAgent' 必須設定為 true,且 'patchMode' 必須設定為 'AutomaticByPlatform'。 bool
patchMode 將 VM 客體修補模式指定為彈性的 IaaS 虛擬機或與虛擬機擴展集相關聯的虛擬機。

可能的值為:

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

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

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

WindowsVMGuestPatchAutomaticByPlatformSettings

名字 描述 價值
bypassPlatformSafetyChecksOnUserSchedule 讓客戶在不意外升級的情況下排程修補 bool
rebootSetting 指定所有 AutomaticByPlatform 修補程式安裝作業的重新啟動設定。 “Always”
“IfRequired”
“Never”
“Unknown”

WinRMConfiguration

名字 描述 價值
聽眾 Windows 遠端管理接聽程式清單 WinRMListener[]

WinRMListener

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

{
“data”:“{Base64-encoded-certificate}”,
“dataType”:“pfx”,
“password”:“{pfx-file-password}”
}
若要在虛擬機上安裝憑證,建議使用適用於Linux 的 Azure Key Vault 虛擬機擴充功能,或適用於Windows的 Azure Key Vault 虛擬機擴充功能。
字串
協定 指定 WinRM 接聽程式的通訊協定。 可能的值為:HTTP、https。 “Http”
“Https”

ScheduledEventsProfile

名字 描述 價值
osImageNotificationProfile 指定OS映像排程事件相關組態。 OSImageNotificationProfile
terminateNotificationProfile 指定終止已排程的事件相關組態。 TerminateNotificationProfile

OSImageNotificationProfile

名字 描述 價值
使 指定是否啟用或停用OS映像排程事件。 bool
notBeforeTimeout 虛擬機重新映像或升級其操作系統的時間長度,在事件自動核准之前,必須核准OS映射排程事件(逾時)。 設定是以 ISO 8601 格式指定,且值必須是 15 分鐘(PT15M) 字串

TerminateNotificationProfile

名字 描述 價值
使 指定是否啟用或停用終止排程事件。 bool
notBeforeTimeout 刪除虛擬機的可設定時間長度,在事件自動核准之前,必須先核准終止排程事件(逾時)。 設定必須以 ISO 8601 格式指定,預設值為 5 分鐘(PT5M) 字串

SecurityProfile

名字 描述 價值
encryptionAtHost 用戶可以在要求中使用這個屬性來啟用或停用虛擬機或虛擬機擴展集的主機加密。 這會啟用所有磁碟的加密,包括主機本身的資源/暫存磁碟。 默認行為為:除非資源將此屬性設定為 true,否則將會停用主機的加密。 bool
securityType 指定虛擬機的 SecurityType。 它必須設定為任何指定的值,才能啟用 UefiSettings。 默認行為為:除非設定此屬性,否則不會啟用 UefiSettings。 “ConfidentialVM”
“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[]
diskControllerType 指定為 VM 設定的磁碟控制器類型。 注意:如果未指定提供的虛擬機建立時,此屬性會設定為預設磁碟控制器類型,而 'hyperVGeneration' 會根據指定之最低 API 版本之操作系統磁碟和 VM 大小的功能設定為 V2。 您必須在更新 VM 控制器類型之前解除分配 VM,除非您在 VM 設定中更新 VM 大小,以隱含解除分配和重新配置 VM。 API 版本下限:2022-08-01。 “NVMe”
“SCSI”
imageReference 指定要使用之映像的相關信息。 您可以指定平臺映像、市集映像或虛擬機映像的相關信息。 當您想要使用平臺映像、市集映像或虛擬機映像,但未用於其他建立作業時,則需要此元素。 ImageReference
osDisk 指定虛擬機所使用的作業系統磁碟相關信息。 如需磁碟的詳細資訊,請參閱 關於 Azure 虛擬機器的磁碟和 VHD OSDisk

DataDisk

名字 描述 價值
緩存 指定快取需求。 可能的值為:None、ReadOnly、ReadWrite。 預設行為為:標準記憶體的 None。進階記憶體的 ReadOnly。 “None”
“ReadOnly”
“ReadWrite”
createOption 指定應如何建立虛擬機。 可能的值為:Attach。 當您使用特製化磁碟來建立虛擬機時,會使用此值。 FromImage。 當您使用映像來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也應該使用上述的 imageReference 元素。 如果您使用市集映射,則也應該使用先前所述的 plan 元素。 “附加”
“Empty”
“FromImage” (必要)
deleteOption 指定在 VM 刪除時應該刪除或中斷連結資料磁碟。 可能的值為:Delete。 如果使用此值,刪除 VM 時會刪除資料磁碟。 分離。 如果使用此值,則會在刪除 VM 之後保留資料磁碟。 預設值設定為 Detach “Delete”
“Detach”
detachOption 指定卸離磁碟時所要使用的卸離行為,或已在從虛擬機中斷鏈接的過程中使用的行為。 支援的值:ForceDetach。 detachOption:ForceDetach 僅適用於受控數據磁碟。 如果先前的數據磁盤中斷鏈接嘗試未完成,因為虛擬機發生非預期的失敗,磁碟仍未釋放,則請使用強制卸離作為最後手段選項,強制中斷連結磁碟與 VM。 使用這個卸離行為時,所有寫入可能都沒有排清。 這項功能仍處於預覽 模式,且 VirtualMachineScaleSet 不支援此功能。 若要強制將數據磁碟更新強制卸離至 『true』,以及設定 detachOption: 'ForceDetach'。 “ForceDetach”
diskSizeGB 指定以 GB 為單位的空白資料磁碟大小。 這個元素可用來覆寫虛擬機映像中的磁碟大小。 屬性 'diskSizeGB' 是磁碟的位元組 x 1024^3,值不能大於 1023。 int
圖像 來源使用者映像虛擬硬碟。 在連接至虛擬機之前,將會先複製虛擬硬碟。 如果提供SourceImage,則目的地虛擬硬碟不得存在。 VirtualHardDisk
指定數據磁碟的邏輯單元編號。 這個值是用來識別 VM 內的數據磁碟,因此對於連結至 VM 的每個數據磁碟而言都必須是唯一的。 int (必要)
managedDisk 受控磁碟參數。 ManagedDiskParameters
名字 磁碟名稱。 字串
toBeDetached 指定數據磁碟是否正在從 VirtualMachine/VirtualMachineScaleset 中斷連結 bool
vhd 虛擬硬碟。 VirtualHardDisk
writeAcceleratorEnabled 指定是否應該在磁碟上啟用或停用 writeAccelerator。 bool

VirtualHardDisk

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

ManagedDiskParameters

名字 描述 價值
diskEncryptionSet 指定受控磁碟的客戶受控磁碟加密集資源標識符。 DiskEncryptionSetParameters
id 資源標識碼 字串
securityProfile 指定受控磁碟的安全性配置檔。 VMDiskSecurityProfile
storageAccountType 指定受控磁碟的記憶體帳戶類型。 注意:UltraSSD_LRS只能與數據磁碟搭配使用,因此無法與OS磁碟搭配使用。 “PremiumV2_LRS”
“Premium_LRS”
“Premium_ZRS”
“StandardSSD_LRS”
“StandardSSD_ZRS”
“Standard_LRS”
“UltraSSD_LRS”

DiskEncryptionSetParameters

名字 描述 價值
id 資源標識碼 字串

VMDiskSecurityProfile

名字 描述 價值
diskEncryptionSet 針對客戶受控密鑰加密的機密VM OS 磁碟和 VMGuest Blob 所使用的受控磁碟,指定客戶受控磁碟加密集資源識別碼。 DiskEncryptionSetParameters
securityEncryptionType 指定受控磁碟的 EncryptionType。 它設定為 DiskWithVMGuestState 以加密受控磁碟以及 VMGuestState Blob,而 VMGuestStateOnly 則只會加密 VMGuestState Blob。 注意: 只能設定機密 VM。 “DiskWithVMGuestState”
“VMGuestStateOnly”

ImageReference

名字 描述 價值
communityGalleryImageId 指定 vm 部署的社群資源庫映像唯一標識碼。 這可以從社群資源庫映像 GET 呼叫擷取。 字串
id 資源標識碼 字串
提供 指定用來建立虛擬機的平臺映像或市集映像供應專案。 字串
發行人 映像發行者。 字串
sharedGalleryImageId 指定 vm 部署的共享資源庫映像唯一標識碼。 這可以從共用資源庫映像 GET 呼叫擷取。 字串
sku 映像 SKU。 字串
版本 指定用來建立虛擬機的平臺映像或市集映像版本。 允許的格式為 Major.Minor.Build 或 'latest'。 主要、次要和組建是十進位數。 指定 'latest' 以在部署時間使用可用映像的最新版本。 即使您使用「最新」,即使有新版本可用,VM 映像也不會在部署時間之後自動更新。 請勿使用欄位 'version' 進行資源庫映射部署,資源庫映射應一律使用 'id' 字段進行部署,若要使用資源庫映射的 'latest' 版本,只要設定 '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/gallerys/{galleryName}/images/{imageName}' 字段,即可不使用版本輸入。 字串

OSDisk

名字 描述 價值
緩存 指定快取需求。 可能的值為:None、ReadOnly、ReadWrite。 預設行為為:標準記憶體的 None。進階記憶體的 ReadOnly。 “None”
“ReadOnly”
“ReadWrite”
createOption 指定應如何建立虛擬機。 可能的值為:Attach。 當您使用特製化磁碟來建立虛擬機時,會使用此值。 FromImage。 當您使用映像來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也應該使用上述的 imageReference 元素。 如果您使用市集映射,則也應該使用先前所述的 plan 元素。 “附加”
“Empty”
“FromImage” (必要)
deleteOption 指定 VM 刪除時應刪除或中斷連結 OS 磁碟。 可能的值為:Delete。 如果使用這個值,刪除 VM 時會刪除 OS 磁碟。 分離。 如果使用這個值,則會在刪除 VM 之後保留 os 磁碟。 預設值設定為 Detach。 針對暫時的 OS 磁碟,預設值會設定為 [刪除]。 使用者無法變更暫時 OS 磁碟的刪除選項。 “Delete”
“Detach”
diffDiskSettings 指定虛擬機所用作業系統磁碟的暫時磁碟設定。 DiffDiskSettings
diskSizeGB 指定以 GB 為單位的空白資料磁碟大小。 這個元素可用來覆寫虛擬機映像中的磁碟大小。 屬性 'diskSizeGB' 是磁碟的位元組 x 1024^3,值不能大於 1023。 int
encryptionSettings 指定 OS 磁碟的加密設定。 API 版本下限:2015-06-15。 DiskEncryptionSettings
圖像 來源使用者映像虛擬硬碟。 在連接至虛擬機之前,將會先複製虛擬硬碟。 如果提供SourceImage,則目的地虛擬硬碟不得存在。 VirtualHardDisk
managedDisk 受控磁碟參數。 ManagedDiskParameters
名字 磁碟名稱。 字串
osType 此屬性可讓您指定從使用者映像或特製化 VHD 建立 VM 時,磁碟包含的 OS 類型。 可能的值為:Windows、Linux。 “Linux”
“Windows”
vhd 虛擬硬碟。 VirtualHardDisk
writeAcceleratorEnabled 指定是否應該在磁碟上啟用或停用 writeAccelerator。 bool

DiffDiskSettings

名字 描述 價值
選擇 指定作業系統磁碟的暫時磁碟設定。 “Local”
放置 指定作業系統磁碟的暫時磁碟位置。 可能的值為:CacheDisk,ResourceDisk。 默認行為為:如果已針對 VM 大小設定快取Disk,CacheDisk,否則會使用 ResourceDisk 。 請參閱 /azure/virtual-machines/windows/size 和 Linux VM 在 /azure/virtual-machines/linux/size 上 Windows VM 的 VM 大小檔,以檢查哪些 VM 大小會公開快取磁碟。 “CacheDisk”
“ResourceDisk”

DiskEncryptionSettings

名字 描述 價值
diskEncryptionKey 指定磁碟加密密鑰的位置,也就是 Key Vault 秘密。 KeyVaultSecretReference
啟用 指定是否應在虛擬機上啟用磁碟加密。 bool
keyEncryptionKey 指定 Key Vault 中金鑰加密金鑰的位置。 KeyVaultKeyReference

KeyVaultSecretReference

名字 描述 價值
secretUrl 參考 Key Vault 中秘密的 URL。 字串 (必要)
sourceVault 包含秘密之 Key Vault 的相對 URL。 SubResource (必要)

KeyVaultKeyReference

名字 描述 價值
keyUrl 參考 Key Vault 中金鑰加密金鑰的 URL。 字串 (必要)
sourceVault 包含金鑰之 Key Vault 的相對 URL。 SubResource (必要)