在 Azure 中从已有数据磁盘的现有映像创建 VM 时,我可以通过 ARM 模板添加额外的数据磁盘吗?
Can I add additional datadisk through ARM Template while creating a VM in Azure from an existing image which already has a datadisk?
我正在使用现有映像通过 ARM 模板在 Azure 中创建 VM。图像已经有一个数据磁盘。我正在尝试在创建 VM 时通过 ARM 模板添加额外的数据磁盘。我可以这样做吗?我收到以下列出的错误:-
Can not add property dataDisks to Newtonsoft.Json.Linq.JObject. Property with the same name already exists on object
嗯,如果你的镜像已经有数据盘,那么在通过ARM模板创建虚拟机的时候,你还需要为已有的数据盘配置datadisk
块。只需将 createOption
设置为值 fromImage
。然后照常设置附加数据盘。比如你的镜像有一个数据盘,你还需要附加另一个数据盘,那么dataDisk
块就是这样:
"dataDisks": [
{
"lun": 0,
"createOption": "fromImage",
"caching": "ReadOnly",
"writeAcceleratorEnabled": false,
"id": null,
"name": null,
"storageAccountType": "Premium_LRS",
"diskSizeGB": null,
"diskEncryptionSet": null
},
{
"lun": 1,
"createOption": "attach",
"caching": "None",
"writeAcceleratorEnabled": false,
"id": null,
"name": "azurevm_DataDisk_1",
"storageAccountType": null,
"diskSizeGB": null,
"diskEncryptionSet": null
}
]
这只是一个示例,您可以根据需要更改值,对您来说最重要的是createOption
。而第一个是现有的数据盘,类型相同,其他也应该和图片中的一样。
我正在使用现有映像通过 ARM 模板在 Azure 中创建 VM。图像已经有一个数据磁盘。我正在尝试在创建 VM 时通过 ARM 模板添加额外的数据磁盘。我可以这样做吗?我收到以下列出的错误:-
Can not add property dataDisks to Newtonsoft.Json.Linq.JObject. Property with the same name already exists on object
嗯,如果你的镜像已经有数据盘,那么在通过ARM模板创建虚拟机的时候,你还需要为已有的数据盘配置datadisk
块。只需将 createOption
设置为值 fromImage
。然后照常设置附加数据盘。比如你的镜像有一个数据盘,你还需要附加另一个数据盘,那么dataDisk
块就是这样:
"dataDisks": [
{
"lun": 0,
"createOption": "fromImage",
"caching": "ReadOnly",
"writeAcceleratorEnabled": false,
"id": null,
"name": null,
"storageAccountType": "Premium_LRS",
"diskSizeGB": null,
"diskEncryptionSet": null
},
{
"lun": 1,
"createOption": "attach",
"caching": "None",
"writeAcceleratorEnabled": false,
"id": null,
"name": "azurevm_DataDisk_1",
"storageAccountType": null,
"diskSizeGB": null,
"diskEncryptionSet": null
}
]
这只是一个示例,您可以根据需要更改值,对您来说最重要的是createOption
。而第一个是现有的数据盘,类型相同,其他也应该和图片中的一样。