3.2.4.1 扩容云硬盘概述
简介
当云硬盘空间不足时,您可对云硬盘进行扩容。系统盘只能在原盘的基础上扩大其容量,数据盘可在原盘的基础上扩大容量,也可通过新增数据盘并将其挂载至实例使用。
扩容后需要对扩容部分的容量创建新的分区或者重新创建新分区替换磁盘原有分区。
为扩容部分的容量创建新的分区
该场景下,不需要卸载原有的分区,而是在原有分区的基础上新增分区。该操作不会中断业务,对业务影响较小。推荐系统盘或者需要保证业务不中断的磁盘扩容场景使用。如果当前磁盘使用的是MBR格式,则要求扩容后的磁盘容量不超过2TiB,并且磁盘的分区数量还未达到上限。
重新创建分区替换原有分区
如果当前磁盘使用的是MBR分区,且磁盘分区数量已达到上限,无法再增加新的分区。此时需要先卸载已有分区,重新创建新的分区替换原有分区。该操作不会删除原有分区的数据,但操作过程中需预先中断业务,因此会对用户正在运行的业务产生影响。
扩容流程
图3-2扩容流程图

注意事项
支持扩容系统盘和数据盘容量,最小扩容步长为1GiB。
支持扩大容量,不支持缩小容量。
扩容云硬盘后,不支持回滚扩容前创建的快照。
3.2.4.2 扩容云硬盘容量
简介
当云硬盘使用空间不足时,云硬盘服务支持扩容云硬盘容量大小。云硬盘服务支持在线扩容和离线扩容。
在线扩容是对已挂载的“使用中”状态的云硬盘执行扩容操作。
离线扩容是对未挂载的“可用”状态的云硬盘执行扩容操作。
约束限制
至少需扩容1GiB,建议您合理选择扩容容量。
云硬盘不支持缩容。
前提条件
云硬盘状态为“可用”或“使用中”。
云服务器状态为“运行中”或“关机”。
若服务开启了审批流程,待扩容云硬盘的审批流程已全部处理。
操作步骤
(1)登录云硬盘服务控制台。
(2)在左侧导航栏选择“云硬盘”,进入云硬盘实例列表页面。
(3)在目标云硬盘的“操作”列,单击“更多 > 扩容”,进入云硬盘扩容配置页面。
(4)根据页面提示和参数说明,依次确认当前配置,以及设置扩容。
a.确认当前配置信息。

b.设置扩容容量。

(5)配置完成后,单击“下一步”,进入配置确认页面。
(6)确认配置无误后,单击“确定变更”。根据云硬盘服务是否开启审批流程,分别返回如下信息:
关闭审批流程:返回云硬盘管理页面,并立即下发扩容云硬盘任务。
开启审批流程:弹出审批确认窗口,可选择返回列表页或查看申请单。待管理员通过审批后,即可下发扩容云硬盘任务。
后续管理
待云硬盘状态从“扩容中”切换为“可用”或“使用中”,即扩容云硬盘容量完成。
扩容云硬盘后,不支持回滚扩容前创建的快照。
3.2.4.3 扩展分区和文件系统(Linux-fdisk,原未分区-新增分区)
简介
在管理控制台扩容云硬盘容量后,需要登录云服务器进行手动扩展云硬盘分区和文件系统。
在Linux操作系统中,根据扩容前操作系统是否分区,可执行不同操作:
若扩容前未分区,通过更新文件系统容量,即可生效扩容容量。
若扩容前已分区,需将扩容容量分区划分给已有分区或分配给新分区,并更新文件系统容量,才可生效扩容容量。
本小节主要介绍在云硬盘扩容前未分区场景,如何更新文件系统容量。
前提条件
已挂载云硬盘至云服务器。
已扩容云硬盘容量。
已获取云服务器登录地址、账号和密码。
操作步骤
以新建分区名为vdc、扩容前容量为20GiB、扩容后容量为30GiB为例。
(1)登录云服务器。
(2)执行fdisk -l命令,获取云硬盘的总容量。
(3)执行unmount /dev/vdc命令,将云硬盘文件系统从挂载点卸载。
(4)根据实际文件系统类型,执行以下命令,指定分区并并扩展分区文件系统的容量。
ext*文件系统:
e2fsck -f /dev/vdc
resize2fs /dev/vdc
xfs文件系统:
e2fsck -f /dev/vdc
xfs_growfs /dev/vdc
(5)执行mount /dev/vdc /data命令,将文件系统重新挂载至原挂载点。
(6)执行df -h命令,查看文件系统容量信息,确认扩容后的云硬盘容量是否生效。
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 20G 1.8G 18G 10% /
devtemfs 1.8G 0 1.8G 0% /dev
temfs 1.8G 0 1.8G 0% /dev/shm
temfs 1.8G 468K 1.8G 1% /run
temfs 1.8G 0 1.8G 0% /sys/fs/cgroup
temfs 365M 0 365M 0% /run/user/0
/dev/vdc 30G 44M 28G 1% /data
3.2.4.4 扩展分区和文件系统(Linux-fdisk,原已分区-新增分区)
简介
在管理控制台扩容云硬盘容量后,需要登录云服务器进行手动扩展云硬盘分区和文件系统。
在Linux操作系统中,根据扩容前操作系统是否分区,可执行不同操作:
若扩容前未分区,通过更新文件系统容量,即可生效扩容容量。
若扩容前已分区,需将扩容容量分区划分给已有分区或分配给新分区,并更新文件系统容量,才可生效扩容容量。
本小节主要介绍在云硬盘扩容前已分区、且需在新分区生效容量场景下,如何新增分区并新建文件系统。
前提条件
已挂载云硬盘至云服务器。
已扩容云硬盘容量。
已获取云服务器登录地址、账号和密码。
1.新建分区和文件系统
以扩容前分区为vdd1和容量为20GiB、扩容后新增分区名为vde2和容量为10GiB为例。
(1)登录云服务器。
(2)执行fdisk -l命令,获取云硬盘的总容量。
(3)执行fdisk -u /dev/vde命令,新建分区。
(4)根据所需文件系统类型,执行mkfs -t <文件系统> <磁盘分区>命令创建基于新分区的文件系统。
新建ext*文件系统,以ext4为例:
mkfs -t ext4 /dev/vde2
新建xfs文件系统:
mkfs -t xfs /dev/vde2
以新建ext4文件系统为例:
$ mkfs -t ext4 /dev/vde2
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
655360 inodes, 2621440 blocks
131072 blocks (5.00%) reserved for the super user
First data block=0
Maxinum filesystem blocks=2151677952
88 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 819200, 884736, 1605632
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
(5)执行mkdir -p /test命令,新建挂载点。以新建挂载点test为例。
(6)执行mount /dev/vde2 /test命令,将新创建文件系统挂载至新创建的挂载点。
(7)执行df -h命令,查看分区容量信息,确认容量是否在新建分区上生效。
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/Vda1 20G 1.8G 17G 10% /
devtemfs 1.8G 0 1.8G 0% /dev
temfs 1.8G 0 1.8G 0% /dev/shm
temfs 1.8G 476K 1.8G 1% /run
temfs 1.8G 0 1.8G 0% /sys/fs/cgroup
temfs 365M 0 365M 0% /run/user/0
/dev/vdd1 20G 45M 19G 1% /data
/dev/vde2 9.8G 37M 9.2G 1% /test
2.设置开机自动挂载分区
(1)确认挂载方式并获取对应信息。
可选择通过文件系统的 UUID(universally unique identifier)或设备名称自动挂载云硬盘。
执行blkid <云硬盘设备分区>命令,查看云硬盘分区的UUID。
执行lsblk命令,查看新分区信息。
(2)执行cp /etc/fstab /etc/fstab.bak命令,备份etc/fstab文件。
(3)添加自动挂载信息。
执行echo '<云硬盘分区UUID编号> <挂载点> ext4 defaults 0 0' >> /etc/fstab命令,以云硬盘分区的UUID自动挂载。
执行echo '<云硬盘设备分区> <挂载点> ext4 defaults 0 0' >> /etc/fstab命令,以云硬盘分区信息自动挂载。
(4)执行cat /etc/fstab命令,查看自动挂载配置。
(5)执行mount -a命令,检查/etc/fstab文件是否配置成功。
若运行通过则/etc/fstab配置成功,文件系统会在操作系统启动时自动挂载。
3.2.4.5 扩展分区和文件系统(Linux-fdisk,原已分区-替换分区)
简介
在管理控制台扩容云硬盘容量后,需要登录云服务器进行手动扩展云硬盘分区和文件系统。
在Linux操作系统中,根据扩容前操作系统是否分区,可执行不同操作:
若扩容前未分区,通过更新文件系统容量,即可生效扩容容量。
若扩容前已分区,需将扩容容量分区划分给已有分区或分配给新分区,并更新文件系统容量,才可生效扩容容量。
本小节主要介绍在硬盘扩容前已分区、且需在原分区生效容量场景下,如何替换已有分区并更新文件系统容量。
前提条件
已挂载云硬盘至云服务器。
已扩容云硬盘容量。
已获取云服务器登录地址、账号和密码。
1.替换分区并更新文件系统
以扩容前分区名为vdb、扩容前容量为40GiB、扩容后容量为50GiB为例。
(1)登录云服务器。
(2)执行umount /dev/vdb1命令,将云硬盘文件系统从挂载点卸载。
(3)执行fdisk -l /dev/vdb命令,查看原有分区并记录原有分区的起始位置。
$ fdisk -l /dev/vdb
Disk /dev/vdb: 42.9GB, 42949672860 bytes, 83886080 sectors
Units = sectors of 1 * 512 = 512 bytes
Sectors size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xc86586f1
Device Boot Start End Blocks Id System
/dev/vdb1 2048 83886079 41942016 83 Linux
(4)执行fdisk -u /dev/vdb命令并输入d,删除原有分区。
$ fdisk -u /dev/vdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): d
Selected partition 1
Partition 1 deleted
(5)执行fdisk -u /dev/vdb命令并输入n,创建新分区,分区起始位置与原分区起始位置保持一致,结束位置可扩展选择。
$ fdisk -u /dev/vdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): n
Partition type:
P primary (0 primary, 0 extended, 4 free)
e extended
Select (delfault p): p
Partition number (1-4, default 1):
First sector (2048-104857599, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G}(2048-104857599, default 104857599):
Using default value 104857599
Partition 1 of type Linux and of size 50GiB is set
(6)根据实际文件系统类型,执行以下命令,指定分区并扩展分区并更新文件系统容量。
ext*文件系统:
e2fsck -f /dev/vdb1
resize2fs /dev/vdb1
xfs文件系统:
e2fsck -f /dev/vdb1
xfs_growfs /dev/vdb
(7)执行mount /dev/vdb1 /data命令,将文件系统重新挂载至原挂载点。
(8)执行df -h命令,查看分区容量信息,确认容量是否在已有分区上生效。
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/Vda1 20G 1.8G 17G 10% /
devtemfs 1.8G 0 1.8G 0% /dev
temfs 1.8G 0 1.8G 0% /dev/shm
temfs 1.8G 440K 1.8G 1% /run
temfs 1.8G 0 1.8G 0% /sys/fs/cgroup
temfs 365M 0 365M 0% /run/user/0
/dev/vdb1 50G 52M 47G 1% /data
2.设置开机自动挂载分区
(1)确认挂载方式并获取对应信息。
可选择通过文件系统的 UUID(universally unique identifier)或设备名称自动挂载云硬盘。
执行blkid <云硬盘设备分区>命令,查看云硬盘分区的UUID。
执行lsblk命令,查看新分区信息。
(2)执行cp /etc/fstab /etc/fstab.bak命令,备份etc/fstab文件。
(3)添加自动挂载信息。
执行echo '<云硬盘分区UUID编号> <挂载点> ext4 defaults 0 0' >> /etc/fstab命令,以云硬盘分区的UUID自动挂载。
执行echo '<云硬盘设备分区> <挂载点> ext4 defaults 0 0' >> /etc/fstab命令,以云硬盘分区信息自动挂载。
(4)执行cat /etc/fstab命令,查看自动挂载配置。
(5)执行mount -a命令,检查/etc/fstab文件是否配置成功。
若运行通过则/etc/fstab配置成功,文件系统会在操作系统启动时自动挂载。