在区域之间移动和自定义 AMI 映像的任何简单方法?(东京 -> 新加坡)
我知道你可以用 API 和 S3 来完成它,但是有没有更简单的方法呢?
在区域之间移动和自定义 AMI 映像的任何简单方法?(东京 -> 新加坡)
我知道你可以用 API 和 S3 来完成它,但是有没有更简单的方法呢?
截至 2012 年 12 月,Amazon 现在支持通过 UI 工具(Amazon 管理控制台)将 AMI 迁移到另一个区域。在此处查看他们的文档
所以,我是怎么做到的。。
架构:(选择 32 或 64 位)
名称/描述:(给它一个)
内核 ID:迁移 Linux AMI 时,如果您选择“默认”,它可能会失败。对我有用的是转到此处的 Amazon Kernels 列表 以查找 Amazon 支持的内核,然后在创建映像时指定它)
根设备名称:/dev/sda1
点击“是,创建”
4.从新的 AMI 启动一个实例并测试您是否可以连接。
您可以使用 Eric 的帖子: http ://alestic.com/2010/10/ec2-ami-copy
以下假设您的 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
有用于此的 API 工具。http://docs.amazonwebservices.com/AWSEC2/latest/CommandLineReference/ApiReference-cmd-MigrateImage.html
我认为现在 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
亚马逊刚刚在这篇博文中宣布支持此功能。请注意,dmohr 的回答与复制 EBS 相关,而不是 AMI。
如果博客文章不可用,请引用相关部分:
要使用 AMI Copy,只需从 AWS 管理控制台中选择要复制的 AMI,选择目标区域,然后开始复制。AMI Copy 也可以通过 EC2 命令行界面或 EC2 API 访问,如EC2 用户指南中所述。复制完成后,新的 AMI 可用于在目标区域启动新的 EC2 实例。
AWS 现在支持通过 UI/CLI/API 将 EBS 快照复制到另一个区域。您可以复制快照,然后从中创建 AMI。直接 AMI 副本来自 AWS:
“我们还计划推出 Amazon Machine Image (AMI) Copy 作为此功能的后续功能,这将使您能够跨区域复制公共和自定义创建的 AMI。
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-copy-snapshot.html?ref_=pe_2170_27415460
Ylastic允许您在区域之间移动支持 EBS 的 linux 映像。
它每月 25 美元或 50 美元,但看起来你可以评估一周。
我只是使用 CloudyScripts 上的脚本完成了这项工作,效果非常好:https ://cloudyscripts.com/tool/show/5 (而且它是免费的)。