通过Web界面在区域之间移动Amazon EC2 AMI?

时间:2011-03-23 07:22:17

标签: amazon-s3 amazon-ec2 ami

在地区之间移动和自定义AMI图像的简单方法是什么? (tokyo - > singapore)

我知道你可以搞砸API和S3来完成它,但有没有更简单的方法呢?

11 个答案:

答案 0 :(得分:91)

截至2012年12月,亚马逊现在支持通过UI工具(亚马逊管理控制台)将AMI迁移到其他地区。查看他们的文档here

所以,我是如何做到的......

  1. 从AMI中找出Snapshot-ID及其附加方式(例如/ dev / sda1)
  2. 选择快照,单击“复制”,设置目标区域并制作副本(需要一段时间!)
  3. 选择新快照,点击“创建图片
  4. 架构 :(选择32位或64位)

    名称/说明 :(给它一个)

    内核ID :迁移Linux AMI时,如果选择“默认”,则可能会失败。对我来说有用的是去亚马逊内核列表here找到亚马逊支持的内核,然后在创建图像时指定它。

    根设备名称:/ dev / sda1

    点击“是,创建

    4.从新AMI中启动一个实例并测试您是否可以连接。

答案 1 :(得分:7)

你可以使用Eric的帖子来做到这一点: http://alestic.com/2010/10/ec2-ami-copy

答案 2 :(得分:7)

以下假设您的AWS控制台实用程序安装在/opt/aws/bin/JAVA_HOME=/usr中,并且您正在运行i386架构,否则将替换为x86_64。

1)运行实时快照,您认为您的图像可以容纳1.5GB并且您可以将其保留在/ mnt中(检查正在运行df

/opt/aws/bin/ec2-bundle-vol -d /mnt -k /home/ec2-user/.ec2/pk-XXX.pem -c /home/ec2-user/.ec2/cert-XXX.pem -u 123456789 -r i386 -s 1500

2)上传到当前区域的S3存储桶

/opt/aws/bin/ec2-upload-bundle -b S3_BUCKET -m /mnt/image.manifest.xml -a abcxyz -s SUPERSECRET

3)将图像传输到EU S3存储桶

/opt/aws/bin/ec2-migrate-image -K /home/ec2-user/.ec2/pk-XXX.pem -C /home/ec2-user/.ec2/cert-XXX.pem -o abcxyz -w SUPERSECRET --bucket S3_BUCKET_US --destination-bucket S3_BUCKET_EU --manifest image.manifest.xml --location EU

4)注册您的AMI,以便您可以启动爱尔兰的实例

/opt/aws/bin/ec2-register –K /home/ec2-user/.ec2/pk-XXX.pem –C /home/ec2-user/.ec2/cert-XXX.pem http://s3.amazonaws.com:80/S3_BUCKET/image.manifest.xml --region eu-west-1 -name DEVICENAME -a i386 --kernel aki-xxx

答案 3 :(得分:6)

答案 4 :(得分:4)

我认为ec2-bundle-vol和ec2-migrate-image已经过时了,顺便说一句,你也可以看看Lincoln D. Stein的这个Perl脚本: http://search.cpan.org/~lds/VM-EC2/bin/migrate-ebs-image.pl

用法:

  

$ migrate-ebs-image.pl - from us-east-1 --to ap-southeast-1 ami-123456

答案 5 :(得分:4)

亚马逊刚刚在this blog post宣布支持此功能。请注意,来自dmohr的答案涉及复制EBS,而不是AMI。

如果博客文章不可用,请引用相关部分:

  

要使用AMI Copy,只需从中选择要复制的AMI即可   在AWS管理控制台中,选择目标区域,然后启动   复制。也可以通过EC2命令行访问AMI Copy   接口或EC2 API,如EC2 User’s Guide中所述。一旦   复制完成后,新的AMI可用于启动新的EC2实例   在目的地区域。

答案 6 :(得分:3)

AWS现在支持通过UI / CLI / API将EBS快照复制到另一个区域。您可以复制快照,然后从中创建AMI。直接AMI副本即将发布 - 来自AWS:

  

“我们还计划推出亚马逊机器映像(AMI)副本作为后续行动   到这个功能,这将使您能够复制公共和   跨地区定制的AMI。

http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-copy-snapshot.html?ref_=pe_2170_27415460

答案 7 :(得分:1)

Ylastic允许您在区域之间移动EBS支持的linux映像。

每月25美元或50美元,但看起来你可以评估一周。

答案 8 :(得分:1)

我刚刚使用CloudyScripts上的脚本做了这件事,工作非常出色:https://cloudyscripts.com/tool/show/5(并且它是免费的)。

答案 9 :(得分:1)

2017 开始,它非常简单..只需按照屏幕截图:

enter image description here

enter image description here

enter image description here

enter image description here

答案 10 :(得分:0)

我会将Scalr添加到您可以使用的工具列表中(免责声明:我在那里工作)。在Scalr中,您可以创建自己的AMI(我们称之为角色)。一旦您的角色准备就绪,您只需选择要部署它的位置(因此在任何区域)。

Scalr是在Apache 2许可下发布的开源软件:您可以下载并自行安装。否则,它也可以通过托管版本获得,包括支持。 Scalr的替代品包括RightScale和enStratus。