AWSに登録してから1年が経ちました。現在、使っている主なサービスは、EC2(t2.micro)、EBS、Route53、S3です。ドメイン取得で使っているRoute53以外は、AWSの無料利用枠に適用されるサービスしか使っていません。
AWSの無料利用枠は他にも色々なサービスが使えるため、正直、まだ無料利用枠でAWSを使いたいと思いました。そこで、再度無料利用枠の恩恵を受けるため、新しくAWSアカウントを登録し、各サービスを移行することにしました。
本記事では、EC2インスタンスの移行方法を紹介します。AMIを作成、共有することにより、移行することができますので、移行方法は難しくないです。それでは、EC2インスタンスを移行してみましょう。
目次
新規アカウントのIDを確認
EC2インスタンスの移行を行う前に、新規アカウントを作成し、IDを確認しておきましょう。AMIを共有する際に、新規アカウントのIDが必要になります。
新規アカウントへログインし、「アカウント名」→「アカウント」の順にクリックします。
アカウント設定内の「アカウントID」をメモします。これで、準備は完了です。
EC2インスタンス移行方法
それでは、EC2インスタンスを移行していきます。AMI(AWSマシンイメージ)を共有することで、EC2インスタンスの移行ができます。以下の順番で作業を行っていきます。
- 既存アカウントでAMIを作成
- 新規アカウントにAMIを共有
- 新規アカウントでAMIからインスタンスを作成
既存アカウントでAMIを作成
まず、既存アカウントでAMIを作成しますので、既存アカウントでログインした後、EC2サービスを開きます。その後、移行したいEC2インスタンスを選択し、「アクション」→「イメージ」→「イメージの作成」の順にクリックします。
イメージ名やイメージの説明を適宜入力し、「再起動しない」にチェックを入れ、「イメージの作成」をクリックします。イメージ内のAMIへ移動し、AMIが作成されていることを確認しましょう。
新規アカウントにAMIを共有
続いて、作成したAMIを共有するため、AMIのパーミッションを変更します。作成したAMIを選択し、「アクション」→「イメージパーミッションの変更」をクリックします。
AWSアカウント番号に新規アカウントのIDを入力し、「アクセス許可許可の追加」をクリックします。その後、「保存」をクリックしましょう。
なお、「パーミッションを作成するときは~」のチェックは、スナップショットのボリューム作成権限を共有しますが、AMIを共有するだけで、スナップショットへのアクセスが共有されるため、チェックなしで問題ないです。
新規アカウントでAMIからインスタンスを作成
AMIの共有が完了しましたので、新規アカウントでログインし、AMIを開きます。AMIは「自己所有」では表示されないため、「自己所有」をクリックし、「プライベートイメージ」に変更します。
AMIが表示されましたら、「作成」をクリックし、インスタンスを作成しましょう。これで、EC2インスタンスの移行は完了です。後は、EIPを設定するなど、既存インスタンス通りに設定をしていきましょう。
既存アカウントの課金を停止
AWSは使用した分だけ料金が発生する従量課金制です。既存アカウントを削除しない場合、EC2インスタンスの停止などを行わないと、使用料金が発生してしまいます。そこで、ECインスタンスの停止方法、EIPのデタッチ方法を合わせて紹介します。
EC2インスタンスを停止
EC2インスタンスの画面で、停止したいインスタンスを選択し、「アクション」→「インスタンスの状態」→「停止」をクリックします。インスタンスの状態が「stopped」になれば、停止は完了です。
もし、インスタンス自体が不要であれば、「削除」をクリックすれば、インスタンスを削除します。
EIPをデタッチ/削除
EIPをアタッチ(関連付け)しているインスタンスが起動している状態であれば、料金は発生しません。しかし、インスタンスが「停止」している状態や、EIPを使っていない場合、料金が発生します。そのため、使わないEIPは削除しなければいけません。
EIPがまだインスタンスにアタッチしている場合は、Elastic IPから該当のIPを選択し、「アクション」→「アドレスの関連付けの解除」をクリックします。確認画面が表示されますので、間違いなければ、「アドレスの関連付けの解除」をクリックし、EIPをデタッチします。
その後、再度該当のIPを選択し、「アクション」→「アドレスの解放」をクリックし、EIPを削除します。これで、料金が発生しなくなります。