当前位置: > 其它学习 > Azure >

如何为经典虚拟机附加磁盘

时间:2019-03-05 13:45来源:linux.it.net.cn 作者:IT
关于如何在 Azure 门户 上附加磁盘请阅读这篇文章。

备注

使用 Powershell 前有关 Azure PowerShell 的安装、配置和连接到订阅请阅读这篇文章。

相关 PowerShell 指令:

Get-AzureDataDisk
Add-AzureDataDisk
Remove-AzureDataDisk
Update-AzureVM
Get-AzureDisk
备注

本文使用的测试虚拟机名为:"pstest",相关参数请根据您的实际情况进行替换。

通过 PowerShell 附加磁盘
PowerShell

复制
#获取虚拟机上数据磁盘的详细信息
$vm=Get-AzureVM -ServiceName 'pstest' -Name 'pstest'
Get-AzureDataDisk -VM $vm

#添加数据磁盘
Add-AzureDataDisk -VM $vm -CreateNew -DiskSizeInGB 10 -DiskLabel 'test' -LUN 0 -MediaLocation "https://portalvhdsw0kfpkwrwbyf2.blob.core.chinacloudapi.cn/vhds/pstest-sport1.vhd" | Update-AzureVM 

#附加存在于 Azure 存储中的数据磁盘
Add-AzureDataDisk -ImportFrom -MediaLocation "https://***.blob.core.chinacloudapi.cn/vhds/myvhdfile.vhd" -VM $vm -DiskLabel 'test' -LUN 0 | Update-AzureVM

#从已经存在的数据磁盘附加到虚拟机
#Get-AzureDisk 获取可以附加的磁盘信息
#附加磁盘的条件:与虚拟机同一个 Location、同一个存储账号下,数据磁盘没有附加在其它虚拟机上
#以下是我测试位于 China East,没有附加于其它虚拟机,且在 portalvhdsw0kfpkwrwbyf2 存储账户下的数据磁盘
Get-AzureDisk | Where-Object {($_.AttachedTo -eq $null) -and ($_.Location -eq 'China East') -and ($_.MediaLink -Like '*portalvhdsw0kfpkwrwbyf2*') } | Format-Table -auto "DiskName","DiskSizeInGB","AttachedTo"
#将要附加的 DiskName 输入下述 PowerShell 指令
Add-AzureDataDisk -Import -DiskName "pstest-pstest-0-201601270217390866" -LUN 3 -VM $vm | Update-AzureVM   
备注

附加磁盘不会引起虚拟机重启,也不需要虚拟机重启。
根据虚拟机的尺寸,附加磁盘的个数也不一样。具体尺寸对应的附加磁盘数量请阅读这篇文章。
如果磁盘已经被其他虚拟机附加,请首先分离磁盘,然后重新附加。
附加磁盘的大小限制为:最小:1GB,最大 1TB。
如何修改附加磁盘的大小
PowerShell

复制
#测试前"pstest-pstest-0-201601270217390866"为 1GB  
Update-AzureDisk -DiskName "pstest-pstest-0-201601270217390866" –ResizedSizeInGB 5 –label "resize"
通过 Get_AzureDisk 查看结果:

PowerShell

复制
Get-AzureDisk | Where-Object {($_.DiskName -eq 'pstest-pstest-0-201601270217390866')} | Format-Table -auto "DiskName","DiskSizeInGB","AttachedTo"  


备注

请在数据磁盘大小限制范围内修改数据磁盘大小,最大 1TB。
在修改数据磁盘前,请首先将数据磁盘和虚拟机分离。
修改后添加的大小附加到虚拟机上是未分配状态。
只可以增加数据磁盘的大小,不可以减小。数据磁盘都是页 Blob,是按实际使用量来收费的,在设计时可考虑最大化,最大 1TB,这样可避免此操作。
如何移除数据磁盘
PowerShell

复制
Remove-AzureDataDisk -LUN 0 -VM $vm | Update-AzureVM



(责任编辑:IT)
------分隔线----------------------------