この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。
概要
今回では、実際のプロジェクトでよく遭遇するAWSアカウント間で、EC2のAMI を共有する方法をご紹介したいと思います。
また、コピーするときに、ハマってしまった1点エラーを共有いたします。
アカウント間のAMI共有&コピーの操作手順
共有元の操作手順
①、AWSのEC2コンソールを開き、AMIs を選択します。
②、共有したいAMIをAMIリストから選択します。
③、画面上側において、[Actions]ボタンを押下して、プルダウンメニューから「Modify Image Permissions」を押します。
④、[Modify Image Permissions]画面が開きます。下記のような画面に選択と共有したい先のアカウントを入力して、「Add Permissions」ボタンを押下して、保存を押します。
※注意:アカウント間でコピーを許可する場合は、スナップショットに”ボリューム作成”のパーミッション追加をクリック(共有のみは不要)する必要です。
おまけ:
Actionsボタンからイメージ共有以外に、以下の通りに、AMIを右クリックするか、画面したのPermissionsタブでも操作可能です。
共有先の操作手順
①、共有先より、AMIからPrivate Imageを選択することで共有が許可されたAMI が表示されます。共有のみであれば、このAMIを直接に使用してEC2を起動します。
②、コピーする場合は、対象のAMIを選択し、[Actions]ボタンあるいは右クリックして、[Copy AMI]を選択します。
- 下記画面の通りに、、[Destination region]を選択して、[Copy AMI]を押します。
- もし、共有元が別リージョン(例:Seoul)であった場合、共有先アカウントのSeoul RegionにAMIが表示されます。改めて、使用するリージョン(例:Seoul)にコピーを行います。
- これで、AMI のコピーが完了です。
ハマるポイント
- 共有元の手順で、スナップショットに”ボリューム作成”のパーミッション追加をクリックしていなければ、下記の図の通りにエラーが表示されます。実は、このチェックボックスは共有した後から付けても有効になりません。アカウント番号にアクセス許可を追加する時に合わせてチェックすることで、スナップショットにも”ボリューム作成”のパーミッションが追加されます。チェックし忘れた場合は、一旦アカウント番号のアクセス許可を削除し、やり直してみてください。