扩大EC2实例就像呼吸一样容易(例如,创建AMI,从中启动实例,然后更改存储大小)。
但是减少它变得更加困难。我想减小Amazon Web Services(AWS)EC2实例弹性块存储(EBS)根卷的大小。网上有几个旧的高级过程。我发现的更详细的版本是关于StackOverflow问题的一年之久的答案:如何减少ebs卷容量,步骤具有相当高的水平:
创建一个所需大小的新EBS卷(例如/ dev / xvdg)
启动实例,并将两个EBS卷都附加到该实例
检查(原始根卷的)文件系统:(例如)e2fsck -f / dev / xvda1
最大收缩原始根卷:(例如ext2 / 3/4)resize2fs -M -p / dev / xvda1
用dd复制数据:
选择块大小(我喜欢16MB)
计算块数(使用resize2fs输出中的块数):块* 4 /(chunk_size_in_mb * 1024)-为安全起见
复制数据:(例如)dd if = / dev / xvda1 ibs = 16M of = / dev / xvdg obs = 16M count = 80
在新的(较小的)EBS卷上调整文件系统的大小:(例如)resize2fs -p / dev / xvdg
检查(原始根卷的)文件系统:(例如)e2fsck -f / dev / xvdg
分离新的EBS根卷,并将其附加到原始实例
我无法找到详细的分步“操作方法”解决方案。
我的EBS根卷已附加到HVM Ubuntu实例。
任何帮助将非常感激。