自動プロビジョニングを使用すると、Elastic Compute Service (ECS) インスタンスクラスタを迅速に配信できます。単純な構成を行うだけで、インスタンスタイプとゾーンをまたいで、異なる課金方法 (従量課金とプリエンプティブルインスタンス) を使用するインスタンスの配信を自動化できます。これにより、多数のインスタンスを同時に配信する効率が向上します。 自動プロビジョニングは、プリエンプティブルインスタンスの再利用によってビジネスに及ぼす影響を軽減するためのさまざまなプロビジョニングポリシーを提供するため、低コストでコンピューティングパワーを使用できます。 たとえば、自動プロビジョニングを使用して従量課金インスタンスを作成して最小コンピューティングパワー要件を満たし、次にプリエンプティブルインスタンスを作成してコストを削減できます。
はじめに
自動プロビジョニンググループは、指定されたリソースプール、目標容量、およびプロビジョニングポリシーに基づいて、インスタンスクラスタを自動的に配信します。 これにより、インスタンスを 1 つずつ作成したり、各インスタンスのコストを計算したりする必要がなくなります。 次の表に、自動プロビジョニンググループの属性を示します。
属性 | 説明 |
リソースプール | リソースプールは、単一のゾーンと単一のインスタンスタイプで構成されます。 複数のゾーンとインスタンスタイプを指定して、インスタンスを作成するために複数のリソースプールを使用できるようにすることができます。 |
目標容量 | 目標容量は、プロビジョニングが予定されているコンピューティングパワーであり、プリエンプティブルインスタンスと従量課金インスタンスの容量を含めることができます。 インスタンス、vCPU、またはメモリサイズに基づいて目標容量を指定できます。 デフォルトでは、自動プロビジョニンググループはプリエンプティブルインスタンスを使用して目標容量を満たします。 従量課金インスタンスを使用して、必要な最小コンピューティングパワーを提供するように指定できます。 従量課金インスタンスの容量を使用するように指定した場合、従量課金インスタンスはプリエンプティブルインスタンスよりも優先的に作成されます。 その後、プリエンプティブルインスタンスが作成され、残りの目標容量が補われます。 リソース不足のためにプリエンプティブルインスタンスを作成できない場合は、従量課金インスタンスが作成されて目標容量が満たされます。 |
プロビジョニングポリシー | プロビジョニングポリシーは、インスタンスの作成に使用するリソースプールを選択するために使用されます。 たとえば、単価が最も低いリソースプールを使用してコストを削減したり、異なるゾーンにインスタンスを作成してインスタンスの可用性を向上させたりすることができます。 プロビジョニングポリシーの詳細については、このトピックのポリシータイプの表をご参照ください。 |
シナリオ
自動プロビジョニンググループとプリエンプティブルインスタンスは、スケーラブルな Web サイトサービス、イメージレンダリング、ビッグデータ分析、並列計算などのステートレス アプリケーションに適用できます。 詳細については、「概要」をご参照ください。
課金
自動プロビジョニングは無料で利用できます。
ただし、自動プロビジョニンググループに基づいて作成されたインスタンスには課金されます。 自動プロビジョニングは、プリエンプティブルインスタンスと従量課金インスタンスをサポートしています。 インスタンスの課金の詳細については、「概要」および「従量課金」をご参照ください。
アカウントに十分な残高があることを確認してください。 支払い遅延がある場合、すべての従量課金インスタンスとプリエンプティブルインスタンスは停止されます。 詳細については、「従量課金」をご参照ください。 この場合、自動プロビジョニンググループはインスタンスを作成できません。 自動プロビジョニンググループは、ヘルスチェックの結果に基づいて停止されたインスタンスを異常と見なし、インスタンスを削除して解放します。
使用上の注意
自動プロビジョニンググループを作成する前に、次の操作が実行されていることを確認してください。
インスタンスの基本構成を含む起動テンプレートを指定します。 詳細については、「概要」をご参照ください。
自動プロビジョニンググループは、起動テンプレートで指定されたイメージ、セキュリティグループ、ログイン資格情報などの属性を使用しますが、インスタンスタイプと、インスタンスを作成するゾーンを指定する vSwitch は使用しません。 自動プロビジョニンググループは、代わりに個別に指定された vSwitch とインスタンスタイプを使用します。
ゾーンとインスタンスタイプをまたいでインスタンスを作成するために使用するリソースプールを指定します。
リソースプールは、単一のゾーンと単一のインスタンスタイプで構成されます。 1 つのリソースプールのリソースが不足している場合、自動プロビジョニンググループは、リソースが十分にある別のリソースプールを使用してインスタンスを作成します。 リソースプールが多いほど、インスタンスを作成できるオプションが増え、インスタンス作成の成功率が向上します。
重要単一のゾーン内では、1 つの vSwitch のみ指定できます。 同じゾーン内に複数の vSwitch を指定した場合、最初の vSwitch のみが有効になります。
自動プロビジョニンググループの目標容量と、さまざまなタイプの容量の比率を指定します。
目標容量は、インスタンス、vCPU、またはメモリサイズに基づいて指定できます。 自動プロビジョニングは、インスタンスタイプの重みを使用して、このインスタンスタイプの単一インスタンスの容量を示します。 重みには次のルールが適用されます。
目標容量がインスタンスに基づいて指定されている場合、すべてのインスタンスタイプの重みは同じです。
目標容量が vCPU の数に設定されている場合、インスタンスタイプの重みは vCPU の数によって異なります。 インスタンスタイプの vCPU が多いほど、インスタンスタイプの重みが高くなり、目標容量を満たすために必要なインスタンスタイプのインスタンスが少なくなります。
目標容量に vCPU やメモリなどの複数のインスタンスタイプファクターが関係している場合は、指定された各インスタンスタイプが目標容量に貢献できるコンピューティングパワーを評価し、各インスタンスタイプの重みを設定する必要があります。 重みが大きいほど、インスタンスタイプがより多くのコンピューティングパワーに貢献できることを示します。
説明CreateAutoProvisioningGroup オペレーションを呼び出すことによって自動プロビジョニンググループを作成する場合にのみ、インスタンスタイプの重みを指定できます。
従量課金インスタンスを使用して最小コンピューティングパワー要件を満たし、プリエンプティブルインスタンスを使用して残りの目標容量を満たすと、コストを大幅に削減できます。
プロビジョニングポリシーを指定します。
次の表に、自動プロビジョニングのプロビジョニングポリシーを示します。
ポリシー
適用対象
方法
説明
容量最適化ポリシー (capacity-optimized)
プリエンプティブルインスタンス
ECS コンソール (プリエンプティブルインスタンス): プロビジョニングポリシーを [容量最適化ポリシー] に設定します。
API オペレーション (プリエンプティブルインスタンス): SpotAllocationStrategy を capacity-optimized に設定します。
価格と再利用率に基づいて、最も費用対効果が高く、インスタンス作成の成功率が最も高いリソースプールを使用して、プリエンプティブルインスタンスを作成します。 これにより、プリエンプティブルインスタンスが再利用される可能性を効果的に減らし、安定した容量を確保できます。
バランス分散ポリシー (diversified)
プリエンプティブルインスタンス
ECS コンソール (プリエンプティブルインスタンス): プロビジョニングポリシーを [バランス分散ポリシー] に設定します。
API オペレーション (プリエンプティブルインスタンス): SpotAllocationStrategy を diversified に設定します。
複数のゾーンのリソースプールを均等に使用してインスタンスを作成します。 これにより、単一ゾーンのリソース不足によってインスタンス作成が失敗する可能性がなくなり、アプリケーションのディザスタリカバリ機能を効果的に向上させることができます。
コスト最適化ポリシー (lowest-price)
プリエンプティブルインスタンスと従量課金インスタンス
ECS コンソール (プリエンプティブルインスタンス): プロビジョニングポリシーを [コスト最適化ポリシー] に設定します。
API オペレーション (プリエンプティブルインスタンス): SpotAllocationStrategy を lowest-price に設定します。
API オペレーション (従量課金インスタンス): PayAsYouGoAllocationStrategy を lowest-price に設定します。
コストが最も低いリソースプールを使用してインスタンスを作成します。 これにより、コストを効果的に削減できます。 コストが最も低いリソースプールには、単価が最も低い vCPU があります。
CreateAutoProvisioningGroup オペレーションを呼び出すことによって自動プロビジョニンググループを作成する場合は、プリエンプティブルインスタンスのコスト最適化ポリシーを使用し、SpotInstancePoolsToUseCount パラメーターを構成して使用するリソースプールの数を指定できます。 コストが最も低い複数のリソースプールを使用してインスタンスを作成できます。
たとえば、自動プロビジョニンググループの目標容量として 100 個のプリエンプティブルインスタンスを指定し、SpotInstancePoolsToUseCount を 5 に設定します。 各リソースプールを使用して 20 個のインスタンスが作成されます。 リソースプールを使用して作成されたプリエンプティブルインスタンスが再利用されると、他のリソースプールを使用して作成されたプリエンプティブルインスタンスは引き続き使用可能です。 これにより、サービスの可用性を効果的に向上させることができます。
優先順位ベースのポリシー (prioritized)
従量課金インスタンス
API オペレーション (従量課金インスタンス): PayAsYouGoAllocationStrategy を prioritized に設定します。
リソースプールは、優先順位に基づいて降順で使用されます。 優先順位の高いリソースプールのリソースが不足している場合は、優先順位の低いリソースプールが使用されます。
CreateAutoProvisioningGroup オペレーションを呼び出し、LaunchTemplateConfig.N.Priority パラメーターを構成して、優先順位ベースのポリシーとリソースプールの優先順位を指定する必要があります。
重要CreateAutoProvisioningGroup オペレーションを呼び出して自動プロビジョニンググループを作成する場合にのみ、従量課金インスタンスのプロビジョニングポリシーを指定できます。 それ以外の場合は、デフォルトでコスト最適化ポリシーが使用されます。
1 時間あたりの最大価格を指定します。
単一のリソースプールまたはすべてのリソースプールに対して、プリエンプティブルインスタンスの 1 時間あたりの最大価格を指定できます。 指定された最大価格を超えた場合、目標容量が満たされていない場合でも、自動プロビジョニンググループはプリエンプティブルインスタンスの作成を停止します。 これにより、プロビジョニングされたリソースコストが予算内に収まります。
リザーブドインスタンスや節約プランなどの割引プランを使用して、従量課金インスタンスのコストを削減できます。 詳細については、「リザーブドインスタンスの概要」および「節約プランの概要」をご参照ください。
目標容量を維持するかどうかを指定します。
自動プロビジョニンググループのタイプは、「ワンタイム配信」または「継続的配信と容量維持」に設定できます。 自動プロビジョニンググループの作成時に「継続的配信と容量維持」を選択すると、自動プロビジョニンググループはインスタンスのヘルスステータスを自動的にチェックし、リアルタイム容量と目標容量を比較し、インスタンスを作成して目標容量を維持し、コンピューティングパワーのニーズを満たします。 インスタンスが異常になったり不足したりすると、自動プロビジョニンググループは自動的にインスタンスを作成して目標容量を維持します。
自動プロビジョニンググループは、起動後、指定されたプロビジョニングポリシーに基づいて適切なリソースプールを選択し、目標容量を満たすインスタンスをプロビジョニングします。 たとえば、MyLaunchTemplate 起動テンプレートを使用して 12 個のインスタンスを含むクラスタをプロビジョニングし、クラスタの可用性を向上させたい場合は、次の手順を実行して自動プロビジョニンググループを構成できます。
MyLaunchTemplate 起動テンプレートに基づいて複数のリソースプールを指定します。
プリエンプティブルインスタンスと従量課金インスタンスの容量の比率を指定します。
プロビジョニングポリシーを指定します。
制限
自動プロビジョニンググループは、リージョンをまたいでインスタンスをプロビジョニングできません。
自動プロビジョニンググループごとに、単一の起動テンプレートの指定されたバージョンをインスタンスの基本構成として指定できます。 ただし、起動テンプレートで指定されたインスタンスタイプに基づいて、複数のリソースプールを指定できます。
各自動プロビジョニンググループには、最大 20 個のリソースプールを含めることができます。 各リソースプールは、単一のゾーンと単一のインスタンスタイプの組み合わせです。
各自動プロビジョニンググループで最大 1,000 個のインスタンスを作成できます。
自動プロビジョニングの構成ガイドライン
次の操作を実行して、自動プロビジョニングを使用できます。
(条件付き必須) アカウントに自動プロビジョニング操作の権限を付与します。
RAM (Resource Access Management) ユーザーを使用する場合は、RAM ユーザーに自動プロビジョニンググループに対する操作を実行するための権限を付与する必要があります。 詳細については、「自動プロビジョニングのサービスロールを管理する」をご参照ください。
自動プロビジョニングのサービスロールを作成します。
詳細については、「自動プロビジョニングのサービスロールを管理する」をご参照ください。
インスタンス起動テンプレートを作成します。 次に、自動プロビジョニンググループを作成します。
詳細については、「自動プロビジョニンググループを作成する」をご参照ください。 ビジネス要件に基づいて自動プロビジョニンググループを作成できます。 詳細については、「自動プロビジョニンググループを構成する」をご参照ください。
次の操作を実行して、自動プロビジョニンググループを管理します。
参考資料
スケーリンググループを使用して、ビジネスの変化に基づいて ECS インスタンスの数を自動的に変更できます。 詳細については、「Auto Scaling とは」をご参照ください。
ECS インスタンスの作成方法については、「インスタンスを作成する」をご参照ください。