インスタンスの重みを使用するように Auto Scaling グループを設定する - Amazon EC2 Auto Scaling

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

インスタンスの重みを使用するように Auto Scaling グループを設定する

複数のインスタンスタイプを使用する場合、各インスタンスタイプに関連付けるユニット数を指定し、同じ測定単位を持つグループの容量を指定できます。この容量の仕様オプションは重みと呼ばれます。

たとえば、少なくとも 8 個の vCPU と 15 GiB の RAM で最高のパフォーマンスを発揮する、コンピューティング集約型のアプリケーションを実行するとします。基本単位として c5.2xlarge を使用する場合、以下の EC2 インスタンスタイプのいずれかがアプリケーションのニーズを満たします。

インスタンスタイプの例
インスタンスタイプ vCPU メモリ (GiB)
c5.2xlarge 8 16
c5.4xlarge 16 32
c5.12xlarge 48 96
c5.18xlarge 72 144
c5.24xlarge 96 192

デフォルトでは、すべてのインスタンスタイプは、サイズにかかわらず同じ重みを持ちます。つまり、Amazon EC2 Auto Scaling が起動するインスタンスタイプの規模の大小にかかわらず、各インスタンスは Auto Scaling グループの希望するキャパシティに対して同じようにカウントされます。

ただし重みでは、各インスタンスタイプに関連付けるユニットを数値で指定します。例えば、インスタンスのサイズが異なる場合、c5.2xlarge インスタンスには 2 の重みを付け、c5.4xlarge (2 倍大きい) インスタンスには 4 の重みを付けます。その後、Amazon EC2 Auto Scaling がグループをスケールするときに、これらの重みは、各インスタンスが希望するキャパシティとしてカウントするユニット数に変換されます。

重みは、Amazon EC2 Auto Scaling が起動するインスタンスタイプを変更しません。代わりに、割り当て戦略がそれを行います。詳細については、「複数のインスタンスタイプの配分戦略」を参照してください。

重要

vCPU の数または各インスタンスタイプのメモリ量を使用して希望するキャパシティを満たすように Auto Scaling グループを設定するには、属性ベースのインスタンスタイプの選択を使用することをお勧めします。DesiredCapacityType パラメータを設定すると、このパラメータに設定した値に基づいて、各インスタンスタイプに関連付けるユニット数が自動的に指定されます。詳細については、「属性ベースのインスタンスタイプの選択を使用して混合インスタンスグループを作成する」を参照してください。

考慮事項

このセクションでは、重みを効果的に実装するための重要な考慮事項について説明します。

  • アプリケーションのパフォーマンスニーズに合ったインスタンスタイプをいくつか選択します。Auto Scaling グループの希望する容量に対して、機能に基づきカウントされる各インスタンスタイプの重みを決定します。これらの重みは、現在および今後のインスタンスに適用されます。

  • 重みの範囲を大きくすることは避けてください。たとえば、インスタンスタイプの重みに 1 を指定し、次に大きいインスタンスタイプの重みに 200 を指定しないでください。最小の重みと最大の重みの差も極端であってはなりません。重みの違いが大きいと、コストパフォーマンスの最適化に悪影響を及ぼす可能性があります。

  • グループの希望する容量をインスタンスではなくユニットで指定します。例えば、vCPU ベースの重みを使用する場合は、希望するコア数に加えて最小値と最大値も設定する必要があります。

  • 重みと希望するキャパシティを設定して、希望するキャパシティが最も大きい重みの少なくとも 2〜3 倍になるようにします。

既存のグループを更新する際には、次の点に注意してください。

  • 既存のグループに重みを追加する際は、現在使用中のすべてのインスタンスタイプの重みを含めます。

  • 重みを追加または変更すると、Amazon EC2 Auto Scaling では新しい重みの値に基づいて希望する容量に達するようにインスタンスを起動または終了します。

  • インスタンスタイプを削除した場合、そのタイプのインスタンスを実行すると、定義されなくなった場合でも最新の重みが維持されます。

インスタンスの重みの動作

インスタンスの重みを使用すると、Amazon EC2 Auto Scaling は次のように動作します。

  • 現在のキャパシティーは、希望するキャパシティーと同じかそれ以上になります。起動されたインスタンスが残りの希望する容量ユニットを超える場合、現在の容量が希望する容量を超える可能性があります。例えば、2 つのインスタンスタイプ c5.2xlargec5.12xlarge を指定し、c5.2xlarge にインスタンスの重み 2 を割り当て、c5.12xlarge にインスタンスの重み 12 を割り当てるとします。希望するキャパシティを満たすためのキャパシティが 5 ユニット分残っており、Amazon EC2 Auto Scaling が c5.12xlarge をプロビジョニングする場合、希望するキャパシティは 7 ユニット分超過します。

  • インスタンスを起動する際、Amazon EC2 Auto Scaling は、アベイラビリティーゾーン間で容量を分散し、希望する容量を超えて配分戦略を優先します。

  • Amazon EC2 Auto Scaling では、優先される配分戦略を使用してアベイラビリティーゾーン間のバランスを維持するため、最大容量の制限を超えることがあります。Amazon EC2 Auto Scaling によって適用されるハード制限は、希望する容量に最大の重みを加えたものになります。