Microsoft.Compute virtualMachineScaleSets 2015-06-15
Bicep 資源定義
virtualMachineScaleSets 資源類型可以使用目標作業來部署:
- 資源群組 - 請參閱 資源群組部署命令
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
資源格式
若要建立 Microsoft.Compute/virtualMachineScaleSets 資源,請將下列 Bicep 新增至範本。
resource symbolicname 'Microsoft.Compute/virtualMachineScaleSets@2015-06-15' = {
location: 'string'
name: 'string'
properties: {
overProvision: bool
provisioningState: 'string'
upgradePolicy: {
mode: 'string'
}
virtualMachineProfile: {
extensionProfile: {
extensions: [
{
id: 'string'
name: 'string'
properties: {
autoUpgradeMinorVersion: bool
protectedSettings: any(Azure.Bicep.Types.Concrete.AnyType)
publisher: 'string'
settings: any(Azure.Bicep.Types.Concrete.AnyType)
type: 'string'
typeHandlerVersion: 'string'
}
}
]
}
networkProfile: {
networkInterfaceConfigurations: [
{
id: 'string'
name: 'string'
properties: {
ipConfigurations: [
{
id: 'string'
name: 'string'
properties: {
loadBalancerBackendAddressPools: [
{
id: 'string'
}
]
loadBalancerInboundNatPools: [
{
id: 'string'
}
]
subnet: {
id: 'string'
}
}
}
]
primary: bool
}
}
]
}
osProfile: {
adminPassword: 'string'
adminUsername: 'string'
computerNamePrefix: 'string'
customData: 'string'
linuxConfiguration: {
disablePasswordAuthentication: bool
ssh: {
publicKeys: [
{
keyData: 'string'
path: 'string'
}
]
}
}
secrets: [
{
sourceVault: {
id: 'string'
}
vaultCertificates: [
{
certificateStore: 'string'
certificateUrl: 'string'
}
]
}
]
windowsConfiguration: {
additionalUnattendContent: [
{
componentName: 'Microsoft-Windows-Shell-Setup'
content: 'string'
passName: 'OobeSystem'
settingName: 'string'
}
]
enableAutomaticUpdates: bool
provisionVMAgent: bool
timeZone: 'string'
winRM: {
listeners: [
{
certificateUrl: 'string'
protocol: 'string'
}
]
}
}
}
storageProfile: {
imageReference: {
offer: 'string'
publisher: 'string'
sku: 'string'
version: 'string'
}
osDisk: {
caching: 'string'
createOption: 'string'
image: {
uri: 'string'
}
name: 'string'
osType: 'string'
vhdContainers: [
'string'
]
}
}
}
}
sku: {
capacity: int
name: 'string'
tier: 'string'
}
tags: {
{customized property}: 'string'
}
}
屬性值
AdditionalUnattendContent
名字 | 描述 | 價值 |
---|---|---|
componentName | 元件名稱。 目前,唯一允許的值是 Microsoft-Windows-Shell-Setup。 | 'Microsoft-Windows-Shell-Setup' |
內容 | 指定新增至指定路徑和元件之 unattend.xml 檔案的 XML 格式化內容。 XML 必須小於 4KB,而且必須包含要插入之設定或功能的根元素。 | 字串 |
passName | 傳遞名稱。 目前唯一允許的值是 OobeSystem。 | 'OobeSystem' |
settingName | 指定套用內容之設定的名稱。 可能的值為:FirstLogonCommands 和 AutoLogon。 | 'AutoLogon' 'FirstLogonCommands' |
ApiEntityReference
名字 | 描述 | 價值 |
---|---|---|
id | 以 /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... 格式的 ARM 資源標識符 | 字串 |
ImageReference
名字 | 描述 | 價值 |
---|---|---|
提供 | 指定用來建立虛擬機的平臺映像或市集映像供應專案。 | 字串 |
發行人 | 映像發行者。 | 字串 |
sku | 映像 SKU。 | 字串 |
版本 | 指定用來建立虛擬機的平臺映像或市集映像版本。 允許的格式為 Major.Minor.Build 或 'latest'。 主要、次要和組建是十進位數。 指定 'latest' 以在部署時間使用可用映像的最新版本。 即使您使用「最新」,即使有新版本可用,VM 映像也不會在部署時間之後自動更新。 | 字串 |
LinuxConfiguration
名字 | 描述 | 價值 |
---|---|---|
disablePasswordAuthentication | 指定是否應停用密碼驗證。 | bool |
ssh | 指定 Linux OS 的 SSH 金鑰組態。 | SshConfiguration |
Microsoft.Compute/virtualMachineScaleSets
名字 | 描述 | 價值 |
---|---|---|
位置 | 資源位置 | 字串 (必要) |
名字 | 資源名稱 | 字串 (必要) |
性能 | 描述虛擬機擴展集的屬性。 | VirtualMachineScaleSetProperties |
sku | 虛擬機擴展集 SKU。 | Sku |
標籤 | 資源標籤 | 標記名稱和值的字典。 請參閱範本中的 標籤 |
ResourceTags
名字 | 描述 | 價值 |
---|
Sku
名字 | 描述 | 價值 |
---|---|---|
能力 | 指定擴展集中的虛擬機數目。 | int |
名字 | SKU 名稱。 | 字串 |
層 | 指定擴展集中虛擬機的層級。 可能的值: Standard 基本 |
字串 |
SshConfiguration
名字 | 描述 | 價值 |
---|---|---|
publicKeys | 用來向Linux型VM進行驗證的SSH公鑰清單。 | SshPublicKey[] |
SshPublicKey
名字 | 描述 | 價值 |
---|---|---|
keyData | 用來透過 ssh 向 VM 進行驗證的 SSH 公鑰憑證。 密鑰至少必須是 2048 位,且格式為 ssh-rsa。 如需建立 ssh 金鑰,請參閱 在 Azure中建立 Linux 和 Mac 上的 SSH 金鑰。 |
字串 |
路徑 | 指定已建立 VM 上儲存 SSH 公鑰的完整路徑。 如果檔案已經存在,指定的索引鍵會附加至檔案。 範例:/home/user/.ssh/authorized_keys | 字串 |
SubResource
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼 | 字串 |
UpgradePolicy
名字 | 描述 | 價值 |
---|---|---|
模式 | 指定升級至擴展集中虛擬機的模式。 可能的值為: 手動 - 您可以控制擴充集中虛擬機的更新應用程式。 您可以使用 manualUpgrade 動作來執行此動作。 自動 - 擴展集中的所有虛擬機都會同時自動更新。 |
'Automatic' 'Manual' |
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 編碼憑證>”, “dataType”:“pfx”, “password”:“<pfx-file-password>” } |
字串 |
VaultSecretGroup
名字 | 描述 | 價值 |
---|---|---|
sourceVault | Key Vault 的相對 URL,其中包含 VaultCertificates 中的所有憑證。 | SubResource |
vaultCertificates | SourceVault 中包含憑證的金鑰保存庫參考清單。 | VaultCertificate[] |
VirtualHardDisk
名字 | 描述 | 價值 |
---|---|---|
uri | 指定虛擬硬碟的 URI。 | 字串 |
VirtualMachineScaleSetExtension
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼 | 字串 |
名字 | 延伸模組的名稱。 | 字串 |
性能 | 描述虛擬機擴展集擴充功能的屬性。 | VirtualMachineScaleSetExtensionProperties |
VirtualMachineScaleSetExtensionProfile
名字 | 描述 | 價值 |
---|---|---|
擴展 | 虛擬機擴展集子擴充功能資源。 | VirtualMachineScaleSetExtension[] |
VirtualMachineScaleSetExtensionProperties
名字 | 描述 | 價值 |
---|---|---|
autoUpgradeMinorVersion | 延伸模組處理程式是否應該在次要版本之間自動升級。 | bool |
protectedSettings | 擴充功能的 Json 格式化受保護設定。 | 任何 |
發行人 | 擴充處理程序發行者的名稱。 | 字串 |
設置 | 擴充功能的 Json 格式化公用設定。 | 任何 |
類型 | 擴充處理程式的類型。 | 字串 |
typeHandlerVersion | 擴充處理程式的類型版本。 | 字串 |
VirtualMachineScaleSetIPConfiguration
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼 | 字串 |
名字 | IP 組態名稱。 | 字串 (必要) |
性能 | 描述虛擬機擴展集網路配置檔的IP組態屬性。 | VirtualMachineScaleSetIPConfigurationProperties |
VirtualMachineScaleSetIPConfigurationProperties
名字 | 描述 | 價值 |
---|---|---|
loadBalancerBackendAddressPools | 負載平衡器後端位址池。 | SubResource[] |
loadBalancerInboundNatPools | 負載平衡器輸入 nat 集區。 | SubResource[] |
子 | 子網。 | ApiEntityReference (必要) |
VirtualMachineScaleSetNetworkConfiguration
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼 | 字串 |
名字 | 網路組態名稱。 | 字串 (必要) |
性能 | 描述虛擬機擴展集網路配置檔的IP組態。 | VirtualMachineScaleSetNetworkConfigurationProperties |
VirtualMachineScaleSetNetworkConfigurationProperties
名字 | 描述 | 價值 |
---|---|---|
ipConfigurations | 虛擬機擴展集IP組態。 | VirtualMachineScaleSetIPConfiguration[] (必要) |
主要 | 這是否為虛擬機上的主要 NIC。 | bool |
VirtualMachineScaleSetNetworkProfile
名字 | 描述 | 價值 |
---|---|---|
networkInterfaceConfigurations | 網路組態的清單。 | VirtualMachineScaleSetNetworkConfiguration[] |
VirtualMachineScaleSetOSDisk
名字 | 描述 | 價值 |
---|---|---|
緩存 | 指定快取需求。 可能的值為: 無 ReadOnly ReadWrite 預設值:標準記憶體 None。進階記憶體的 ReadOnly |
'None' 'ReadOnly' 'ReadWrite' |
createOption | 指定應該如何建立擴展集中的虛擬機。 唯一允許的值是:FromImage \u2013 當您使用映像來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也會使用上述的 imageReference 元素。 如果您使用市集映像,則也會使用先前所述的 plan 元素。 |
'Attach' 'Empty' 'FromImage' (必要) |
圖像 | 來源使用者映像 VirtualHardDisk。 此 VirtualHardDisk 將會先複製,再使用它連結至虛擬機。 如果提供SourceImage,目的地 VirtualHardDisk 就不應該存在。 | VirtualHardDisk |
名字 | 磁碟名稱。 | 字串 (必要) |
osType | 此屬性可讓您指定從使用者映像或特製化 VHD 建立 VM 時,磁碟包含的 OS 類型。 可能的值為: Windows Linux |
'Linux' 'Windows' |
vhdContainers | 虛擬硬碟容器 URI 的清單。 | string[] |
VirtualMachineScaleSetOSProfile
名字 | 描述 | 價值 |
---|---|---|
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 | 指定系統管理員帳戶的名稱。 僅限 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 個字元 <li> 如需不應該在此欄位中使用的 Linux 內建系統使用者清單,請參閱在 Azure 上選取 Linux 的使用者名稱 |
字串 |
computerNamePrefix | 指定擴展集中所有虛擬機的計算機名稱前置詞。 計算機名稱前置詞長度必須為1到15個字元。 | 字串 |
customData | 自訂數據的base-64編碼字串。 | 字串 |
linuxConfiguration | 操作系統配置檔的 Linux 組態。 | LinuxConfiguration |
秘密 | 要新增至 VM 的憑證清單。 | VaultSecretGroup[] |
windowsConfiguration | 操作系統配置檔的 Windows 組態。 | WindowsConfiguration |
VirtualMachineScaleSetProperties
名字 | 描述 | 價值 |
---|---|---|
overProvision | 指定虛擬機擴展集是否應該過度布建。 | bool |
provisioningState | 只出現在回應中的布建狀態。 | 字串 |
upgradePolicy | 升級原則。 | UpgradePolicy |
virtualMachineProfile | 虛擬機器配置檔。 | VirtualMachineScaleSetVMProfile |
VirtualMachineScaleSetStorageProfile
名字 | 描述 | 價值 |
---|---|---|
imageReference | 影像參考。 | ImageReference |
osDisk | OS 磁碟。 | VirtualMachineScaleSetOSDisk |
VirtualMachineScaleSetVMProfile
名字 | 描述 | 價值 |
---|---|---|
extensionProfile | 虛擬機擴展集擴充配置檔。 | VirtualMachineScaleSetExtensionProfile |
networkProfile | 虛擬機擴展集網路配置檔。 | VirtualMachineScaleSetNetworkProfile |
osProfile | 虛擬機擴展集OS配置檔。 | VirtualMachineScaleSetOSProfile |
storageProfile | 虛擬機擴展集記憶體配置檔。 | VirtualMachineScaleSetStorageProfile |
WindowsConfiguration
名字 | 描述 | 價值 |
---|---|---|
additionalUnattendContent | 指定其他base-64編碼的 XML 格式資訊,這些資訊可以包含在 Windows 安裝程式所使用的 Unattend.xml 檔案中。 | AdditionalUnattendContent[] |
enableAutomaticUpdates | 指出虛擬機是否已啟用自動更新。 | bool |
provisionVMAgent | 指出虛擬機器代理程式是否應該佈建在虛擬機上。 當要求本文中未指定此屬性時,預設行為是將它設定為 true。 這可確保 VM 代理程式已安裝在 VM 上,以便稍後將擴充功能新增至 VM。 |
bool |
timeZone | 指定虛擬機的時區。 例如「太平洋標準時間” | 字串 |
winRM | 指定 Windows 遠端管理接聽程式。 這可啟用遠端 Windows PowerShell。 | WinRMConfiguration |
WinRMConfiguration
名字 | 描述 | 價值 |
---|---|---|
聽眾 | Windows 遠端管理接聽程式清單 | WinRMListener[] |
WinRMListener
名字 | 描述 | 價值 |
---|---|---|
certificateUrl | 這是已上傳至 Key Vault 做為秘密之憑證的 URL。 如需將秘密新增至 Key Vault,請參閱 將金鑰或秘密新增至金鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼,其編碼方式為 UTF-8: { “data”:“<Base64 編碼憑證>”, “dataType”:“pfx”, “password”:“<pfx-file-password>” } |
字串 |
協定 | 指定接聽程式的通訊協定。 可能的值為: http https |
'Http' 'Https' |
快速入門範例
下列快速入門範例會部署此資源類型。
Bicep 檔案 | 描述 |
---|---|
Azure Game 開發人員虛擬機擴展集 | Azure 遊戲開發人員虛擬機擴展集包含 Unreal 等授權引擎。 |
部署5節點安全叢集 | 此範本可讓您在Standard_D2_v2大小 VMSS 上部署執行 Windows Server 2019 Datacenter 的安全 5 節點 Service Fabric 叢集。 |
部署 Nextflow genomics 叢集 | 此範本會部署具有 Jumpbox、n 叢集節點、Docker 支援和共用記憶體的可調整 Nextflow 叢集。 |
部署支援受信任啟動的 Windows VM 擴展集 | 此範本可讓您使用最新修補版本的 Windows Server 2016、Windows Server 2019 或 Windows Server 2022 Azure Edition,部署支援信任啟動的 Windows VM 擴展集。 這些 VM 位於具有 RDP 連線 NAT 規則的負載平衡器後方。 如果您啟用 Secureboot 和 vTPM,客體證明擴充功能將會安裝在您的 VMSS 上。 此延伸模組會執行雲端的遠端 證明。 |
使用 Windows VM 部署 VM 擴展集和自動調整 | 此範本可讓您使用最新修補版本的 Windows 2008-R2-SP1、2012-Datacenter 或 2012-R2-Datacenter 部署簡單的 Windows VM 擴展集。 這些 VM 位於具有 RDP 連線 NAT 規則的負載平衡器後方。 它們也有自動調整整合 |
部署 VMSS,將每個 VM 連線到 Azure 檔案記憶體共用 | 此範本會部署 Ubuntu 虛擬機擴展集,並使用自定義腳本擴充功能將每個 VM 連線到 Azure 檔案記憶體共用 |
使用 Azure 應用程式閘道部署 Windows VM 擴展集 | 此範本可讓您部署與 Azure 應用程式閘道整合的簡單 Windows VM 擴展集,並支援最多 1000 部 VM |
使用 Python Bottle 伺服器部署 VM 擴展集 & 自動調整 | 在負載平衡器/NAT 後方部署 VM 擴展集,& 執行可運作的簡單 Python Bottle 應用程式的每個 VM。 設定自動調整擴展集時,會視需要相應放大 & |
執行 IIS WebApp 的自動調整 VM 擴展集 | 部署執行 IIS 的 Windows VM 擴展集和非常基本的 .NET MVC Web 應用程式。 VMSS PowerShell DSC 擴充功能可用來執行 IIS 安裝和 WebDeploy 套件部署。 |
VMSS 彈性協調流程模式快速入門 Linux | 此範本會部署具有 Azure Load Balancer 後方實例的簡單 VM 擴展集。 VM 擴展集處於彈性協調流程模式。 使用 os 參數來選擇 Linux (Ubuntu) 或 Windows (Windows Server Datacenter 2019) 部署。 注意:本快速入門範本可讓您從任何因特網位址存取 VM 管理埠(SSH、RDP),而且不應該用於生產部署。 |
具有公用IP前置詞的VMSS | 使用公用IP前綴部署VMSS的範本 |
ARM 樣本資源定義
virtualMachineScaleSets 資源類型可以使用目標作業來部署:
- 資源群組 - 請參閱 資源群組部署命令
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
資源格式
若要建立 Microsoft.Compute/virtualMachineScaleSets 資源,請將下列 JSON 新增至範本。
{
"type": "Microsoft.Compute/virtualMachineScaleSets",
"apiVersion": "2015-06-15",
"name": "string",
"location": "string",
"properties": {
"overProvision": "bool",
"provisioningState": "string",
"upgradePolicy": {
"mode": "string"
},
"virtualMachineProfile": {
"extensionProfile": {
"extensions": [
{
"id": "string",
"name": "string",
"properties": {
"autoUpgradeMinorVersion": "bool",
"protectedSettings": {},
"publisher": "string",
"settings": {},
"type": "string",
"typeHandlerVersion": "string"
}
}
]
},
"networkProfile": {
"networkInterfaceConfigurations": [
{
"id": "string",
"name": "string",
"properties": {
"ipConfigurations": [
{
"id": "string",
"name": "string",
"properties": {
"loadBalancerBackendAddressPools": [
{
"id": "string"
}
],
"loadBalancerInboundNatPools": [
{
"id": "string"
}
],
"subnet": {
"id": "string"
}
}
}
],
"primary": "bool"
}
}
]
},
"osProfile": {
"adminPassword": "string",
"adminUsername": "string",
"computerNamePrefix": "string",
"customData": "string",
"linuxConfiguration": {
"disablePasswordAuthentication": "bool",
"ssh": {
"publicKeys": [
{
"keyData": "string",
"path": "string"
}
]
}
},
"secrets": [
{
"sourceVault": {
"id": "string"
},
"vaultCertificates": [
{
"certificateStore": "string",
"certificateUrl": "string"
}
]
}
],
"windowsConfiguration": {
"additionalUnattendContent": [
{
"componentName": "Microsoft-Windows-Shell-Setup",
"content": "string",
"passName": "OobeSystem",
"settingName": "string"
}
],
"enableAutomaticUpdates": "bool",
"provisionVMAgent": "bool",
"timeZone": "string",
"winRM": {
"listeners": [
{
"certificateUrl": "string",
"protocol": "string"
}
]
}
}
},
"storageProfile": {
"imageReference": {
"offer": "string",
"publisher": "string",
"sku": "string",
"version": "string"
},
"osDisk": {
"caching": "string",
"createOption": "string",
"image": {
"uri": "string"
},
"name": "string",
"osType": "string",
"vhdContainers": [ "string" ]
}
}
}
},
"sku": {
"capacity": "int",
"name": "string",
"tier": "string"
},
"tags": {
"{customized property}": "string"
}
}
屬性值
AdditionalUnattendContent
名字 | 描述 | 價值 |
---|---|---|
componentName | 元件名稱。 目前,唯一允許的值是 Microsoft-Windows-Shell-Setup。 | 'Microsoft-Windows-Shell-Setup' |
內容 | 指定新增至指定路徑和元件之 unattend.xml 檔案的 XML 格式化內容。 XML 必須小於 4KB,而且必須包含要插入之設定或功能的根元素。 | 字串 |
passName | 傳遞名稱。 目前唯一允許的值是 OobeSystem。 | 'OobeSystem' |
settingName | 指定套用內容之設定的名稱。 可能的值為:FirstLogonCommands 和 AutoLogon。 | 'AutoLogon' 'FirstLogonCommands' |
ApiEntityReference
名字 | 描述 | 價值 |
---|---|---|
id | 以 /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... 格式的 ARM 資源標識符 | 字串 |
ImageReference
名字 | 描述 | 價值 |
---|---|---|
提供 | 指定用來建立虛擬機的平臺映像或市集映像供應專案。 | 字串 |
發行人 | 映像發行者。 | 字串 |
sku | 映像 SKU。 | 字串 |
版本 | 指定用來建立虛擬機的平臺映像或市集映像版本。 允許的格式為 Major.Minor.Build 或 'latest'。 主要、次要和組建是十進位數。 指定 'latest' 以在部署時間使用可用映像的最新版本。 即使您使用「最新」,即使有新版本可用,VM 映像也不會在部署時間之後自動更新。 | 字串 |
LinuxConfiguration
名字 | 描述 | 價值 |
---|---|---|
disablePasswordAuthentication | 指定是否應停用密碼驗證。 | bool |
ssh | 指定 Linux OS 的 SSH 金鑰組態。 | SshConfiguration |
Microsoft.Compute/virtualMachineScaleSets
名字 | 描述 | 價值 |
---|---|---|
apiVersion | API 版本 | '2015-06-15' |
位置 | 資源位置 | 字串 (必要) |
名字 | 資源名稱 | 字串 (必要) |
性能 | 描述虛擬機擴展集的屬性。 | VirtualMachineScaleSetProperties |
sku | 虛擬機擴展集 SKU。 | Sku |
標籤 | 資源標籤 | 標記名稱和值的字典。 請參閱範本中的 標籤 |
類型 | 資源類型 | 'Microsoft.Compute/virtualMachineScaleSets' |
ResourceTags
名字 | 描述 | 價值 |
---|
Sku
名字 | 描述 | 價值 |
---|---|---|
能力 | 指定擴展集中的虛擬機數目。 | int |
名字 | SKU 名稱。 | 字串 |
層 | 指定擴展集中虛擬機的層級。 可能的值: Standard 基本 |
字串 |
SshConfiguration
名字 | 描述 | 價值 |
---|---|---|
publicKeys | 用來向Linux型VM進行驗證的SSH公鑰清單。 | SshPublicKey[] |
SshPublicKey
名字 | 描述 | 價值 |
---|---|---|
keyData | 用來透過 ssh 向 VM 進行驗證的 SSH 公鑰憑證。 密鑰至少必須是 2048 位,且格式為 ssh-rsa。 如需建立 ssh 金鑰,請參閱 在 Azure中建立 Linux 和 Mac 上的 SSH 金鑰。 |
字串 |
路徑 | 指定已建立 VM 上儲存 SSH 公鑰的完整路徑。 如果檔案已經存在,指定的索引鍵會附加至檔案。 範例:/home/user/.ssh/authorized_keys | 字串 |
SubResource
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼 | 字串 |
UpgradePolicy
名字 | 描述 | 價值 |
---|---|---|
模式 | 指定升級至擴展集中虛擬機的模式。 可能的值為: 手動 - 您可以控制擴充集中虛擬機的更新應用程式。 您可以使用 manualUpgrade 動作來執行此動作。 自動 - 擴展集中的所有虛擬機都會同時自動更新。 |
'Automatic' 'Manual' |
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 編碼憑證>”, “dataType”:“pfx”, “password”:“<pfx-file-password>” } |
字串 |
VaultSecretGroup
名字 | 描述 | 價值 |
---|---|---|
sourceVault | Key Vault 的相對 URL,其中包含 VaultCertificates 中的所有憑證。 | SubResource |
vaultCertificates | SourceVault 中包含憑證的金鑰保存庫參考清單。 | VaultCertificate[] |
VirtualHardDisk
名字 | 描述 | 價值 |
---|---|---|
uri | 指定虛擬硬碟的 URI。 | 字串 |
VirtualMachineScaleSetExtension
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼 | 字串 |
名字 | 延伸模組的名稱。 | 字串 |
性能 | 描述虛擬機擴展集擴充功能的屬性。 | VirtualMachineScaleSetExtensionProperties |
VirtualMachineScaleSetExtensionProfile
名字 | 描述 | 價值 |
---|---|---|
擴展 | 虛擬機擴展集子擴充功能資源。 | VirtualMachineScaleSetExtension[] |
VirtualMachineScaleSetExtensionProperties
名字 | 描述 | 價值 |
---|---|---|
autoUpgradeMinorVersion | 延伸模組處理程式是否應該在次要版本之間自動升級。 | bool |
protectedSettings | 擴充功能的 Json 格式化受保護設定。 | 任何 |
發行人 | 擴充處理程序發行者的名稱。 | 字串 |
設置 | 擴充功能的 Json 格式化公用設定。 | 任何 |
類型 | 擴充處理程式的類型。 | 字串 |
typeHandlerVersion | 擴充處理程式的類型版本。 | 字串 |
VirtualMachineScaleSetIPConfiguration
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼 | 字串 |
名字 | IP 組態名稱。 | 字串 (必要) |
性能 | 描述虛擬機擴展集網路配置檔的IP組態屬性。 | VirtualMachineScaleSetIPConfigurationProperties |
VirtualMachineScaleSetIPConfigurationProperties
名字 | 描述 | 價值 |
---|---|---|
loadBalancerBackendAddressPools | 負載平衡器後端位址池。 | SubResource[] |
loadBalancerInboundNatPools | 負載平衡器輸入 nat 集區。 | SubResource[] |
子 | 子網。 | ApiEntityReference (必要) |
VirtualMachineScaleSetNetworkConfiguration
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼 | 字串 |
名字 | 網路組態名稱。 | 字串 (必要) |
性能 | 描述虛擬機擴展集網路配置檔的IP組態。 | VirtualMachineScaleSetNetworkConfigurationProperties |
VirtualMachineScaleSetNetworkConfigurationProperties
名字 | 描述 | 價值 |
---|---|---|
ipConfigurations | 虛擬機擴展集IP組態。 | VirtualMachineScaleSetIPConfiguration[] (必要) |
主要 | 這是否為虛擬機上的主要 NIC。 | bool |
VirtualMachineScaleSetNetworkProfile
名字 | 描述 | 價值 |
---|---|---|
networkInterfaceConfigurations | 網路組態的清單。 | VirtualMachineScaleSetNetworkConfiguration[] |
VirtualMachineScaleSetOSDisk
名字 | 描述 | 價值 |
---|---|---|
緩存 | 指定快取需求。 可能的值為: 無 ReadOnly ReadWrite 預設值:標準記憶體 None。進階記憶體的 ReadOnly |
'None' 'ReadOnly' 'ReadWrite' |
createOption | 指定應該如何建立擴展集中的虛擬機。 唯一允許的值是:FromImage \u2013 當您使用映像來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也會使用上述的 imageReference 元素。 如果您使用市集映像,則也會使用先前所述的 plan 元素。 |
'Attach' 'Empty' 'FromImage' (必要) |
圖像 | 來源使用者映像 VirtualHardDisk。 此 VirtualHardDisk 將會先複製,再使用它連結至虛擬機。 如果提供SourceImage,目的地 VirtualHardDisk 就不應該存在。 | VirtualHardDisk |
名字 | 磁碟名稱。 | 字串 (必要) |
osType | 此屬性可讓您指定從使用者映像或特製化 VHD 建立 VM 時,磁碟包含的 OS 類型。 可能的值為: Windows Linux |
'Linux' 'Windows' |
vhdContainers | 虛擬硬碟容器 URI 的清單。 | string[] |
VirtualMachineScaleSetOSProfile
名字 | 描述 | 價值 |
---|---|---|
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 | 指定系統管理員帳戶的名稱。 僅限 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 個字元 <li> 如需不應該在此欄位中使用的 Linux 內建系統使用者清單,請參閱在 Azure 上選取 Linux 的使用者名稱 |
字串 |
computerNamePrefix | 指定擴展集中所有虛擬機的計算機名稱前置詞。 計算機名稱前置詞長度必須為1到15個字元。 | 字串 |
customData | 自訂數據的base-64編碼字串。 | 字串 |
linuxConfiguration | 操作系統配置檔的 Linux 組態。 | LinuxConfiguration |
秘密 | 要新增至 VM 的憑證清單。 | VaultSecretGroup[] |
windowsConfiguration | 操作系統配置檔的 Windows 組態。 | WindowsConfiguration |
VirtualMachineScaleSetProperties
名字 | 描述 | 價值 |
---|---|---|
overProvision | 指定虛擬機擴展集是否應該過度布建。 | bool |
provisioningState | 只出現在回應中的布建狀態。 | 字串 |
upgradePolicy | 升級原則。 | UpgradePolicy |
virtualMachineProfile | 虛擬機器配置檔。 | VirtualMachineScaleSetVMProfile |
VirtualMachineScaleSetStorageProfile
名字 | 描述 | 價值 |
---|---|---|
imageReference | 影像參考。 | ImageReference |
osDisk | OS 磁碟。 | VirtualMachineScaleSetOSDisk |
VirtualMachineScaleSetVMProfile
名字 | 描述 | 價值 |
---|---|---|
extensionProfile | 虛擬機擴展集擴充配置檔。 | VirtualMachineScaleSetExtensionProfile |
networkProfile | 虛擬機擴展集網路配置檔。 | VirtualMachineScaleSetNetworkProfile |
osProfile | 虛擬機擴展集OS配置檔。 | VirtualMachineScaleSetOSProfile |
storageProfile | 虛擬機擴展集記憶體配置檔。 | VirtualMachineScaleSetStorageProfile |
WindowsConfiguration
名字 | 描述 | 價值 |
---|---|---|
additionalUnattendContent | 指定其他base-64編碼的 XML 格式資訊,這些資訊可以包含在 Windows 安裝程式所使用的 Unattend.xml 檔案中。 | AdditionalUnattendContent[] |
enableAutomaticUpdates | 指出虛擬機是否已啟用自動更新。 | bool |
provisionVMAgent | 指出虛擬機器代理程式是否應該佈建在虛擬機上。 當要求本文中未指定此屬性時,預設行為是將它設定為 true。 這可確保 VM 代理程式已安裝在 VM 上,以便稍後將擴充功能新增至 VM。 |
bool |
timeZone | 指定虛擬機的時區。 例如「太平洋標準時間” | 字串 |
winRM | 指定 Windows 遠端管理接聽程式。 這可啟用遠端 Windows PowerShell。 | WinRMConfiguration |
WinRMConfiguration
名字 | 描述 | 價值 |
---|---|---|
聽眾 | Windows 遠端管理接聽程式清單 | WinRMListener[] |
WinRMListener
名字 | 描述 | 價值 |
---|---|---|
certificateUrl | 這是已上傳至 Key Vault 做為秘密之憑證的 URL。 如需將秘密新增至 Key Vault,請參閱 將金鑰或秘密新增至金鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼,其編碼方式為 UTF-8: { “data”:“<Base64 編碼憑證>”, “dataType”:“pfx”, “password”:“<pfx-file-password>” } |
字串 |
協定 | 指定接聽程式的通訊協定。 可能的值為: http https |
'Http' 'Https' |
快速入門範本
下列快速入門範本會部署此資源類型。
範本 | 描述 |
---|---|
將多個 VM 新增至虛擬機擴展集 |
此範本會建立具有受控磁碟、公用IP和網路介面的VM數目。 它會以彈性協調流程模式,在虛擬機擴展集中建立 VM。 它們將會佈建在虛擬網路中,此虛擬網路也會建立為部署的一部分 |
使用 Azure SQL Database 自動調整 LANSA Windows VM ScaleSet |
此範本會部署具有擴展集中所需 VM 計數和 LANSA MSI 的 Windows VMSS,以安裝到每個 VM 中。 部署 VM 擴展集之後,會使用自訂腳本擴充功能來安裝 LANSA MSI) |
Azure Container Service Engine (acs-engine) - 群集模式 |
Azure Container Service Engine (acs-engine) 會使用您選擇的 DC/OS、Kubernetes、Swarm 模式或 Swarm 協調器,為 Microsoft azure 上啟用 Docker 的叢集產生 ARM (Azure Resource Manager) 範本。 工具的輸入是叢集定義。 叢集定義非常類似(在許多情況下與 相同)用來部署 azure Container Service 叢集Microsoft ARM 範本語法。 |
Azure Game 開發人員虛擬機擴展集 |
Azure 遊戲開發人員虛擬機擴展集包含 Unreal 等授權引擎。 |
Azure VM 擴展集作為 Intel Lustre 的用戶端 |
此範本會使用 Azure VM 擴展集和 Azure 資源庫 OpenLogic CentOS 6.6 或 7.0 映射建立一組 Intel Lustre 2.7 用戶端,並掛接現有的 Intel Lustre 文件系統 |
機密 VM 擴展集與機密磁碟加密 |
此範本可讓您使用數個 Windows 和 Linux 映射版本的最新修補版本,部署已啟用機密 OS 磁碟加密的機密 VM 擴展集。 |
Couchbase Enterprise |
用來安裝 Couchbase Enterprise 的 Azure Resource Manager (ARM) 範本 |
使用 jumpbox 建立和加密新的 Linux VMSS |
此範本會使用最新的 Linux 映像來部署 Linux VMSS、新增數據磁碟區,然後加密每個 Linux VMSS 實例的數據磁碟區。 它也會在與具有私人IP位址的Linux VMSS實例相同的虛擬網路中,部署具有公用IP位址的 Jumpbox。 這允許透過其公用IP位址連線到 jumpbox,然後透過私人IP位址連線到Linux VMSS 實例。 |
使用 jumpbox 建立和加密新的 Windows VMSS |
此範本可讓您使用最新修補版本的伺服器 Windows 版本來部署簡單的 Windows VM 擴展集。 此範本也會在相同的虛擬網路中部署具有公用IP位址的 Jumpbox。 您可以透過此公用IP位址連線到 jumpbox,然後透過私人IP位址從該處連線到擴展集中的 VM。此範本會在 WINDOWS VM 的 VM 擴展集上啟用加密。 |
部署已啟用 NSG 的 3 Nodetype 安全叢集 |
此範本可讓您在Standard_D2大小 VM 上部署執行 Windows Server 2016 資料中心的安全 3 節點類型 Service Fabric 叢集。 使用此範本可讓您使用網路安全組控制輸入和輸出網路流量。 |
部署5節點安全叢集 |
此範本可讓您在Standard_D2_v2大小 VMSS 上部署執行 Windows Server 2019 Datacenter 的安全 5 節點 Service Fabric 叢集。 |
部署 5 節點 Ubuntu Service Fabric 叢集 |
此範本可讓您在Standard_D2_V2大小 VMSS 上部署執行 Ubuntu 的安全 5 節點 Service Fabric 叢集。 |
部署Linux VMSS wth主要/次要架構 |
此範本可讓您在主要次要架構中使用自定義腳本擴充功能來部署Linux VMSS |
部署 Nextflow genomics 叢集 |
此範本會部署具有 Jumpbox、n 叢集節點、Docker 支援和共用記憶體的可調整 Nextflow 叢集。 |
將擴展集部署到現有的 vnet |
此範本會將 VM 擴展集部署到外延的 vnet。 |
將擴展集部署到 Windows 上的現有 vnet |
此範本會將 Windows 2016 Datacenter VM 擴展集部署到資源群組、vnet 和子網。 |
使用Linux VM部署簡單的 VM 擴展集 |
此範本可讓您使用最新修補版本的 Ubuntu Linux 14.04.4-LTS 或 16.04-LTS 部署簡單的 Linux VM 擴展集。 這些 VM 位於負載平衡器後方,具有 SSH 連線的 NAT 規則。 |
使用Linux VM部署簡單的 VM 擴展集和 Jumpbox |
此範本可讓您使用最新修補版本的UbuntuLinux 15.10或14.04.4-LTS來部署簡單的Linux VM擴展集。 另外還有一個 Jumpbox,可從 VM 位於 VNet 外部啟用連線。 |
使用 Windows VM 部署簡單的 VM 擴展集 |
此範本可讓您使用各種 Windows 版本的最新修補版本,部署簡單的 Windows VM 擴展集。 這些 VM 位於具有 RDP 連線 NAT 規則的負載平衡器後方。 |
使用 Windows VM 部署簡單的 VM 擴展集和 Jumpbox |
此範本可讓您使用最新修補版本的伺服器 Windows 版本來部署簡單的 Windows VM 擴展集。 此範本也會在相同的虛擬網路中部署具有公用IP位址的 Jumpbox。 您可以透過此公用IP位址連線到 jumpbox,然後透過私人IP位址從該處連線到擴展集中的 VM。 |
部署支援受信任啟動的 Windows VM 擴展集 |
此範本可讓您使用最新修補版本的 Windows Server 2016、Windows Server 2019 或 Windows Server 2022 Azure Edition,部署支援信任啟動的 Windows VM 擴展集。 這些 VM 位於具有 RDP 連線 NAT 規則的負載平衡器後方。 如果您啟用 Secureboot 和 vTPM,客體證明擴充功能將會安裝在您的 VMSS 上。 此延伸模組會執行雲端的遠端 證明。 |
從 Azure 數據科學 VM 部署 VM 擴展集 |
這些範本會使用 Azure 資料科學 VM 作為來源映像來部署 VM 擴展集。 |
使用Linux自定義映像部署 VM 擴展集 |
此範本可讓您在擴展集內部署自訂 VM Linux 映像。 這些 VM 位於具有 HTTP 負載平衡的負載平衡器後方(根據預設在埠 80 上)。 此範例會使用自定義腳本來執行應用程式部署和更新,您可能必須為自己的更新程式提供自定義腳本。 您必須在建立 VMSS 的相同訂用帳戶和區域中,提供 VM 的一般化映像。 |
使用 Windows 自定義映像部署 VM 擴展集 |
此範本可讓您部署簡單的 VM 擴展集,以使用自訂 Windows 映像。 這些 VM 位於具有 HTTP 負載平衡的負載平衡器後方(根據預設埠 80) |
使用 Linux VM 部署 VM 擴展集和自動調整 |
此範本可讓您使用最新修補版本的 Ubuntu Linux 15.04 或 14.04.4-LTS 來部署簡單的 Linux VM 擴展集。 這些 VM 位於負載平衡器後方,具有 SSH 連線的 NAT 規則。它們也有自動調整整合 |
在 ILB 後部署具有 Linux VM 的 VM 擴展集 |
此範本可讓您使用最新修補版本的 Ubuntu Linux 15.10 或 14.04.4-LTS 來部署 Linux VM 的 VM 擴展集。 這些 VM 位於內部負載平衡器後方,具有 SSH 連線的 NAT 規則。 |
在可用性區域中部署具有Linux VM的VM擴展集 |
此範本可讓您使用最新修補版本的 Ubuntu Linux 14.04.4-LTS 或 16.04-LTS 部署簡單的 Linux VM 擴展集。 這些 VM 位於負載平衡器後方,具有 SSH 連線的 NAT 規則。 |
使用 Windows VM 部署 VM 擴展集和自動調整 |
此範本可讓您使用最新修補版本的 Windows 2008-R2-SP1、2012-Datacenter 或 2012-R2-Datacenter 部署簡單的 Windows VM 擴展集。 這些 VM 位於具有 RDP 連線 NAT 規則的負載平衡器後方。 它們也有自動調整整合 |
在可用性區域中部署具有 Windows VM 的 VM 擴展集 |
此範本可讓您使用各種 Windows 版本的最新修補版本來部署 Windows VM 的 VM 擴展集。 這些 VM 位於具有 RDP 連線 NAT 規則的負載平衡器後方。 |
部署 VMSS,將每個 VM 連線到 Azure 檔案記憶體共用 |
此範本會部署 Ubuntu 虛擬機擴展集,並使用自定義腳本擴充功能將每個 VM 連線到 Azure 檔案記憶體共用 |
使用自定義腳本擴充功能部署 Windows VM 擴展集 |
此範本可讓您使用各種 Windows 版本的最新修補版本來部署 Windows VM 的 VM 擴展集。 這些 VM 具有自定義腳本擴充功能,且位於負載平衡器後方,具有 RDP 連線的 NAT 規則。 |
使用 Azure 應用程式閘道部署 Windows VM 擴展集 |
此範本可讓您部署與 Azure 應用程式閘道整合的簡單 Windows VM 擴展集,並支援最多 1000 部 VM |
部署虛擬機 ScaleSet 的自動調整設定 |
此範本可讓您部署虛擬機 ScaleSet 資源的自動調整原則。 |
使用 Azure 應用程式閘道部署 Ubuntu VM 擴展集 |
此範本可讓您部署與 Azure 應用程式閘道整合的簡單 Ubuntu VM 擴展集,並支援最多 1000 部 VM |
部署深色追蹤自動調整 vSensors |
此範本可讓您部署 Darktrace vSensors 的自動自動調整部署 |
使用 VM 擴展集、Azure 檔案和 Mysql 部署 Drupal |
在負載平衡器/NAT 後方部署 VM 擴展集,& 執行 Drupal 的每個 VM(Apache / PHP)。 所有節點都會共用已建立的 Azure 檔案共用記憶體和 MySQL 資料庫 |
使用 LB 探查和自動修復部署 VM 擴展集 |
此範本可讓您在已設定健康情況探查的負載平衡器後方部署Linux VM的VM擴展集。 擴展集也有自動實例修復原則,且寬限期為 30 分鐘。 |
使用 Python Bottle 伺服器部署 VM 擴展集 & 自動調整 |
在負載平衡器/NAT 後方部署 VM 擴展集,& 執行可運作的簡單 Python Bottle 應用程式的每個 VM。 設定自動調整擴展集時,會視需要相應放大 & |
部署 Windows VMSS 設定具有 SSL DSC |
此範本可讓您部署兩個 Windows VMSS、設定 WINDOWS 功能,例如 IIS/Web 角色、.Net Framework 4.5、windows 驗證、應用程式初始化、下載應用程式部署套件、URL 重寫 & 使用 DSC 和 Azure Key Vault 的 SSL 設定 |
停用現有 Linux VMSS 上的加密 |
停用現有Linux VMSS上的加密 |
在執行中的Linux VMSS 上啟用資料磁碟區加密 |
在執行中的Linux VMSS上啟用數據磁碟區加密 |
在虛擬機擴展集上安裝 Elasticsearch 叢集 |
此範本會在虛擬機擴展集上部署 Elasticsearch 叢集。 範本會布建 3 個專用主要節點,其中包含選擇性數目的數據節點,這些節點會在受控磁碟上執行。 |
RHEL 上的 JBoss EAP |
此範本可讓您建立執行 JBoss EAP 7.4 叢集的 RHEL 8.6 VMSS 實例,並部署名為 eap-session-replication 的 Web 應用程式,您可以使用部署時設定的 JBoss EAP 使用者名稱和密碼來登入管理控制台。 |
使用 VMSS 叢集自動調整程式 Kubernetes 叢集 |
此範本會部署使用 kubeadm 初始化的 vanilla kubernetes 叢集。 它會使用叢集自動調整程式部署已設定的主要節點。 預先設定的虛擬機擴展集 (VMSS) 也會部署並自動連結至叢集。 接著,叢集自動調整程式可以根據叢集的工作負載自動相應增加/減少叢集。 |
使用 Linux VM 和每個 VM 的公用 IPv4 簡單 VM 擴展集 |
此範本示範如何使用負載平衡器、輸入 NAT 規則和每個 VM 的公用 IP 來部署簡單的擴充集。 |
已啟用 SSL 的 VM 擴展集 |
部署 Web 伺服器以安全方式部署的 SSL 憑證來設定 Azure Key Vault |
使用可用性區域 虛擬機擴展集範例 |
此範本會使用負載平衡器,建立位於個別可用性區域中的 VMSS。 |
執行 IIS WebApp 的自動調整 VM 擴展集 |
部署執行 IIS 的 Windows VM 擴展集和非常基本的 .NET MVC Web 應用程式。 VMSS PowerShell DSC 擴充功能可用來執行 IIS 安裝和 WebDeploy 套件部署。 |
在 Azure 虛擬網路 (VNET) 中部署 IPv6 的 VMSS |
使用雙堆棧 IPv4/IPv6 VNET 和 Std Load Balancer 建立 VM 擴展集。 |
VMSS 彈性協調流程模式快速入門 Linux |
此範本會部署具有 Azure Load Balancer 後方實例的簡單 VM 擴展集。 VM 擴展集處於彈性協調流程模式。 使用 os 參數來選擇 Linux (Ubuntu) 或 Windows (Windows Server Datacenter 2019) 部署。 注意:本快速入門範本可讓您從任何因特網位址存取 VM 管理埠(SSH、RDP),而且不應該用於生產部署。 |
具有公用IP前置詞的VMSS |
使用公用IP前綴部署VMSS的範本 |
Terraform (AzAPI 提供者) 資源定義
virtualMachineScaleSets 資源類型可以使用目標作業來部署:
- 資源群組
如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔。
資源格式
若要建立 Microsoft.Compute/virtualMachineScaleSets 資源,請將下列 Terraform 新增至範本。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Compute/virtualMachineScaleSets@2015-06-15"
name = "string"
location = "string"
sku = {
capacity = int
name = "string"
tier = "string"
}
tags = {
{customized property} = "string"
}
body = jsonencode({
properties = {
overProvision = bool
provisioningState = "string"
upgradePolicy = {
mode = "string"
}
virtualMachineProfile = {
extensionProfile = {
extensions = [
{
id = "string"
name = "string"
properties = {
autoUpgradeMinorVersion = bool
protectedSettings = ?
publisher = "string"
settings = ?
type = "string"
typeHandlerVersion = "string"
}
}
]
}
networkProfile = {
networkInterfaceConfigurations = [
{
id = "string"
name = "string"
properties = {
ipConfigurations = [
{
id = "string"
name = "string"
properties = {
loadBalancerBackendAddressPools = [
{
id = "string"
}
]
loadBalancerInboundNatPools = [
{
id = "string"
}
]
subnet = {
id = "string"
}
}
}
]
primary = bool
}
}
]
}
osProfile = {
adminPassword = "string"
adminUsername = "string"
computerNamePrefix = "string"
customData = "string"
linuxConfiguration = {
disablePasswordAuthentication = bool
ssh = {
publicKeys = [
{
keyData = "string"
path = "string"
}
]
}
}
secrets = [
{
sourceVault = {
id = "string"
}
vaultCertificates = [
{
certificateStore = "string"
certificateUrl = "string"
}
]
}
]
windowsConfiguration = {
additionalUnattendContent = [
{
componentName = "Microsoft-Windows-Shell-Setup"
content = "string"
passName = "OobeSystem"
settingName = "string"
}
]
enableAutomaticUpdates = bool
provisionVMAgent = bool
timeZone = "string"
winRM = {
listeners = [
{
certificateUrl = "string"
protocol = "string"
}
]
}
}
}
storageProfile = {
imageReference = {
offer = "string"
publisher = "string"
sku = "string"
version = "string"
}
osDisk = {
caching = "string"
createOption = "string"
image = {
uri = "string"
}
name = "string"
osType = "string"
vhdContainers = [
"string"
]
}
}
}
}
})
}
屬性值
AdditionalUnattendContent
名字 | 描述 | 價值 |
---|---|---|
componentName | 元件名稱。 目前,唯一允許的值是 Microsoft-Windows-Shell-Setup。 | 'Microsoft-Windows-Shell-Setup' |
內容 | 指定新增至指定路徑和元件之 unattend.xml 檔案的 XML 格式化內容。 XML 必須小於 4KB,而且必須包含要插入之設定或功能的根元素。 | 字串 |
passName | 傳遞名稱。 目前唯一允許的值是 OobeSystem。 | 'OobeSystem' |
settingName | 指定套用內容之設定的名稱。 可能的值為:FirstLogonCommands 和 AutoLogon。 | 'AutoLogon' 'FirstLogonCommands' |
ApiEntityReference
名字 | 描述 | 價值 |
---|---|---|
id | 以 /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/... 格式的 ARM 資源標識符 | 字串 |
ImageReference
名字 | 描述 | 價值 |
---|---|---|
提供 | 指定用來建立虛擬機的平臺映像或市集映像供應專案。 | 字串 |
發行人 | 映像發行者。 | 字串 |
sku | 映像 SKU。 | 字串 |
版本 | 指定用來建立虛擬機的平臺映像或市集映像版本。 允許的格式為 Major.Minor.Build 或 'latest'。 主要、次要和組建是十進位數。 指定 'latest' 以在部署時間使用可用映像的最新版本。 即使您使用「最新」,即使有新版本可用,VM 映像也不會在部署時間之後自動更新。 | 字串 |
LinuxConfiguration
名字 | 描述 | 價值 |
---|---|---|
disablePasswordAuthentication | 指定是否應停用密碼驗證。 | bool |
ssh | 指定 Linux OS 的 SSH 金鑰組態。 | SshConfiguration |
Microsoft.Compute/virtualMachineScaleSets
名字 | 描述 | 價值 |
---|---|---|
位置 | 資源位置 | 字串 (必要) |
名字 | 資源名稱 | 字串 (必要) |
性能 | 描述虛擬機擴展集的屬性。 | VirtualMachineScaleSetProperties |
sku | 虛擬機擴展集 SKU。 | Sku |
標籤 | 資源標籤 | 標記名稱和值的字典。 |
類型 | 資源類型 | “Microsoft.Compute/virtualMachineScaleSets@2015-06-15” |
ResourceTags
名字 | 描述 | 價值 |
---|
Sku
名字 | 描述 | 價值 |
---|---|---|
能力 | 指定擴展集中的虛擬機數目。 | int |
名字 | SKU 名稱。 | 字串 |
層 | 指定擴展集中虛擬機的層級。 可能的值: Standard 基本 |
字串 |
SshConfiguration
名字 | 描述 | 價值 |
---|---|---|
publicKeys | 用來向Linux型VM進行驗證的SSH公鑰清單。 | SshPublicKey[] |
SshPublicKey
名字 | 描述 | 價值 |
---|---|---|
keyData | 用來透過 ssh 向 VM 進行驗證的 SSH 公鑰憑證。 密鑰至少必須是 2048 位,且格式為 ssh-rsa。 如需建立 ssh 金鑰,請參閱 在 Azure中建立 Linux 和 Mac 上的 SSH 金鑰。 |
字串 |
路徑 | 指定已建立 VM 上儲存 SSH 公鑰的完整路徑。 如果檔案已經存在,指定的索引鍵會附加至檔案。 範例:/home/user/.ssh/authorized_keys | 字串 |
SubResource
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼 | 字串 |
UpgradePolicy
名字 | 描述 | 價值 |
---|---|---|
模式 | 指定升級至擴展集中虛擬機的模式。 可能的值為: 手動 - 您可以控制擴充集中虛擬機的更新應用程式。 您可以使用 manualUpgrade 動作來執行此動作。 自動 - 擴展集中的所有虛擬機都會同時自動更新。 |
'Automatic' 'Manual' |
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 編碼憑證>”, “dataType”:“pfx”, “password”:“<pfx-file-password>” } |
字串 |
VaultSecretGroup
名字 | 描述 | 價值 |
---|---|---|
sourceVault | Key Vault 的相對 URL,其中包含 VaultCertificates 中的所有憑證。 | SubResource |
vaultCertificates | SourceVault 中包含憑證的金鑰保存庫參考清單。 | VaultCertificate[] |
VirtualHardDisk
名字 | 描述 | 價值 |
---|---|---|
uri | 指定虛擬硬碟的 URI。 | 字串 |
VirtualMachineScaleSetExtension
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼 | 字串 |
名字 | 延伸模組的名稱。 | 字串 |
性能 | 描述虛擬機擴展集擴充功能的屬性。 | VirtualMachineScaleSetExtensionProperties |
VirtualMachineScaleSetExtensionProfile
名字 | 描述 | 價值 |
---|---|---|
擴展 | 虛擬機擴展集子擴充功能資源。 | VirtualMachineScaleSetExtension[] |
VirtualMachineScaleSetExtensionProperties
名字 | 描述 | 價值 |
---|---|---|
autoUpgradeMinorVersion | 延伸模組處理程式是否應該在次要版本之間自動升級。 | bool |
protectedSettings | 擴充功能的 Json 格式化受保護設定。 | 任何 |
發行人 | 擴充處理程序發行者的名稱。 | 字串 |
設置 | 擴充功能的 Json 格式化公用設定。 | 任何 |
類型 | 擴充處理程式的類型。 | 字串 |
typeHandlerVersion | 擴充處理程式的類型版本。 | 字串 |
VirtualMachineScaleSetIPConfiguration
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼 | 字串 |
名字 | IP 組態名稱。 | 字串 (必要) |
性能 | 描述虛擬機擴展集網路配置檔的IP組態屬性。 | VirtualMachineScaleSetIPConfigurationProperties |
VirtualMachineScaleSetIPConfigurationProperties
名字 | 描述 | 價值 |
---|---|---|
loadBalancerBackendAddressPools | 負載平衡器後端位址池。 | SubResource[] |
loadBalancerInboundNatPools | 負載平衡器輸入 nat 集區。 | SubResource[] |
子 | 子網。 | ApiEntityReference (必要) |
VirtualMachineScaleSetNetworkConfiguration
名字 | 描述 | 價值 |
---|---|---|
id | 資源標識碼 | 字串 |
名字 | 網路組態名稱。 | 字串 (必要) |
性能 | 描述虛擬機擴展集網路配置檔的IP組態。 | VirtualMachineScaleSetNetworkConfigurationProperties |
VirtualMachineScaleSetNetworkConfigurationProperties
名字 | 描述 | 價值 |
---|---|---|
ipConfigurations | 虛擬機擴展集IP組態。 | VirtualMachineScaleSetIPConfiguration[] (必要) |
主要 | 這是否為虛擬機上的主要 NIC。 | bool |
VirtualMachineScaleSetNetworkProfile
名字 | 描述 | 價值 |
---|---|---|
networkInterfaceConfigurations | 網路組態的清單。 | VirtualMachineScaleSetNetworkConfiguration[] |
VirtualMachineScaleSetOSDisk
名字 | 描述 | 價值 |
---|---|---|
緩存 | 指定快取需求。 可能的值為: 無 ReadOnly ReadWrite 預設值:標準記憶體 None。進階記憶體的 ReadOnly |
'None' 'ReadOnly' 'ReadWrite' |
createOption | 指定應該如何建立擴展集中的虛擬機。 唯一允許的值是:FromImage \u2013 當您使用映像來建立虛擬機時,會使用此值。 如果您使用平臺映像,則也會使用上述的 imageReference 元素。 如果您使用市集映像,則也會使用先前所述的 plan 元素。 |
'Attach' 'Empty' 'FromImage' (必要) |
圖像 | 來源使用者映像 VirtualHardDisk。 此 VirtualHardDisk 將會先複製,再使用它連結至虛擬機。 如果提供SourceImage,目的地 VirtualHardDisk 就不應該存在。 | VirtualHardDisk |
名字 | 磁碟名稱。 | 字串 (必要) |
osType | 此屬性可讓您指定從使用者映像或特製化 VHD 建立 VM 時,磁碟包含的 OS 類型。 可能的值為: Windows Linux |
'Linux' 'Windows' |
vhdContainers | 虛擬硬碟容器 URI 的清單。 | string[] |
VirtualMachineScaleSetOSProfile
名字 | 描述 | 價值 |
---|---|---|
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 | 指定系統管理員帳戶的名稱。 僅限 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 個字元 <li> 如需不應該在此欄位中使用的 Linux 內建系統使用者清單,請參閱在 Azure 上選取 Linux 的使用者名稱 |
字串 |
computerNamePrefix | 指定擴展集中所有虛擬機的計算機名稱前置詞。 計算機名稱前置詞長度必須為1到15個字元。 | 字串 |
customData | 自訂數據的base-64編碼字串。 | 字串 |
linuxConfiguration | 操作系統配置檔的 Linux 組態。 | LinuxConfiguration |
秘密 | 要新增至 VM 的憑證清單。 | VaultSecretGroup[] |
windowsConfiguration | 操作系統配置檔的 Windows 組態。 | WindowsConfiguration |
VirtualMachineScaleSetProperties
名字 | 描述 | 價值 |
---|---|---|
overProvision | 指定虛擬機擴展集是否應該過度布建。 | bool |
provisioningState | 只出現在回應中的布建狀態。 | 字串 |
upgradePolicy | 升級原則。 | UpgradePolicy |
virtualMachineProfile | 虛擬機器配置檔。 | VirtualMachineScaleSetVMProfile |
VirtualMachineScaleSetStorageProfile
名字 | 描述 | 價值 |
---|---|---|
imageReference | 影像參考。 | ImageReference |
osDisk | OS 磁碟。 | VirtualMachineScaleSetOSDisk |
VirtualMachineScaleSetVMProfile
名字 | 描述 | 價值 |
---|---|---|
extensionProfile | 虛擬機擴展集擴充配置檔。 | VirtualMachineScaleSetExtensionProfile |
networkProfile | 虛擬機擴展集網路配置檔。 | VirtualMachineScaleSetNetworkProfile |
osProfile | 虛擬機擴展集OS配置檔。 | VirtualMachineScaleSetOSProfile |
storageProfile | 虛擬機擴展集記憶體配置檔。 | VirtualMachineScaleSetStorageProfile |
WindowsConfiguration
名字 | 描述 | 價值 |
---|---|---|
additionalUnattendContent | 指定其他base-64編碼的 XML 格式資訊,這些資訊可以包含在 Windows 安裝程式所使用的 Unattend.xml 檔案中。 | AdditionalUnattendContent[] |
enableAutomaticUpdates | 指出虛擬機是否已啟用自動更新。 | bool |
provisionVMAgent | 指出虛擬機器代理程式是否應該佈建在虛擬機上。 當要求本文中未指定此屬性時,預設行為是將它設定為 true。 這可確保 VM 代理程式已安裝在 VM 上,以便稍後將擴充功能新增至 VM。 |
bool |
timeZone | 指定虛擬機的時區。 例如「太平洋標準時間” | 字串 |
winRM | 指定 Windows 遠端管理接聽程式。 這可啟用遠端 Windows PowerShell。 | WinRMConfiguration |
WinRMConfiguration
名字 | 描述 | 價值 |
---|---|---|
聽眾 | Windows 遠端管理接聽程式清單 | WinRMListener[] |
WinRMListener
名字 | 描述 | 價值 |
---|---|---|
certificateUrl | 這是已上傳至 Key Vault 做為秘密之憑證的 URL。 如需將秘密新增至 Key Vault,請參閱 將金鑰或秘密新增至金鑰保存庫。 在此情況下,您的憑證必須是下列 JSON 物件的 Base64 編碼,其編碼方式為 UTF-8: { “data”:“<Base64 編碼憑證>”, “dataType”:“pfx”, “password”:“<pfx-file-password>” } |
字串 |
協定 | 指定接聽程式的通訊協定。 可能的值為: http https |
'Http' 'Https' |