关于 AWS EC2 扩容的问题,很简单。
直接去 控制台面板 选择“卷”,
然后选择你要修改的数据卷,
直接修改 容量,只能增加,不能减少。
增加容量后, 不会立即生效,生效方法:
一、可以通过重启实例来生效
增加的时候,最好把实例关闭(这是官网文档里说的),否则不会生效。
或者你修改完了以后,重启实例。
修改的过程需要几分钟的时间
二、可以通过 xshell 连接服务器,扩展Linux 文件系统 (参考链接:https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/recognize-expanded-volume-linux.html)
扩展 Linux 文件系统
-
使用 SSH 客户端登录到您的 Linux 实例。有关如何连接到 Linux 实例的更多信息,请参阅使用 SSH 连接到 Linux 实例。
-
使用 df -h 命令可报告文件系统上的现有磁盘空间使用率。在此示例中,
/dev/xvda1
设备已扩展为 35 GiB,但操作系统仍只能看到原来的 8 GiB ext4 文件系统。与此类似,/dev/xvdf
设备已扩展为 35 GiB,但操作系统仍只能看到原来的 1 GiB XFS 文件系统。[ec2-user ~]$
df -h
Filesystem Size Used Avail Use% Mounted on /dev/xvda1 8.0G 943M 6.9G 12% / tmpfs 1.9G 0 1.9G 0% /dev/shm /dev/xvdf 1014M 33M 982M 4% /mnt
-
使用 growpart 展开修改后的分区 (请注意将设备名称与分区名称分隔开的不寻常语法):
$
sudo growpart
/dev/xvdf 1
CHANGED: disk=/dev/xvdf partition=1: start=4096 old: size=16773086,end=16777182 new: size=73396190,end=73400286
通过查看 lsblk 可以确认分区
/dev/xvdf1
现已填充卷/dev/xvdf
上的可用空间:[ec2-user ~]$
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT ... xvdf 202:80 0 35G 0 disk └─xvdf1 202:81 0 35G 0 part
-
可使用特定于文件系统的命令将每个文件系统调整为新的卷容量。
(注意:如果您不确定所使用的文件系统,可以使用 file -s 命令列出设备的文件系统数据。以下示例演示一个 Linux ext4 文件系统和一个 SGI XFS 文件系统。)
[ec2-user ~]$
sudo file -s /dev/xvd*
/dev/xvda1: Linux rev 1.0 ext4 filesystem data ... /dev/xvdf: SGI XFS filesystem data ...
a、对于 Linux ext2、ext3 或 ext4 文件系统,请使用以下命令并替换要扩展的设备名称:
[ec2-user ~]$
sudo resize2fs /dev/xvdf1
resize2fs 1.42.3 (14-May-2012)
old_desc_blocks = 1, new_desc_blocks = 3
The filesystem on /dev/xvdf1 is now 9174523 blocks long.
b、对于 XFS 文件系统,请首先安装 XFS 用户空间工具:
[ec2-user ~]$
sudo yum install xfsprogs
然后,使用以下命令,替换文件系统的装载点 (必须装载 XFS 文件系统才能调整其大小):
[ec2-user ~]$
sudo xfs_growfs -d /mnt
meta-data=/dev/xvdf isize=256 agcount=4, agsize=65536 blks
= sectsz=512 attr=2
data = bsize=4096 blocks=262144, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 262144 to 26214400
注意
如果您收到 xfsctl failed: Cannot allocate memory (xfsctl 失败: 无法分配内存)
错误,则可能需要更新实例上的 Linux 内核。有关更多信息,请参阅您的特定操作系统文档。
如果您收到 The filesystem is already
错误,请参阅扩展 Linux 分区。nnnnnnn
blocks long. Nothing to do!
-
使用 df -h 命令报告现有文件系统磁盘空间使用率,在本示例中,在 ext4 文件系统上显示了 70 GiB,在 XFS 文件系统上显示了 100 GiB:
#
df -h
Filesystem Size Used Avail Use% Mounted on /dev/xvda1 70G 951M 69G 2% / tmpfs 1.9G 0 1.9G 0% /dev/shm /dev/xvdf 100G 45M 100G 1% /mnt
-
提示
如果您的卷中增加的可用空间在系统中仍不可见,请尝试重新初始化卷,具体说明请参阅初始化 Amazon EBS 卷。
扩展 Linux 文件系统