Amazon EC2动态扩展挂载磁盘(Volume)空间

in #cn4 years ago

我有一个Amazon的EC2实例最近磁盘空间告急,眼看着就要满员了,这可让我急坏了。不过想着Amazon这么先进的云设施,一定会支持动态扩容吧,进面板看了一下,还真就支持,那就来实际操作一下喽。


(图源 :pixabay)

准备工作

在这之前我们先在面板里看看我挂载的云盘(Volume)类型和大小:

image.png

除了在面板里查看外,在系统中我用sudo fdisk -l也看了一下

image.png

没啥其它额外的工作要做,不过我还是顺便升级了一下系统软件😀。

调整卷空间

接下来我们就可以在面板中直接调整卷大小了,其实很是简单粗暴。

直接选中卷,然后在菜单中选择Modify Volume

image.png

点进去后会出现类似如下界面:

image.png

直接指定新的空间大小(IOPS也会随之动态增加)

image.png

选择Modify按钮,会出现如下提示:

image.png

其中最主要的信息莫过于调整卷大小后,还要扩展操作系统的文件系统:

You may need to extend the OS file system on the volume to use any newly-allocated space.

按下Yes按钮确认,瞬间调整成功。

image.png

拓展分区大小

调整成功后,我们可以在面板中检查卷大小:

image.png

同样可以在操作系统中检查,不过你会发现虽然卷(磁盘)大小改变了,但是分区大小并没有改变

image.png

要让新增的空间可以被使用,我们首先需要扩展分区大小,确定分区后,执行如下命令即可:

sudo growpart /dev/nvme0n1 1

其中/dev/nvme0n1为设备(磁盘/卷),1为分区编号(第一个分区),执行命令后会出现如下提示:

CHANGED: partition=1 start=2048 old: size=2516580319 end=2516582367 new: size=3145725919,end=3145727967

现在再来检查分区空间,发现分区空间已经成功变大了:

image.png

调整文件系统

使用如下命令查看我们的文件系统:

df -lh

我们会发现尽管我们扩展的磁盘/卷空间,调整了分区大小,但是对应的文件系统显示的空间还是原来那么大。

为了让文件系统也跟上变化,我们需要执行如下命令:

sudo resize2fs /dev/nvme0n1p1

执行上述命令后会出现类似如下提示,代表我们调整成功:

image.png

再使用df -lh查看文件系统,就会发现对应的空间已经调整啦,至此扩容成功!

总结

尽管又是截图又是文字写了一大篇,不过其实概况起来就是如下几个步骤:

  • 面板中调整对应Volume的空间大小
  • 系统中拓展分区大小(growpart)
  • 系统中调整文件系统(resize2fs)

不过简单归简单,操作的时候一定要谨慎,尤其是重要数据的情况,一旦不小心搞崩溃,那就欲哭无泪了。

相关链接

Coin Marketplace

STEEM 0.20
TRX 0.13
JST 0.029
BTC 62843.32
ETH 3475.97
USDT 1.00
SBD 2.53