別のAWSアカウントで作成されたEC2インスタンスを、自分のアカウントにコピーする機会があったので、手順を残しておきます。
コピー元の作業
コピー元のAWSアカウントで、AWSマネジメントコンソールにログインします。
イメージの作成
コピーしたいインスタンスを選択し、アクションから「イメージを作成」をクリックします。
任意のイメージ名を入力します。
このとき、サーバを止めたくなければ「再起動しない」にチェックを入れましょう。
「イメージを作成」をクリックします。
イメージの画面で、作成したAMIのステータスが pending から available に変わるまで待ちます。
available になったら、アクションから「イメージパーミッションの変更」をクリックします。
次の通り設定します。
- 「プライベート」にチェック
- コピー先のAWSアカウント番号を入力
- ボタン「アクセス許可の追加」をクリック
- 「パーミッションを作成するときは次の関連付けられた…」にチェック
ボタン「保存」をクリックすると、このイメージはコピー先に共有された状態になります。
コピー先の作業
コピー先のAWSアカウントで、AWSマネジメントコンソールにログインします。
イメージのコピー
イメージの画面で「プライベートイメージ」をクリックします。
コピー元と共有しているイメージにチェックし、アクションから「AMIのコピー」をクリックします。
リージョンを選択し、任意のイメージ名を入力したら、ボタン「AMIのコピー」をクリックします。
確認
コピーされた新しいイメージは、所有者が自分のアカウントになっているはずです。
インスタンス起動
コピーしたイメージからインスタンスを起動します。
コピー元のキーペアを持っている場合、キーペアを新たに作る必要はありません。
無事に起動できればOKです。
コピーに失敗した場合
この手順通りにやってもエラーになることがあります。
AWS Marketplace から取得したAMIをコピーしようとすると、Images from AWS Marketplace cannot be copied to another AWS account.
というエラーになります。
ライセンスを取得しましょう。
サブスクライブ(購入)する製品コードを、イメージの詳細から確認します。
次のURLでMarketplace にアクセスします。********
は製品コードに置き換えて下さい。
https://aws.amazon.com/marketplace/pp?sku=********
「Continue to Subscribe」をクリックします。
「Accept Terms」をクリックすると完了です。