EC2 インスタンスを別のサブネット、アベイラビリティーゾーン、または VPC に移動する方法

最終更新日: 2021 年 8 月 16 日

Amazon Elastic Compute Cloud (Amazon EC2) インスタンスを、別のサブネット、アベイラビリティーゾーン、もしくは Virtual Private Cloud (VPC) に移動またはコピーする必要があります。どうすればよいですか?

簡単な説明

既存のインスタンスを別のサブネット、アベイラビリティーゾーン、または VPC に移動することができません。代わりに、ソースインスタンスから新しい Amazon マシンイメージ (AMI) を作成して、手動でインスタンスを移行できます。次に、目的のサブネット、アベイラビリティーゾーン、または VPC で新しい AMI を使用して新しいインスタンスを起動します。最後に、ソースインスタンスを新しいインスタンスに任意の Elastic IP アドレスを再割り当てします。

インスタンスを移動するには、次の 2 つの方法があります。

  • AWS Systems Manager Automation ドキュメント AWSSupport-CopyEC2Instance を使用する方法。
  • インスタンスを手動でコピーし、そのコピーから新しいインスタンスを起動する方法。

解決方法

開始する前に、以下の点に注意してください。

  • AMI は、Amazon Elastic Block Store (Amazon EBS) スナップショットに基づいています。大きなファイルシステムでは、既存のスナップショットがない場合、AMI の作成に数時間かかる場合があります。AMI の作成時間を短縮するには、AMI を作成する前に、まず Amazon EBS スナップショットを作成します。
  • AMI 作成時には、インスタンスのインスタンスストアボリュームにスナップショットは作成されません。Amazon EC2 にインスタンスストアボリュームのバックアップをする方法については、Amazon EC2 インスタンス上のインスタンスストアボリュームを Amazon EBS にバックアップするにはどうすればよいですかで詳細をご参照ください。
  • 新しい EC2 インスタンスには、新たなプライベート IPv4 か、パブリック IPv6 IP アドレスが与えられます。古い IP アドレスへのすべての参照 (例えば DNS エントリ) は、新しいインスタンスに割り当てられた新しい IP アドレスを使い、更新される必要があります。古いインスタンスで Elastic IP アドレスを使用している場合は、必ず新しいインスタンスに関連付けしてください。
  • ドメインセキュリティ識別子 (SID) が競合する問題は、コピーが起動してドメインに接続しようとしたときに発生することがあります。AMI をキャプチャする前に、Sysprep を使用するか、ドメイン結合インスタンスをドメインから削除することで、競合の問題を防ぎます。詳細については、「Sysprep を使用して、カスタムの再利用可能な Windows AMI を作成およびインストールする方法を教えてください」を参照してください。

AWS System Manager Automation ランブック AWSSupport-CopyEC2Instance を使用する

次のタスクを自動的に完了するには、AWS Systems Manager Automation ランブック AWSSupport-CopyEC2Instance を使用できます。

  • 新しいイメージの作成
  • 新しいインスタンスの起動

これらの手順が完了したら、必要に応じて「Elastic IP アドレスの再割り当て」セクションの手順に従います。

オートメーションを実行するには、次の操作を行います。

1.    AWSSupport-CopyEC2Instance ランブックを開きます

注: コピーするインスタンスと同じリージョンに属していることを確認してください。

2.    [オートメーションドキュメントの実行] で [シンプルな実行] を選択します。

3.    [入力パラメータ] に、コピーする EC2 インスタンスの InstanceID を入力します。インタラクティブインスタンスピッカーを使用する場合は、ドロップダウンリストから [すべてのインスタンスを表示する] を選択していることを確認します。

4.    インスタンスのコピー先となるコピー先リージョンおよび SubnetID またはそのどちらかを指定します。

5.    ユースケースに必要な追加のオプションフィールドに入力し、[実行] を選択します。

6.    実行の進行状況をモニタリングするには、Systems Manager コンソールを開き、ナビゲーションペインから [Automation] (自動化) を選択します。実行中のオートメーションを選択し、[Executed steps] (実行したステップ) を確認します。オートメーションの出力を表示するには、[出力] を展開します。

このランブックの詳細については、 AWSSupport-CopyEC2Instance を参照してください。

インスタンスを手動でコピーし、そのコピーから新しいインスタンスを起動する

新しいイメージの作成

  1. Amazon EC2 コンソールを開き、左側のナビゲーションペインで [インスタンス] を選択します。
  2. 移動するインスタンスを選択し、[アクション]、[インスタンスの状態]、[停止] の順に選択します。これにより、新旧の EBS ボリューム間でデータの整合性が確保されます。
    注: この手順をテストしている場合か、インスタンスの停止もしくは再起動を望まない場合は、このステップをスキップすることも可能です。
  3. [アクション]、[イメージ]、[イメージの作成] を選択します。
    [イメージ名] には、イメージの名前を入力します。
    [イメージの説明] には、説明を入力します。
    注: [イメージの作成] で [再起動しない] を選択した場合は、イメージのファイルシステムの整合性は保証されません。
  4. [イメージの作成] を選択します。
  5. [受信したイメージの作成リクエスト] で、[保留中のイメージ [ID] を表示] を選択します。[ステータス] が pending から available に変更されるのを待ちます。
    : ナビゲーションペインの [イメージ] セクションから [AMI] を選択して、保留中のイメージを表示することもできます。

新しいインスタンスの起動

  1. AMI を選択し、[起動] を選択します。
  2. 移動したいインスタンスと同じインスタンスタイプを選択し、[次の手順: インスタンスの詳細の設定] をクリックします。
    [ネットワーク] では、VPC を選択します。
    [サブネット] では、新しいインスタンスを起動するサブネットを選択します。
    インスタンスが本番用インスタンスの場合は、[終了保護の有効化] で [誤った終了を防止します] を選択します。
  3. [次へ: ストレージの追加] を選択します。
  4. デフォルトを許可して、[次へ: タグの追加] を選択します。
    [キー] に、Name と入力します。
    [] に、インスタンス名を入力します。
  5. [次の手順:セキュリティグループの設定] をクリックします。
  6. 移動するインスタンスに適用されたのと同じセキュリティグループを選択します。
    注: VPC 間でインスタンスを移動している場合には、移動先 VPC に新しいセキュリティグループを作成する必要があります。
  7. [確認と作成] を選択します。
  8. [作成] を選択します。
  9. [キーペアの選択] では、ドロップダウンメニューからキーペアを選択します。
  10. 契約のチェックボックスをオンにし、[インスタンスの作成] を選択します。
  11. インスタンス ID を選択し、EC2 コンソールに戻ります。

Elastic IP アドレスの再割り当て

Elastic IP アドレスを再割り当てするには、まず Elastic IP アドレスとソースインスタンスの関連付けを解除する必要があります。次に、Elastic IP アドレスを新しいインスタンスに関連付けることができます。手順については、「Elastic IP アドレスの関連付けを解除」を参照してください。

注: Elastic IP アドレスは 1 つのリージョンでのみ使用できます。別のリージョンにインスタンスを移動する場合、同じ Elastic IP アドレスを使用することはできません。