【日常笔记】阿里云ECS - 云盘不停机扩容

一、需求

二、场景

三、注意事项

四、实战

4.1 官网教程 点击进入

五、实操

Stage 1:在线扩容(一步步点击即可)

Stage 2:查看待扩容云盘 + 分区信息

【说明】

> 磁盘:Disk

> 分区:Device 

> 云盘类型:Disklabel type:dos

> 计算待扩容分区

Stage 3:扩容分区

 > CHANGED表示分区扩容成功

Stage 4:扩容文件系统 (没做记录,这步引用官方教程)

4-1 运行以下命令,获取需要扩容的文件系统的类型和挂载目录。

4-2 扩容文件系统。

4-3 验证


一、需求

        公司服务器数据盘不够需要扩容(不停机)

二、场景

  • 服务器:阿里云ecs

  • 系统:Ubuntu 16.04  

  • 数据盘:500G (安装docker,微服务,redis,mongo,mysql,nginx)

  • 系统盘:100G

三、注意事项

  • 云盘只能扩容,不能缩小容量

  • 扩容前请做好备份,防止操作失误导致数据丢失,方法:创建快照

  • MBR分区类型云盘扩容后容量大于2 TiB,需先转换分区为GPT分区这里注意:转换分区是需要格式化所有数据,所以务必做好备份

四、实战

4.1 官网教程 点击进入

五、实操

Stage 1:在线扩容(一步步点击即可

Stage 2:查看待扩容云盘 + 分区信息

sudo fdisk -lu

【说明】

> 磁盘Disk
  • Disk /dev/vda(系统盘) 、Disk /dev/vdb (数据盘) :表示有两块盘

> 分区:Device 

  • Device  :表示分区名称,图中每个盘下各一个分区。如 /dev/vda1

  •  /dev/vda1数字1表示分区编号

> 云盘类型:Disklabel type:dos
  • dos表示MBR分区(本示例

  • gpt表示GPT分区

> 计算待扩容分区
  • Disk /dev/vda:100GB表示系统盘大小100GB

  • /dev/vda1  ...   100G :表示系统盘1号分区大小100G = 系统盘,所以不需要扩容 

  • Disk /dev/vdb:1.6TiB表示数据盘大小1.6TiB

  • /dev/vdb1  ...   500G :表示数据盘1号分区大小500G < 数据盘,所以需要扩容 

Stage 3:扩容分区

本示例为:Disklabel type:dos - MBR分区

sudo apt-get update
type growpart || sudo apt-get install -y cloud-guest-utils
sudo LC_ALL=en_US.UTF-8 growpart /dev/vdb 1

 > CHANGED表示分区扩容成功

Stage 4:扩容文件系统 (没做记录,这步引用官方教程

4-1 运行以下命令,获取需要扩容的文件系统的类型和挂载目录。
df -Th

Type值为文件系统类型,Mounted on值为分区的挂载目录。如下图表示/dev/vdb1分区的文件系统类型为ext4,挂载目录为/mnt

image.png

如果Filesystem取值后缀不带数字(例如/dev/vdc),则为裸设备。

4-2 扩容文件系统。

扩容命令因文件系统类型而异,请您根据上一步中查询到的文件系统类型选择以下命令。

说明

云盘和文件系统正在被使用的状态下,采用resize2fs等工具在线扩容文件系统,有可能会触发文件系统数据问题,该问题与镜像内核版本、resize2fs工具版本相关,与云盘扩容本身无关。建议您为云盘创建快照,做好数据备份。具体操作,请参见创建一个云盘快照

ext*(例如ext2、ext3、ext4)文件系统

  • 以扩容云盘分区/dev/vdb1ext*文件系统为例,则运行如下命令:

    sudo resize2fs /dev/vdb1

    说明:如果您扩容的是系统盘,命令中的/dev/vdb1需要替换为/dev/vda1

  • 以扩容裸设备/dev/vdcext*文件系统为例,则运行如下命令:

    sudo resize2fs /dev/vdc
4-3 验证
df -Th

当查询结果中的文件系统容量和控制台容量一致时,表示扩容成功。

如下图所示,分区/dev/vdb1文件系统容量(59 GiB)和云盘容量(60 GiB)基本一致(因为文件系统本身会占用部分存储空间),表示扩容完成。

image.png

扩容完成后,您需要根据实际情况检查云盘数据是否正常。

  • 如果扩容成功,ECS实例中的业务程序能够正常运行,则完成操作。

  • 如果扩容失败,您可以通过备份的快照回滚数据。具体操作,请参见使用快照回滚云盘

posted @ 2024-01-19 14:40  随风落木  阅读(6)  评论(0编辑  收藏  举报  来源