Amazon Elastic Compute Cloud
Linux インスタンス用ユーザーガイド

インスタンスタイプを変更する

ニーズが変わるにつれて、インスタンスの利用率が高すぎたり (インスタンスタイプが小さすぎる)、低すぎたりする (インスタンスタイプが大きすぎる) ことに気付く場合があります。このような場合は、インスタンスのサイズを変更できます。たとえば、t2.micro インスタンスがワークロードに対して小さすぎる場合は、そのインスタンスをワークロードに適した別のインスタンスタイプに変更できます。

以前の世代のインスタンスタイプから現行世代のインスタンスタイプに移行し、たとえば IPv6 のサポートなどの機能を活用することもできます。

インスタンスのルートデバイスが EBS ボリュームの場合は、インスタンスタイプを変更するだけでインスタンスのサイズを変更できます。この処理はサイズ変更と呼ばれます。インスタンスのルートデバイスがインスタンスストアボリュームの場合、必要なインスタンスタイプで新しいインスタンスにアプリケーションを移行する必要があります。ルートデバイスボリュームの詳細については、ルートデバイスのストレージ を参照してください。

インスタンスのサイズを変更すると、インスタンスの設定と互換性のあるインスタンスタイプを選択する必要があります。使用するインスタンスタイプに既存のインスタンス設定との互換性がない場合、必要なインスタンスタイプで新しいインスタンスにアプリケーションを移行する必要があります。

重要

インスタンスのサイズを変更すると、サイズ変更したインスタンスには通常、元のインスタンスの起動時に指定したのと同じ数のインスタンスストアボリュームが設定されます。NVMe インスタンスストアボリューム (デフォルトで使用可能) をサポートするインスタンスタイプでは、AMI によっては、サイズ変更されたインスタンスに追加のインスタンスストアボリュームが存在する可能性があります。それ以外の場合は、新しいインスタンスを起動するときに必要なインスタンスストアボリュームの数を指定して、アプリケーションを新しいインスタンスタイプのインスタンスに手動で移行できます。

インスタンスのサイズ変更の互換性

現在のインスタンスタイプおよび使用する新しいインスタンスタイプが次のように互換性がある場合にのみ、インスタンスのサイズを変更することができます。

  • 仮想化タイプ: Linux AMI は、準仮想化 (PV) またはハードウェア仮想マシン (HVM) のいずれかの仮想化タイプを使用します。PV AMI から起動されたインスタンスのサイズを、HVM のみであるインスタンスタイプに変更することはできません。詳細については、「Linux AMI 仮想化タイプ」を参照してください。インスタンスの仮想化タイプを確認するには、Amazon EC2 コンソールで [Instances] 画面の詳細ペインの [Virtualization] フィールドを参照します。

  • アーキテクチャー: AMI はプロセッサのアーキテクチャーに固有であるため、プロセッサアーキテクチャーが現在のインスタンスタイプと同じインスタンスタイプを選択する必要があります。例:

    • A1 インスタンスは、Arm アーキテクチャーベースのプロセッサをサポートする唯一のインスタンスです。AMI アーキテクチャーベースのプロセッサでインスタンスタイプをサイズ変更している場合、AMI アーキテクチャーベースのプロセッサをサポートするインスタンスタイプに制限されます。

    • 32 ビット AMI をサポートするのは以下のインスタンスタイプのみです。t2.nanot2.microt2.smallt2.mediumc3.larget1.microm1.smallm1.medium、および c1.medium。32 ビットインスタンスのサイズを変更する場合は、これらのインスタンスタイプに制限されます。

  • ネットワーク: 一部のインスタンスタイプは、VPC で起動する必要があります。そのため、EC2-Classic プラットフォームでは、デフォルト以外の VPC がない場合にインスタンスのサイズを VPC でのみ利用可能なインスタンスタイプに変更することはできません。インスタンスが VPC 内にあるかどうかを確認するには、Amazon EC2 コンソールで [Instances] 画面の詳細ペインの [VPC ID] 値を確認します。詳細については、「EC2-Classic の Linux インスタンスから VPC の Linux インスタンスへの移行」を参照してください。

  • 拡張ネットワーク: 拡張ネットワークをサポートするインスタンスタイプでは、必要なドライバーがインストールされていなければなりません。たとえば、A1、C5、C5d、C5n、I3en、M5、M5a、M5ad、M5d、p3dn.24xlarge、R5、R5a、R5ad、R5d、T3、T3a、および z1d インスタンスタイプでは、Elastic Network Adapter (ENA) ドライバーをインストールした EBS-backed AMI が必要です。既存のインスタンスを、拡張ネットワークをサポートするインスタンスタイプにサイズ変更するには、ENA ドライバーまたは ixgbevf ドライバーを必要に応じてインスタンスにインストールしてください。

  • NVMe: Nitro ベースのインスタンスでは、EBS ボリュームは NVMe ブロックデバイスとして公開されます。NVMe をサポートしないインスタンスタイプから NVMe をサポートするインスタンスタイプにインスタンスをサイズ変更する場合、まずインスタンスに NVMe ドライバーをインストールする必要があります。ブロックデバイスマッピングで指定したデバイス名は、NVMe デバイス名 (/dev/nvme[0-26]n1) を使用して名称変更されます。 したがって、/etc/fstab を使用してブート時にファイルシステムをマウントするには、デバイス名の代わりに UUID/Label を使用する必要があります。

  • AMI: 拡張ネットワークと NVMe をサポートするインスタンスタイプで必要な AMI については、次のマニュアルの「リリースノート」を参照してください。

Amazon EBS–Backed インスタンスのサイズ変更

Amazon EBS–Backed インスタンスタイプを変更するには、そのインスタンスを停止する必要があります。インスタンスを停止して再度起動するときは、以下に注意してください:

  • インスタンスは新しいハードウェアに移動されますが、インスタンス ID は変更されません。

  • インスタンスにパブリック IPv4 アドレスがある場合には、このアドレスは解放されて、新しいパブリック IPv4 アドレスになります。インスタンスは、プライベート IPv4 アドレス、Elastic IP アドレス、および IPv6 アドレスを保持します。

  • インスタンスが Auto Scaling グループにある場合、Amazon EC2 Auto Scaling サービスはインスタンスを異常と判断して停止し、場合によってはそれを終了して代わりのインスタンスを起動します。インスタンスのサイズを変更するときに、そのグループのスケーリングプロセスを中断することで、これを防ぐことができます。詳細については、『Amazon EC2 Auto Scaling ユーザーガイド』の「スケーリングプロセスの中断と再開」を参照してください。

  • インスタンスがクラスタープレイスメントグループにあり、インスタンスタイプの変更後にインスタンスの起動に失敗する場合は、次の操作をお試しください。クラスタープレイスメントグループのすべてのインスタンスを停止し、影響を受けたインスタンスのインスタンスタイプを変更します。次に、クラスタープレイスメントグループのすべてのインスタンスを再起動します。

  • インスタンスが停止している間のダウンタイムを予定しておいてください。インスタンスを停止し、サイズ変更を行うと、数分かかります。インスタンスを再起動すると、アプリケーションの起動スクリプトによってかかる時間が変動する場合があります。

詳細については、「インスタンスの停止と起動」を参照してください。

AWS マネジメントコンソール を使って Amazon EBS–Backed インスタンスのサイズを変更するには、次の手順を行います。

Amazon EBS–Backed インスタンスのサイズを変更するには

  1. (オプション) 新しいインスタンスのタイプに既存のインスタンスにインストールされていないドライバーが必要な場合は、インスタンスに接続してドライバーをインストールする必要があります。詳細については、「インスタンスのサイズ変更の互換性」を参照してください。

  2. Amazon EC2 コンソールを開きます。

  3. ナビゲーションペインで、[インスタンス] を選択します。

  4. インスタンスを選択し、[Actions]、[Instance State]、[Stop] の順に選択します。

  5. 確認ダイアログボックスで [Yes, Stop] を選択します。インスタンスが停止するまで、数分かかる場合があります。

  6. インスタンスが選択された状態で、[Actions]、[Instance Settings]、[Change Instance Type] の順に選択します。インスタンスの状態が stopped ではない場合、このアクションは無効になります。

  7. [Change Instance Type] ダイアログボックスで、次の操作を行います。

    1. [インスタンスタイプ] から、使用するインスタンスタイプを選択します。使用するインスタンスタイプがリストに表示されない場合は、インスタンスの設定と互換性がありません (仮想化タイプが原因の場合など)。詳細については、「インスタンスのサイズ変更の互換性」を参照してください。

    2. (オプション) 選択したインスタンスタイプが EBS– 最適化をサポートしている場合は、[EBS–optimized] を選択して EBS 最適化を有効にするか、[EBS-optimized] を選択解除して EBS– 最適化を無効にします。選択したインスタンスタイプがデフォルトで EBS に最適化される場合、[EBS に最適化] が選択されており、選択解除することはできません。

    3. [Apply] を選択して、新しい設定を受け入れます。

  8. 停止されているインスタンスを再起動するには、インスタンスを選択後、[Actions]、[Instance State]、[Start] の順に選択します。

  9. 確認ダイアログボックスで [Yes, Start] を選択します。インスタンスが running 状態になるまで、数分かかる場合があります。

  10. (トラブルシューティング) インスタンスが起動しない場合、新しいインスタンスタイプの要件の 1 つが満たされていない可能性があります。詳細については、「Why is my Linux instance not booting after I changed its type?」を参照してください。

Instance Store-Backed インスタンスの移行

1 つの instance store-backed インスタンスから別のインスタンスタイプの instance store-backed インスタンスにアプリケーションを移動する場合は、インスタンスからイメージを作成し、このイメージから必要なインスタンスタイプで新しいインスタンスを起動することにより、移行する必要があります。インスタンスでホストしているアプリケーションをユーザーが中断なく継続して使用できるようにするには、元のインスタンスに関連付けられた Elastic IP アドレスを新しいインスタンスに関連付ける必要があります。その後、元のインスタンスを終了できます。

Instance Store-Backed インスタンスを移行するには

  1. 永続的ストレージに保持する必要がある、インスタンスストアボリュームのデータをバックアップします。保持する必要がある EBS ボリュームのデータを移行するには、ボリュームのスナップショットを作成するか (「Amazon EBS スナップショットの作成」を参照)、またはインスタンスからボリュームをデタッチして後で新しいインスタンスにアタッチできるようにします (「インスタンスからの Amazon EBS ボリュームのデタッチ」を参照)。

  2. Instance Store-Backed インスタンスから AMI を作成するには、「Instance Store-Backed Linux AMI の作成」に記載された前提条件と手順に従います。インスタンスから AMI を作成したら、この手順に戻ります。

  3. ナビゲーションペインで Amazon EC2 コンソールを開き、[AMI] を選択します。フィルターリストで [自己所有] を選択し、前のステップで作成したイメージを選択します。[AMI Name] は、イメージを登録したときに指定した名前であり、[Source] は Amazon S3 バケットです。

    注記

    前のステップで作成した AMI が表示されない場合は、AMI を作成したリージョンを選択していることを確認します。

  4. [Launch] を選択します。インスタンスに対してオプションを指定する場合は、使用する新しいインスタンスタイプを選択してください。使用するインスタンスタイプを選択できない場合は、作成した AMI の構成と互換性がありません (仮想化タイプが原因の場合など)。元のインスタンスからデタッチした EBS ボリュームを指定することもできます。

    インスタンスが running 状態になるまで、数分かかる場合があります。

  5. (オプション) 不要になった場合は、起動したインスタンスを終了できます。インスタンスを選択し、終了しようとしているのが新しいインスタンスではなく元のインスタンスであることを確認します (名前や起動時間を確認するなど)。[アクション]、[インスタンスの状態]、[終了] の順に選択します。

新しいインスタンス設定への移行

インスタンスの現在の設定に使用する新しいインスタンスタイプとの互換性がない場合、そのインスタンスタイプにインスタンスのサイズを変更することはできません。代わりに、使用する新しいインスタンスタイプと互換性がある設定で新しいインスタンスにアプリケーションを移行できます。

PV AMI から起動されたインスタンスから HVM のみのインスタンスタイプに移動する場合、一般的な手順は次のとおりです。

互換性のあるインスタンスへアプリケーションを移行するには

  1. 永続的ストレージに保持する必要がある、インスタンスストアボリュームのデータをバックアップします。保持する必要がある EBS ボリュームのデータを移行するには、ボリュームのスナップショットを作成するか (「Amazon EBS スナップショットの作成」を参照)、またはインスタンスからボリュームをデタッチして後で新しいインスタンスにアタッチできるようにします (「インスタンスからの Amazon EBS ボリュームのデタッチ」を参照)。

  2. 新しいインスタンスを起動して、以下のものを選択します。

    • HVM AMI

    • HVM のみのインスタンスタイプ。

    • Elastic IP アドレスを使用している場合は、元のインスタンスを現在実行している VPC を選択します。

    • 元のインスタンスからデタッチして新しいインスタンスにアタッチする EBS ボリューム、または作成したスナップショットに基づいた新しい EBS ボリューム。

    • 同じトラフィックが新しいインスタンスに到達できるようにする場合は、元のインスタンスと関連付けられるセキュリティグループを選択します。

  3. アプリケーションと必要なソフトウェアをインスタンスにインストールします。

  4. 元のインスタンスのインスタンスストアボリュームからバックアップしたデータを復元します。

  5. Elastic IP アドレスを使用している場合、以下のように新しく起動したインスタンスにそのアドレスを割り当てます。

    1. ナビゲーションペインで [Elastic IP] を選択します。

    2. 元のインスタンスに関連付ける Elastic IP アドレスを選択して、[アクション]、[アドレスの関連付けの解除] の順に選択します。確認を求めるメッセージが表示されたら、[Disassociate address] を選択します。

    3. Elastic IP アドレスがまだ選択された状態で、[アクション]、[アドレスの関連付け] の順に選択します。

    4. [Instance] から新しいインスタンスを選択し、[Associate] を選択します。

  6. (オプション) 不要になった場合は、元のインスタンスを終了できます。インスタンスを選択し、終了しようとしているのが新しいインスタンスではなく元のインスタンスであることを確認します (名前や起動時間を確認するなど)。[Actions]、[Instance State]、[Terminate] の順に選択します。