我有一台服务器,从Canonical运行最近的Ubuntu AMI。EBS引导卷的大小为8GB。我知道我可以通过拍摄快照,创建新卷并在其上扩展分区来调整EBS卷的大小。在机器运行时如何增加卷的大小?如果无法做到这一点,那么在最小的停机时间内增加启动卷大小的首选方法是什么?
我有一台服务器,从Canonical运行最近的Ubuntu AMI。EBS引导卷的大小为8GB。我知道我可以通过拍摄快照,创建新卷并在其上扩展分区来调整EBS卷的大小。在机器运行时如何增加卷的大小?如果无法做到这一点,那么在最小的停机时间内增加启动卷大小的首选方法是什么?
Answers:
不幸的是,在运行Amazon EC2实例时,不可能增加Amazon EBS根设备存储卷的大小-Eric Hammond写了一篇有关调整根磁盘大小的详细(我倾向于说“规范”;)文章。在正在运行的EBS引导EC2实例上:
只要您对EC2实例的停机时间感到满意(几分钟),就可以使用更大的副本来更改根EBS卷,而无需启动新实例。
如果您正确地准备了他描述的步骤(我强烈建议您先使用一个废弃的EC2实例对其进行测试以熟悉该过程),那么您实际上应该只能在几分钟的停机时间内完成该过程。
祝好运!
我们可以使用新的EBS Feature Elastic卷来增加卷的大小,然后发布,我们需要按照以下步骤使用增加的大小,如下所示
假设您的容量为16G,并将其增加到32GB。
$lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 32G 0 disk
└─xvda1 202:1 0 16G 0 part /
要从16GB t0 32GB扩展xvda1,我们需要growpart。growpart可作为cloudutils的一部分使用
sudo apt install cloud-utils
安装cloud-utils后,执行growpart命令
sudo growpart /dev/xvda 1
现在,lsblk将显示
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda 202:0 0 32G 0 disk
└─xvda1 202:1 0 32G 0 part /
但df -h仅显示16GB
将xvda1扩展到32GB的最终命令是
sudo resize2fs /dev/xvda1
如果是XFS文件系统,
sudo xfs_growfs /dev/xvda1
谢谢鸡蛋
sudo xfs_growfs /dev/xvdal
而不是resize2fs
。
这个已有5年历史的问题的最新答案
AWS刚刚宣布了一项名为Elastic Volumes的新EBS功能,该功能使您可以在使用卷时增加卷大小,调整性能或更改卷类型。
您可以在此处的AWS Blog上阅读有关它的更多信息。
aws ec2 modify-volume --region us-west-2 --volume-id vol-0123456789 --size 20
了出来An error occurred (InvalidParameterValue) when calling the ModifyVolume operation: Volume type EBS Magnetic is not supported.
您只需要首先创建其快照,然后从该快照中创建另一个卷,一旦准备好新卷,就可以将旧卷与实例分离并附加新卷。确保在开始此过程之前停止实例,并在完成后重新启动实例。
请参阅http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-expand-volume.html