扩容云硬盘

最近更新时间:2024-11-25 11:38:52

我的收藏

操作场景

云硬盘是云上可扩展的存储设备,用户可以在创建云硬盘后随时扩展其大小,以增加存储空间,同时不失去云硬盘上原有的数据。 云硬盘扩容完成后,需扩展分区及文件系统。您可将扩容部分的容量划分至已有分区内,或者将扩容部分的容量格式化成独立的新分区。
注意:
MBR 格式分区支持的磁盘最大容量为2TB。如果您的硬盘分区为 MBR 格式,且需要扩容到超过2TB时,建议您重新创建并挂载一块数据盘,使用 GPT 分区方式后将数据拷贝至新盘中。

操作限制

1. 云硬盘仅支持扩容,不支持缩容。
2. 正常生命周期的云硬盘才支持扩容,已经隔离的云硬盘不支持扩容。

扩容数据盘

当扩容类型为数据盘的云硬盘时,您可通过以下3种方式进行扩容。
注意:
若您的云服务器上已挂载了多块容量及类型均相同的云硬盘,则可参见 区分数据盘 操作进行区分。选定需扩容的数据盘后,再通过以下方式进行扩容。
通过云服务器控制台扩容(推荐)
通过云硬盘控制台扩容
通过 API 扩容
1. 
登录
云服务器控制台
2. 选择目标云服务器所在行的更多 > 资源调整 > 云硬盘扩容
3. 在弹出的云硬盘扩容窗口中选择需扩容的数据盘,并单击下一步
4. 调整容量步骤中,设置目标容量(必须大于当前容量),并单击下一步
5. 扩容分区及文件系统步骤中,查阅注意事项,单击确定即可。如下图所示:


6. 根据目标云服务的操作系统类型,您需要 扩展分区及文件系统(Windows)扩展分区及文件系统(Linux)将扩容部分的容量划分至已有分区内,或者将扩容部分的容量格式化成独立的新分区。
1. 
登录
云硬盘控制台
2. 选择目标云硬盘的更多 > 扩容
3. 选择需要的新容量大小(必须大于当前容量)。
4. 完成支付。
5. 根据目标云服务的操作系统类型,您需要执行 扩展分区及文件系统(Windows)扩展分区及文件系统(Linux)将扩容部分的容量划分至已有分区内,或者将扩容部分的容量格式化成新的独立分区。

您可以
使用 ResizeDisk 接口扩容指定的弹性云盘,具体操作请参见 扩容云硬盘(ResizeDisk)

扩容系统盘

通过云服务器控制台扩容(推荐)
通过云硬盘控制台扩容
通过 API 扩容
1. 
登录 云服务器控制台,选择目标云服务器所在行的更多 > 资源调整 > 云硬盘扩容

2. 在弹出的云硬盘扩容窗口中选择需扩容的系统盘,并单击下一步
3. 调整容量步骤中,设置目标容量(必须大于当前容量),并单击下一步
4. 在扩容分区及文件系统步骤中,查阅注意事项,单击确定即可。如下图所示:


5. 完成控制台扩容操作后,请登录实例确认是否已自动扩展文件系统。若未扩展,则请参见 在线扩展系统盘及文件系统 进行扩容分区及文件系统操作。
1. 
登录
云硬盘控制台
2. 选择目标云硬盘的更多 > 扩容
3. 选择需要的新容量大小(必须大于当前容量)。
4. 完成支付。
5. 完成控制台扩容操作后,请登录实例确认是否已自动扩展文件系统。若未扩展,则请参见 在线扩展系统盘及文件系统 进行扩容分区及文件系统操作。

您可以使用
ResizeInstanceDisks 接口扩容指定的非弹性云盘,具体操作请参见 扩容实例磁盘(ResizeInstanceDisks)

相关操作

区分数据盘

您可根据云服务器实际使用的操作系统,选择查看方式:
Linux
Windows
2. 执行以下命令,查看到云硬盘与设备名之间的对应关系。
ls -l /dev/disk/by-id
返回结果如下图所示:

其中,disk-xxxx 为云硬盘 ID,您可前往 云硬盘控制台 查看。
2. 右键单击
87d894e564b7e837d9f478298cf2e292.png (28×27)

,选择运行
3. 运行窗口中,输入 cmd 并按 Enter
4. 执行以下命令,查看云硬盘与设备名之间的对应关系。
wmic diskdrive get caption,deviceid,serialnumber
或执行以下命令:

wmic path win32_physicalmedia get SerialNumber,Tag
返回结果如下图所示:

其中,disk-xxxx 为云硬盘 ID,您可前往 云硬盘控制台 查看。

查看实例 cloudinit 配置

您可根据云服务器实际使用的操作系统,选择查看方式:
查看 Linux 实例 cloudinit 配置
查看 Windows 实例 cloudinit 配置

完成扩
容操作后,请 登录 Linux 实例 确认 /etc/cloud/cloud.cfg 是否包含 growpart 及 resizefs 配置项。
是。如果扩容的是系统盘,且无法进行在线扩容,需要重启机器, 系统启动过程 cloud-init 会调用 growpart/resizefs 命令完成扩容。如下图所示:


growpart:扩展分区大小到磁盘大小。
resizefs:扩展调整/分区文件系统到分区大小。
否,则需根据目标云服务的操作系统类型,手动扩文件系统及分区。您需要执行 扩展分区及文件系统(Linux),将扩容部分的容量划分至已有分区内或将扩容部分的容量格式化为新的独立分区。

完成扩容
操作后,请 登录 Windows 实例 确认 C:\\Program Files\\Cloudbase Solutions\\Cloudbase-Init\\conf\\cloudbase-init.conf 中的 plugin 是否包含 ExtendVolumesPlugin 配置项。
是,如果 cloudbase-init 配置文件 cloudbase-init.conf 中包含了 ExtendVolumesPlugin 配置项,需要重启机器 cloudbase-init 才会自动扩展卷把 C 分区后面的空白空间加到 C 分区,并且需要 C 分区和空白空间之间无其他分区干扰。如果 C 分区和空白空间之间无其他分区、且不想重启,或者有第三方安全软件拦截 cloudbase-init 使之不能完成 extend volume,您需要手动执行如下 powershell 命令。
$DiskOps="@
select disk 0
select volume c
extend
exit
@"
$DiskOps | diskpart.exe | Out-Null
否,则需根据目标云服务的操作系统类型,手动扩文件系统及分区。您需要执行 扩展分区及文件系统(Windows),将扩容部分的容量划分至已有分区内或将扩容部分的容量格式化为新的独立分区。