我已经有一个ec2实例在微型实例上运行ubuntu。 硬盘只有7GB。 我正在closures一个旧的服务器,并将其迁移到这个服务器上。 旧服务器有15GB的数据需要传输到ec2实例。 我怎么能a)增加根ebs驱动器的大小或b)(首选的方法)添加另一个ebs驱动器,所以我可以转移的文件,以后如果我需要删除。
亚马逊在文档中详细描述了附加EBS卷的过程
通过控制台:
- 通过以下url打开Amazon EC2控制台: https://console.aws.amazon.com/ec2/ 。
- 在导航窗格中单击卷。
- 控制台显示当前卷的列表。
- select一个卷,然后单击附加卷。
- 附加音量对话框出现。
- 从“实例”列表框中select要将卷附加到的实例(只显示与卷相同的可用区中的实例)。
- 从“设备”列表框中select设备如何暴露给实例。
- 点击附加。
通过命令行:
ec2-attach-volume volume_id -i instance_id -d device
您无法实时调整EBS卷的大小 – 此过程需要创build快照,并从该快照制作新的更大的卷。
调整根EBS卷的大小:
ec2-create-snapshot vol-XXXXXXXX ) ec2-create-volume --availability-zone XX-XXXX-XX --size XX --snapshot snap-XXXXXXXX ) ec2-attach-volume vol-XXXXXXXX -i i-XXXXXXXX -d /dev/sdXX ) e2fsck -f /dev/xvdXX ) resize2fs -p /dev/xvdXX ) tune2fs -l /dev/xvdXX ) ec2-detach-volume vol-XXXXXXXX ) 另外,值得一提的是/dev/sdXX是最近版本的Linux中的/dev/sdXX的符号链接。 即使您告诉EC2连接到/dev/sdXX需要在/dev/xvdXX上运行许多命令。
另外请记住,您必须将您的私钥和证书传递给几乎所有的EC2 API命令,或者您可以设置( export ) EC2_PRIVATE_KEY和EC2_CERT环境variables,以便您不必将这些值传递给每个命令。
根卷将自动挂载(只要您将它作为与以前的根卷相同的设备)。 其他,您附加的附加EBS卷只能作为设备使用 – 它们不会自动安装。 你可以使用cat /proc/partitions得到附加的“卷”列表(按照这个答案 )。 要挂载你的卷,只需运行mount /dev/xvdXX /path/to/mountpoint 。
增加根EBS驱动器的大小相当复杂,涉及相当多的工作。
更简单的方法是添加所需大小,挂载和符号链接的另一个EBS卷。
最简单的方法是在Web界面中创build所需大小的另一个EBS卷,然后使用旧数据将其附加到正在运行的实例。 然后,您可以格式化新的驱动器,装载它并复制文件。