Add-AzVMDataDisk
语法
VmNormalDiskParameterSetName (默认值)
Add-AzVMDataDisk
[-VM] <PSVirtualMachine>
[[-Name] <String>]
[[-VhdUri] <String>]
[[-Caching] <CachingTypes>]
[[-DiskSizeInGB] <Int32>]
[-Lun] <Int32>
[-CreateOption] <String>
[[-SourceImageUri] <String>]
[-DiskEncryptionSetId <String>]
[-DeleteOption <String>]
[-SourceResourceId <String>]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
VmManagedDiskParameterSetName
Add-AzVMDataDisk
[-VM] <PSVirtualMachine>
[[-Name] <String>]
[[-Caching] <CachingTypes>]
[[-DiskSizeInGB] <Int32>]
[-Lun] <Int32>
[-CreateOption] <String>
[[-ManagedDiskId] <String>]
[[-StorageAccountType] <String>]
[-DiskEncryptionSetId <String>]
[-WriteAccelerator]
[-DeleteOption <String>]
[-SourceResourceId <String>]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
说明
Add-AzVMDataDisk cmdlet 向虚拟机添加数据磁盘。
可以在创建虚拟机时添加数据磁盘,也可以向现有虚拟机添加数据磁盘。
示例
示例 1:向新虚拟机添加数据磁盘
$VirtualMachine = New-AzVMConfig -VMName "VirtualMachine07" -VMSize "Standard_A1"
$DataDiskVhdUri01 = "https://contoso.blob.core.windows.net/test/data1.vhd"
$DataDiskVhdUri02 = "https://contoso.blob.core.windows.net/test/data2.vhd"
$DataDiskVhdUri03 = "https://contoso.blob.core.windows.net/test/data3.vhd"
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk1' -Caching 'ReadOnly' -DiskSizeInGB 10 -Lun 0 -VhdUri $DataDiskVhdUri01 -CreateOption Empty
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk2' -Caching 'ReadOnly' -DiskSizeInGB 11 -Lun 1 -VhdUri $DataDiskVhdUri02 -CreateOption Empty
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk3' -Caching 'ReadOnly' -DiskSizeInGB 12 -Lun 2 -VhdUri $DataDiskVhdUri03 -CreateOption Empty
第一个命令创建虚拟机对象,然后将其存储在$VirtualMachine变量中。
该命令将名称和大小分配给虚拟机。
接下来的三个命令将三个数据磁盘的路径分配给 $DataDiskVhdUri 01、$DataDiskVhdUri 02 和 $DataDiskVhdUri 03 变量。
此方法仅适用于以下命令的可读性。
最后三个命令将一个数据磁盘添加到存储在$VirtualMachine中的虚拟机。
该命令指定磁盘的名称和位置,以及磁盘的其他属性。
每个磁盘的 URI 存储在 $DataDiskVhdUri 01、$DataDiskVhdUri 02 和 $DataDiskVhdUri 03 中。
示例 2:将数据磁盘添加到现有虚拟机
$VirtualMachine = Get-AzVM -ResourceGroupName "ResourceGroup11" -Name "VirtualMachine07"
Add-AzVMDataDisk -VM $VirtualMachine -Name "disk1" -VhdUri "https://contoso.blob.core.windows.net/vhds/diskstandard03.vhd" -LUN 0 -Caching ReadOnly -DiskSizeinGB 1 -CreateOption Empty
Update-AzVM -ResourceGroupName "ResourceGroup11" -VM $VirtualMachine
第一个命令使用 Get-AzVM cmdlet 获取名为 VirtualMachine07 的虚拟机。
该命令在 $VirtualMachine 变量中存储虚拟机。
第二个命令将数据磁盘添加到存储在$VirtualMachine中的虚拟机。
最后一个命令更新 ResourceGroup11 中$VirtualMachine中存储的虚拟机的状态。
示例 3:从通用用户映像向新虚拟机添加数据磁盘
$VirtualMachine = New-AzVMConfig -VMName "VirtualMachine07" -VMSize "Standard_A1"
$DataImageUri = "https://contoso.blob.core.windows.net/system/Microsoft.Compute/Images/captured/dataimage.vhd"
$DataDiskUri = "https://contoso.blob.core.windows.net/test/datadisk.vhd"
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name "disk1" -SourceImageUri $DataImageUri -VhdUri $DataDiskUri -Lun 0 -DiskSizeinGB 10 -CreateOption FromImage
第一个命令创建虚拟机对象并将其存储在$VirtualMachine变量中。
该命令将名称和大小分配给虚拟机。
接下来的两个命令将数据映像和数据磁盘的路径分别分配给$DataImageUri和$DataDiskUri变量。
此方法用于提高以下命令的可读性。
最后一个命令会将数据磁盘添加到存储在$VirtualMachine中的虚拟机。
该命令指定磁盘的名称和位置以及磁盘的其他属性。
示例 4:从专用用户映像向新虚拟机添加数据磁盘
$VirtualMachine = New-AzVMConfig -VMName "VirtualMachine07" -VMSize "Standard_A1"
$DataDiskUri = "https://contoso.blob.core.windows.net/test/datadisk.vhd"
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name "dd1" -VhdUri $DataDiskUri -Lun 0 -DiskSizeinGB 10 -CreateOption Attach
第一个命令创建虚拟机对象并将其存储在$VirtualMachine变量中。
该命令将名称和大小分配给虚拟机。
下一个命令将数据磁盘的路径分配给$DataDiskUri变量。
此方法用于提高以下命令的可读性。
最后一个命令将数据磁盘添加到存储在$VirtualMachine中的虚拟机。
该命令指定磁盘的名称和位置,以及磁盘的其他属性。
参数
-Caching
指定磁盘的缓存模式。
此参数的可接受值为:
- ReadOnly
- ReadWrite
- 无 默认值为 ReadWrite。
更改此值会导致虚拟机重启。
此设置会影响磁盘的一致性和性能。
参数属性
类型: | CachingTypes
|
默认值: | None |
接受的值: | None, ReadOnly, ReadWrite |
支持通配符: | False |
不显示: | False |
参数集
(All)
Position: | 3 |
必需: | False |
来自管道的值: | False |
来自管道的值(按属性名称): | True |
来自剩余参数的值: | False |
-CreateOption
指定此 cmdlet 是否从平台或用户映像在虚拟机中创建磁盘、创建空磁盘或附加现有磁盘。
此参数的可接受值为:
- 附加。
指定此选项以从专用磁盘创建虚拟机。
指定此选项时,请不要指定 SourceImageUri 参数。
VhdUri 是所需的一切,以便告知 Azure 平台虚拟硬盘(VHD)作为数据磁盘附加到虚拟机的位置。
- Empty.
指定此项可创建空数据磁盘。
- FromImage。
指定此选项可从通用化映像或磁盘创建虚拟机。
指定此选项时,还必须指定 SourceImageUri 参数,以便告知 Azure 平台要附加为数据磁盘的 VHD 的位置。
VhdUri 参数用作标识虚拟机使用数据磁盘 VHD 时存储的位置。
- Empty.
创建空数据磁盘时使用此值。
- 复制。
此值用于从快照或其他磁盘创建数据磁盘。
还原: 此值用于从磁盘还原点创建数据磁盘。
参数属性
类型: | String
|
默认值: | None |
支持通配符: | False |
不显示: | False |
参数集
(All)
Position: | 6 |
必需: | True |
来自管道的值: | False |
来自管道的值(按属性名称): | True |
来自剩余参数的值: | False |
-DefaultProfile
用于与 Azure 通信的凭据、帐户、租户和订阅。
参数属性
参数集
(All)
Position: | Named |
必需: | False |
来自管道的值: | False |
来自管道的值(按属性名称): | False |
来自剩余参数的值: | False |
-DeleteOption
数据磁盘删除选项。 指定在删除 VM 后对磁盘执行的操作。 选项包括:分离、删除。
参数属性
类型: | String
|
默认值: | None |
支持通配符: | False |
不显示: | False |
参数集
(All)
Position: | Named |
必需: | False |
来自管道的值: | False |
来自管道的值(按属性名称): | True |
来自剩余参数的值: | False |
-DiskEncryptionSetId
指定客户托管磁盘加密集的资源 ID。 这只能为托管磁盘指定。
参数属性
类型: | String
|
默认值: | None |
支持通配符: | False |
不显示: | False |
参数集
(All)
Position: | Named |
必需: | False |
来自管道的值: | False |
来自管道的值(按属性名称): | False |
来自剩余参数的值: | False |
-DiskSizeInGB
指定要附加到虚拟机的空磁盘的大小(以 GB 为单位)。
参数属性
参数集
(All)
Position: | 4 |
必需: | False |
来自管道的值: | False |
来自管道的值(按属性名称): | True |
来自剩余参数的值: | False |
-Lun
指定数据磁盘的逻辑单位号(LUN)。
参数属性
参数集
(All)
Position: | 5 |
必需: | True |
来自管道的值: | False |
来自管道的值(按属性名称): | True |
来自剩余参数的值: | False |
-ManagedDiskId
指定托管磁盘的 ID。
参数属性
类型: | String
|
默认值: | None |
支持通配符: | False |
不显示: | False |
参数集
VmManagedDiskParameterSetName
Position: | 8 |
必需: | False |
来自管道的值: | False |
来自管道的值(按属性名称): | True |
来自剩余参数的值: | False |
-Name
指定要添加的数据磁盘的名称。
参数属性
类型: | String
|
默认值: | None |
支持通配符: | False |
不显示: | False |
参数集
(All)
Position: | 1 |
必需: | False |
来自管道的值: | False |
来自管道的值(按属性名称): | True |
来自剩余参数的值: | False |
-SourceImageUri
指定此 cmdlet 附加的磁盘的源 URI。
参数属性
类型: | String
|
默认值: | None |
支持通配符: | False |
不显示: | False |
别名: | SourceImage |
参数集
VmNormalDiskParameterSetName
Position: | 7 |
必需: | False |
来自管道的值: | False |
来自管道的值(按属性名称): | True |
来自剩余参数的值: | False |
-SourceResourceId
要从中创建磁盘的快照或磁盘还原点的 ARM ID。
参数属性
类型: | String
|
默认值: | None |
支持通配符: | False |
不显示: | False |
参数集
(All)
Position: | Named |
必需: | False |
来自管道的值: | False |
来自管道的值(按属性名称): | True |
来自剩余参数的值: | False |
-StorageAccountType
指定托管磁盘的存储帐户类型。
参数属性
类型: | String
|
默认值: | None |
支持通配符: | False |
不显示: | False |
参数集
VmManagedDiskParameterSetName
Position: | 9 |
必需: | False |
来自管道的值: | False |
来自管道的值(按属性名称): | True |
来自剩余参数的值: | False |
-VhdUri
指定使用平台映像或用户映像时要创建的虚拟硬盘(VHD)文件的统一资源标识符(URI)。
此 cmdlet 将映像二进制大型对象(blob)复制到此位置。
这是从中启动虚拟机的位置。
参数属性
类型: | String
|
默认值: | None |
支持通配符: | False |
不显示: | False |
参数集
VmNormalDiskParameterSetName
Position: | 2 |
必需: | False |
来自管道的值: | False |
来自管道的值(按属性名称): | True |
来自剩余参数的值: | False |
-VM
指定要向其添加数据磁盘的本地虚拟机对象。
可以使用 Get-AzVM cmdlet 获取虚拟机对象。
可以使用 New-AzVMConfig cmdlet 创建虚拟机对象。
参数属性
参数集
(All)
Position: | 0 |
必需: | True |
来自管道的值: | True |
来自管道的值(按属性名称): | True |
来自剩余参数的值: | False |
-WriteAccelerator
指定是否应在托管数据磁盘上启用或禁用 WriteAccelerator。
参数属性
参数集
VmManagedDiskParameterSetName
Position: | Named |
必需: | False |
来自管道的值: | False |
来自管道的值(按属性名称): | False |
来自剩余参数的值: | False |
CommonParameters
此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters。
输出