如何在不重新引导的情况下扩展EC2实例EBS引导磁盘

您可以轻松地增加AWS实例(EC2)根卷的大小,而不会由于停机而导致任何停机或中断。本教程将引导您完成在AWS上扩展EBS引导磁盘的操作,而无需重新启动实例。

前提条件

  • 您的AWS账户中运行的EC2实例。本指南使用Ubuntu 18.04 LTS实例。
  • 根访问EC2或sudo特权

步骤1)更改EBS音量

首先,您需要调整EBS的大小。默认EBS卷为8 GB(用于免费层)。扩展到30GB。

要确定当前块大小,请执行以下命令:

$ lsblk | grep /dev/xvda

从上面的输出中,您可以看到引导分区xvda1是8G。接下来,将该卷扩展到30GB。您可以自由缩放至所需大小。

要扩展卷,请首先登录到您的AWS账户。低于 弹性块存储 在左窗格的部分中,单击 数量

卷弹性存储AWS实例

在下一个窗口中 EBS量 您将连接到EC2实例。要进行更改,请右键单击并选择更改选项。

修改卷AWS实例

弹出窗口显示有关卷的信息,例如卷ID,卷类型和大小。默认情况下,EBS卷的大小为8 GB。要更改此设置,请输入30,如图所示。

更改体积大小AWS实例

然后[[改变按钮在下一个弹出窗口中,将提示您确认您确实要更改驱动器。点击这里”是的单击“”按钮以激活更改。

单击是,修改音量,AWS

请注意,以下更改已成功完成。点击这里”关门单击按钮完成。

修改体积后选择关闭

返回终端。从卷的大小来看,xvda为30G,但引导分区仍为8GB。

lsblk磁盘后容量扩展aws

步骤2)安装cloud-guest-utils套件

要将其扩展到30GB,您需要安装 Cloud Guest实用程序 包装。

运行Ubuntu:

$ sudo apt install cloud-guest-utils

对于RHEL / CentOS:

$ sudo dnf install cloud-utils-growpart

通常,这是为新的EC2实例安装的。

最后, 成长 用于增加启动磁盘大小的命令。为此,请执行以下操作:

$ sudo growpart /dev/xvda 1

growpart命令Linux

最后,调整文件系统的大小并调整其大小以填充扩展空间 resize2fs 实用程序。

$ sudo resize2fs /dev/xvda1

resize2fs-command-linux

此时,您已经扩展了启动磁盘卷。要检查这一点,请使用lsblk命令。

$ lsblk | grep xvda

lsblk-extend-xda1-aws-instance

xvda1分区最终从8GB扩展到30GB。如我们所见,这是一个非常简单的过程。谢谢您的时间。给我们您的反馈。