某公司在 AWS 云平台上拥有多个 Amazon Linux EC2实例,开发团队利用其中的一些实例进行数据库开发测试工作。运维团队收到监控报警,提示这些 Linux EC2 实例的非根分区容量不足,将会严重影响这些实例的正常运行。运维团队需要扩充这些 Linux EC2 实例的非根分区的容量。
本次采用AWS Console界面完成作业。
注意:根据项目的具体情况,可以采用不同的实施方法。比如使用命令行(CLI)部署、代码部署 (CloudFomation、Terraform等)、以及其它开发语言(SDK)完成作业。
步骤一:为非根分区创建快照
1. 在 EC2 控制台的导航窗格中,选择 Snapshots(快照)、Create snapshot(创建快照)。
2. 对于资源类型,选择卷。对于 Volume ID(卷 ID),选择需要从其创建快照的卷。
3. (可选)为快照分配自定义标签,在标签部分中选择添加标签,然后输入键值对。
4. 选择创建快照。
步骤二:修改非根分区的 EBS 容量
1. 在导航窗格中,选择 Volumes。
2. 选择要修改的卷,然后选择 Actions(操作)、Modify Volume(修改卷)。
3. 修改Volume type(卷类型)、为 Volume(卷)的大小、IOPS、Throughput(吞吐量)输入新的值。
4. 完成更改卷设置后,选择修改。当系统提示确认时,选择 Modify(修改)。
步骤三:在 Linux 系统中扩充非根分区的容量
1. 连接到 Linux 实例
ssh -i /path/key-pair-name.pem instance-user-name@instance-public-dns-name
2. 检查卷已经存在文件系统检查卷已经存在文件系统
sudo lsblk
3. 扩展分区
Nitro instance 示例(假定扩展 nvme0n1 的第 1 个分区)
sudo growpart /dev/nvme0n1 1
Xen instance 示例(假定扩展 xvda 的第 1 个分区)
sudo growpart /dev/xvda 1
4. 查看当前的文件系统
df -hT
5. 扩展文件系统
XFS 文件系统示例(假定要扩展挂载在 / 上的文件系统)
sudo xfs_growfs -d /
Ext4 文件系统示例
sudo resize2fs /dev/nvme0n1p1
sudo resize2fs /dev/xvda1
查看扩充后的文件系统的大小等属性
[ec2-user ~]$ df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/xvda1 ext4 8.0G 1.9G 6.2G 24% / /dev/xvdf1 xfs 24.0G 45M 8.0G 1% /data