Any easy way to move and custom AMI image between regions? (tokyo -> singapore)
I know you can mess up with API and S3 to get it done, but there there any easier way to do it?
Any easy way to move and custom AMI image between regions? (tokyo -> singapore)
I know you can mess up with API and S3 to get it done, but there there any easier way to do it?
2012 年 12 月の時点で、Amazon は UI ツール (Amazon Management Console) を介した AMI の別のリージョンへの移行をサポートするようになりました。こちらのドキュメントを参照してください
だから、私がそれをやった方法は..
アーキテクチャ: (32 ビットまたは 64 ビットを選択)
名前/説明: (1 つ付けてください)
カーネル ID : Linux AMI を移行する場合、「デフォルト」を選択すると失敗する場合があります。私にとってうまくいったのは、Amazonカーネルのリストにアクセスして、 Amazonがサポートする カーネルを見つけ、イメージを作成するときにそれを指定することでした)
ルートデバイス名: /dev/sda1
「はい、作成します」を クリック
4. 新しい AMI からインスタンスを起動し、接続できることをテストします。
エリックの投稿を使用してそれを行うことができます: http://alestic.com/2010/10/ec2-ami-copy
以下は、AWS コンソール ユーティリティが にインストールされており、i386 アーキテクチャを実行していることを前提として/opt/aws/bin/
い JAVA_HOME=/usr
ます。それ以外の場合は、x86_64 に置き換えてください。
1) ライブ スナップショットを実行します。イメージが 1.5 GB に収まり、/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によって古くなったと思います。ところで、リンカーンD.スタインによるこのPerlスクリプトも見ることができます: http ://search.cpan.org/~lds/VM -EC2 / bin / migrate-ebs-image.pl
使用法:
$ merge-ebs-image.pl --from us-east-1-to ap-southeast-1 ami-123456
Amazon は、このブログ投稿でこの機能のサポートを発表しました。dmohr からの回答は、AMI ではなく EBS のコピーに関するものであることに注意してください。
ブログ投稿が利用できない場合は、関連する部分を引用してください。
AMI コピーを使用するには、AWS マネジメント コンソール内からコピーする AMI を選択し、コピー先リージョンを選択して、コピーを開始します。EC2 User's Guideで説明されているように、EC2 Command Line Interface または EC2 API を介して AMI Copy にアクセスすることもできます。コピーが完了すると、新しい AMI を使用して、宛先リージョンで新しい EC2 インスタンスを起動できます。
AWS は、UI/CLI/API を介した別のリージョンへの EBS スナップショットのコピーをサポートするようになりました。スナップショットをコピーして、そこから AMI を作成できます。ダイレクト AMI コピーが来ています - AWS から:
「また、この機能のフォローアップとして Amazon Machine Image (AMI) Copy を開始する予定です。これにより、リージョン間でパブリック AMI とカスタム作成 AMI の両方をコピーできるようになります。
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-copy-snapshot.html?ref_=pe_2170_27415460
CloudyScripts のスクリプトを使用してこれを実行したところ、うまく機能しました: https://cloudyscripts.com/tool/show/5 (しかも無料です)。
Ylasticを使用すると、EBS でサポートされている Linux イメージをリージョン間で移動できます。
月額 25 ドルまたは 50 ドルですが、1 週間評価できるようです。
使用できるツールのリストにScalrを追加します (免責事項: 私はそこで働いています)。Scalr 内で、独自の AMI を作成できます (ロールと呼びます)。ロールの準備ができたら、それをデプロイする場所を選択するだけです (つまり、任意のリージョン)。
Scalrは、Apache 2 ライセンスの下でリリースされたオープンソースです。ダウンロードして自分でインストールできます。それ以外の場合は、サポートを含むホストされたバージョンからも利用できます。Scalr の代替には、RightScale と enStratus が含まれます。