リザーブドインスタンス の変更 - Amazon Elastic Compute Cloud

リザーブドインスタンス の変更

ニーズが変化したときは、スタンダードまたは コンバーティブルリザーブドインスタンス を変更し、引き続き料金上の利点を得られます。アベイラビリティ―ゾーン、インスタンスサイズ(同じインスタンスファミリー内で)や リザーブドインスタンス のスコープなどの属性を変更できます。

注記

また、別の構成で、別の コンバーティブルリザーブドインスタンス の コンバーティブルリザーブドインスタンス に交換することもできます。詳細については、「コンバーティブルリザーブドインスタンス の交換」を参照してください。

すべての リザーブドインスタンス、またはそのサブセットを変更できます。元の リザーブドインスタンス を 2 つ以上の新しい リザーブドインスタンス に分割できます。たとえば、us-east-1a に 10 のインスタンスを予約があり、そのうち 5 つのインスタンスを us-east-1b に移動する場合、結果的にこの変更は 2 つの新しい予約をリクエストします。us-east-1a での 5 つのインスタンス用の予約と us-east-1b での 5 つのインスタンス用の予約です。

また、2 つ以上の リザーブドインスタンス を単一の リザーブドインスタンス にマージすることもできます。たとえば、それぞれに 1 つのインスタンスがある 4 つの t2.small リザーブドインスタンス がある場合、これらをマージして 1 つの t2.large リザーブドインスタンス を作成できます。詳細については、「インスタンスサイズの変更のサポート」を参照してください。

変更後、リザーブドインスタンス の利点は、リザーブドインスタンスの新しいパラメータと一致するインスタンスのみに適用されます。たとえば、予約のアベイラビリティーゾーンを変更する場合、キャパシティーの予約と料金上の利点は、新しいアベイラビリティーゾーン内のインスタンスの使用に対して自動的に適用されます。新しいパラメータに一致しないインスタンスは、他に適用可能な予約がない場合、オンデマンド価格で課金されます。

変更リクエストが成功した場合。

  • 変更後の予約がすぐに有効になり、変更リクエストが完了した時刻から、割引料金が新しいインスタンスに適用されます。たとえば、午後 9 時 15 分に予約の変更が成功した場合、割引料金は午後 9 時 00 分から新しいインスタンスに移ります。変更された リザーブドインスタンス の発行日は describe-reserved-instances コマンドを使用して取得できます。

  • 元の予約は終了します。その終了日は新しい予約の開始日であり、新しい予約の終了日は元の リザーブドインスタンス の終了日と同じです。有効期限のうち 16 か月が残っている 3 年の予約を正常に変更した場合、変更後の予約は 16 か月の予約であり、終了日は変更前の予約と同じです。

  • 変更後の予約の固定価格は 0 USD であり、元の予約の固定価格ではありません。

  • 変更後の予約の固定価格はアカウントに適用される割引料金範囲の計算に影響を与えません。割引範囲の計算は元の予約の固定価格に基づきます。

変更リクエストに失敗した場合、リザーブドインスタンス は元の設定を維持し、別の変更リクエストをすぐに利用できます。

変更に手数料は必要なく、新しく課金されたり、請求書が届いたりすることはありません。

予約の変更は必要に応じて何度でも行うことができますが、変更を送信後に保留中の変更リクエストを変更またはキャンセルすることはできません。変更が完了した後は、必要に応じて別の変更リクエストを送信して、実行した変更をロールバックできます。

変更の要件と制限

以下のように、これらの属性を変更できます。

変更可能な属性 サポートされているプラットフォーム 制約事項

同じリージョン内でアベイラビリティーゾーンを変更する

Linux と Windows

スコープをアベイラビリティーゾーンからリージョンに、またはその逆に変更する

Linux と Windows

スコープをアベイラビリティーゾーンからリージョンに変更した場合、キャパシティーの予約の利点を失います。

スコープをリージョンからアベイラビリティーゾーンに変更する場合、アベイラビリティーゾーンの柔軟性とインスタンスサイズの柔軟性 (適用される場合) を失います。詳細については、「リザーブドインスタンス がどのように適用されるか」を参照してください。

同じインスタンスファミリー内でインスタンスサイズを変更する

Linux/UNIX のみ

リザーブドインスタンス のインスタンスサイズの柔軟性は、他のプラットフォーム (Linux with SQL Server Standard、Linux with SQL Server Web、Linux with SQL Server Enterprise、Red Hat Enterprise Linux、SUSE Linux、Windows、Windows with SQL Standard、Windows with SQL Server Enterprise、および Windows with SQL Server Web) では利用できません。

予約ではデフォルトのテナンシーを使用する必要があります。使用できる他のサイズがないため、一部のインスタンスファミリーはサポートされません。詳細については、「インスタンスサイズの変更のサポート」を参照してください。

ネットワーク を EC2-Classic から Amazon VPC に、またはその逆に変更する

Linux と Windows

ネットワークプラットフォームは AWS アカウントで利用できる必要があります。2013 年 12 月 4 日より後に AWS アカウントを作成した場合、EC2-Classic はサポートされません。

要件

変更リクエストは、変更後の設定 (該当する場合) に対して十分なリザーブドインスタンス容量があり、以下の条件が満たされている場合に Amazon EC2 で処理されます。

  • 購入と同時期またはその前に リザーブドインスタンス を変更できないこと

  • リザーブドインスタンス がアクティブであること

  • 保留中の変更リクエストがないこと

  • リザーブドインスタンス が リザーブドインスタンスマーケットプレイス に出品されていないこと

  • アクティブな予約のインスタンスサイズのフットプリントと変更後の設定が一致していることが必要です。詳細については、「インスタンスサイズの変更のサポート」を参照してください。

  • 入力 リザーブドインスタンス はすべてスタンダード リザーブドインスタンス あるいはすべて コンバーティブルリザーブドインスタンス であり、両方のタイプが混ざっていないこと

  • スタンダード リザーブドインスタンス の場合、入力 リザーブドインスタンス は同じ時間内に期限切れとなること

  • リザーブドインスタンス は G4 インスタンスではありません。

インスタンスサイズの変更のサポート

次の要件が満たされている場合は、リザーブドインスタンス のインスタンスサイズを変更できます。

要件

  • プラットフォームが Linux/UNIX であること。

  • 同じインスタンスファミリーの別のインスタンスサイズを選択すること。例えば、同じサイズを使用するか異なるサイズを使用するかにかかわらず、リザーブドインスタンス を t2 から t3 に変更することはできません。

    以下の各インスタンスファミリーには 1 つのサイズしかないため、リザーブドインスタンス のインスタンスサイズを変更することはできません。

    • cc2.8xlarge

    • cr1.8xlarge

    • hs1.8xlarge

    • t1.micro

  • 変更前と変更後の リザーブドインスタンス は、インスタンスサイズのフットプリントが同じであること。

インスタンスサイズのフットプリント

各 リザーブドインスタンス にはインスタンスサイズのフットプリントがあり、これはインスタンスサイズの正規化係数と予約に含まれるインスタンスの数によって決まります。リザーブドインスタンス のインスタンスサイズを変更する場合、変更後の設定のフットプリントは元の設定のフットプリントと一致する必要があります。一致しないと、変更リクエストは処理されません。

リザーブドインスタンス でインスタンスサイズのフットプリントを計算するには、インスタンスの数に正規化係数を掛けます。Amazon EC2 コンソールでは、正規化係数はユニットで測定されます。次の表に、インスタンスファミリーのインスタンスサイズの正規化係数を示します。例えば、t2.medium の正規化係数は 2 であるため、4 つの t2.medium インスタンスの予約は 8 ユニットのフットプリントになります。

インスタンスサイズ 正規化係数

nano

0.25

micro

0.5

small

1

medium

2

large

4

xlarge

8

2xlarge

16

4xlarge

32

8xlarge

64

9xlarge

72

10xlarge

80

12xlarge

96

16xlarge

128

18xlarge

144

24xlarge

192

32xlarge

256

予約のインスタンスサイズのフットプリントが同じである場合は、同じインスタンスファミリー内で、予約を異なるインスタンスサイズとして割り当てることができます。例えば、1 つの t2.large (1 @ 4 ユニット) インスタンスの予約は 4 つの t2.small (4 @ 1 ユニット) インスタンスに分割できます。同様に、4 つの t2.small インスタンスの予約は 1 つの t2.large インスタンスにまとめることができます。ただし、2 つの t2.small インスタンスの予約を 1 つの t2.large インスタンスに変更することはできません。変更後の予約のフットプリント (4 ユニット) が既存の予約のフットプリント (2 ユニット) より大きいためです。

次の例では、2 つの t2.micro インスタンスの予約 (1 ユニット) と 1 つの t2.small インスタンスの予約 (1 ユニット) があります。両方の予約を 1 つの t2.medium インスタンスの予約 (2 ユニット) に結合すると、変更前の予約のフットプリントと結合後の予約のフットプリントは等しくなります。


						リザーブドインスタンス を変更中

また、予約を変更して 2 つ以上の予約に分割することもできます。次の例では、1 つの t2.medium インスタンスの予約 (2 ユニット) があります。この予約を 2 つの予約に分割できます。t2.nano インスタンス 2 個の予約 (0.5 ユニット) と、t2.micro インスタンス 3 個の予約 (1.5 ユニット) です。


						リザーブドインスタンス を変更中

ベアメタルインスタンスの正規化係数

同じインスタンスファミリー内の他のサイズを使用して、metal インスタンスの予約を変更できます。同様に、同じインスタンスファミリー内の metal サイズを使用して、ベアメタルインスタンス以外のインスタンスの予約を変更できます。通常、ベアメタルインスタンスのサイズは、同じインスタンスファミリー内の最大のインスタンスサイズと同じです。例えば、i3.metal インスタンスは i3.16xlarge インスタンスと同じサイズであるため、正規化係数が同じになります。

次の表は、ベアメタルインスタンスを持つインスタンスファミリーのベアメタルインスタンスサイズの正規化係数を示しています。metal インスタンスの正規化係数は、他のインスタンスサイズとは異なり、インスタンスファミリーによって決まります。

ベアメタルインスタンスサイズ 正規化係数
c5.metal 192
i3.metal 128
r5.metal 192
r5d.metal 192
z1d.metal 96
m5.metal 192
m5d.metal 192

たとえば、1 つの i3.metal インスタンスには 128 の正規化係数があります。i3.metal デフォルトテナンシー Amazon Linux/Unix リザーブドインスタンス を購入する場合、次のように予約を分割できます。

  • i3.16xlargei3.metal インスタンスと同じサイズであるため、その正規化係数は 128 (128/1) です。1 つの i3.metal インスタンスの予約は、1 つの i3.16xlarge インスタンス内で変更できます。

  • i3.8xlargei3.metal インスタンスの半分のサイズであるため、その正規化係数は 64 (128/2) です。1 つの i3.metal インスタンスの予約は、2 つの i3.8xlarge インスタンスに分割できます。

  • i3.4xlargei3.metal インスタンスの 4 分の 1 のサイズであるため、その正規化係数は 32 (128/4) です。1 つの i3.metal インスタンスの予約は、4 つの i3.4xlarge インスタンスに分割できます。

変更リクエストの送信

リザーブドインスタンス を変更する前に、適用される「制約」を必ず確認してください。 インスタンスのサイズを変更する前に、変更する予約のすべてのインスタンスサイズフットプリントを計算し、その結果が希望する設定の全インスタンスサイズフットプリントと一致することを確認してください。

AWS マネジメントコンソール を使用して リザーブドインスタンス を変更するには

  1. https://console.aws.amazon.com/ec2/ で Amazon EC2 コンソールを開きます。

  2. [リザーブドインスタンス] ページで、変更する リザーブドインスタンス を 1 つ以上選択し、[アクション]、[リザーブドインスタンスの変更] の順に選択します。

    注記

    リザーブドインスタンス がアクティブ状態ではない場合、または変更できない場合は、[リザーブドインスタンス の変更] が無効となります。

  3. 変更テーブルの最初のエントリには、選択した リザーブドインスタンス の属性とその上部に少なくとも 1 つのターゲット設定が表示されます。[単位] 列には全インスタンスサイズのフットプリントが表示されます。追加する各新規設定で 追加 を選択します。各設定で必要に応じて属性を変更し、[続行] を選択します。

    • [スコープ]: 設定の適用先が 1 つのアベイラビリティーゾーンまたはリージョン全体のどちらであるかを選択します。

    • [アベイラビリティーゾーン]: 必要なアベイラビリティーゾーンを選択します。リージョン リザーブドインスタンス には適用されません。

    • [インスタンスタイプ]: 必要なインスタンスタイプを選択します。 組み合わせた設定は、元の設定のインスタンスサイズのフットプリントと等しくなければなりません。

    • [カウント]: インスタンス数を指定します。リザーブドインスタンス を複数の設定に分割するには、カウントを減らし、[追加] を選択して、追加する設定のカウントを指定します。たとえば、カウントが 10 の設定が 1 つある場合、そのカウントを 6 に変更し、カウントが 4 の設定を別に追加できます。このプロセスでは、新しい リザーブドインスタンス がアクティブになった後で、元の リザーブドインスタンス を終了させます。

  4. ターゲット設定の指定を完了したときに、変更の選択を確認するには、[Submit Modifications] を選択します。

  5. 変更リクエストのステータスは、リザーブドインスタンス 画面の [状態] 列で確認できます。有効な状態には以下のものがあります。

    • アクティブ(変更の保留) —元の リザーブドインスタンス の移行状態

    • リタイヤ(変更の保留) — 新しい リザーブドインスタンス を作成中の元の リザーブドインスタンス の移行状態

    • リタイヤ — リザーブドインスタンス は正常に変更され、置き換えられました

    • アクティブ — 次のいずれかを選択します。

      • 正常な変更リクエストにより新しい リザーブドインスタンス が作成されました

      • 変更リクエストが失敗したため、元の リザーブドインスタンス です

コマンドラインを使用して リザーブドインスタンス を変更するには

  1. リザーブドインスタンス を変更するには、次のコマンドの 1 つを使用できます。

  2. 変更リクエスト(processingfulfilled、または failed)のステータスを取得するには、以下のコマンドから 1 つを使用します。

変更リクエストのトラブルシューティング

リクエストしたターゲット設定が一意であれば、リクエストが処理されるメッセージを受信します。この時点では、Amazon EC2 は変更リクエストのパラメータが有効であることのみを確認しています。まだ、処理中に容量が利用できないために変更リクエストが失敗する可能性があります。

場合によって、確認の代わりに変更リクエストが不完全または失敗したことを示すメッセージが表示されることがあります。メッセージの情報を参考にして、別の変更リクエストを再送信します。リクエストを送信する前に、適用される制約を必ず確認してください。

選択された リザーブドインスタンス に変更できないものがあります

Amazon EC2 は変更できない リザーブドインスタンス を示します。このようなメッセージを受け取ったら、Amazon EC2 コンソールの [リザーブドインスタンス] ページ リザーブドインスタンス についての詳細情報を確認します。

変更リクエストの処理中にエラーが発生しました

送信した リザーブドインスタンス 変更リクエストをすべて処理できません。変更している予約の数によっては、メッセージが異なる場合があります。

Amazon EC2 は変更リクエストを処理できない理由を示します。たとえば、変更している リザーブドインスタンス の 1 つ以上のサブセットに同じターゲット設定 (アベイラビリティーゾーンとプラットフォームの組み合わせ) を指定したような場合です。予約のインスタンス詳細が一致し、変更対象のすべてのサブセットのターゲット設定が一意であることを確認して、変更リクエストの再送信を試みます。