このトピックでは、Auto Scaling のリソースとその使用方法について説明し、Auto Scaling のコアコンセプトと特徴を理解するのに役立ちます。
使用プロセス
スケーリンググループの作成時に [インスタンス設定ソース] パラメーターを [起動テンプレート] または [既存インスタンスの選択] に設定すると、スケーリング設定が自動的に作成され、アクティブになります。スケーリング設定を手動で再作成する必要はありません。スケーリンググループの作成プロセスが完了したら、スケーリンググループを直接有効にできます。
スケーリンググループの作成
スケーリンググループは、同様のビジネスシナリオで使用するために設計された同一のインスタンスで構成されます。スケーリンググループを作成する際に、インスタンスの最小数と最大数、スケールアウトイベントのテンプレート、スケールインポリシーなどの属性を定義できます。詳細については、「概要」をご参照ください。
スケーリング設定の作成
スケーリング設定は、Auto Scaling が Elastic Compute Service (ECS) インスタンスまたは Elastic Container Instance を自動的に起動するために使用するテンプレートです。詳細については、「概要」をご参照ください。
スケーリング設定の有効化
スケーリンググループにアクティブなスケーリング設定がない場合、スケーリンググループの作成後にスケーリング設定を有効にするよう求めるプロンプトが表示されます。スケーリンググループは複数のスケーリング設定を持つことができますが、一度にアクティブにできるのは 1 つだけです。詳細については、「スケーリング設定の管理」をご参照ください。
スケーリンググループの有効化
スケーリングイベントは、有効状態のスケーリンググループでのみ発生します。スケーリンググループにアクティブなスケーリング設定がある場合、グループを有効にするよう求められます。スケーリンググループページに移動して、スケーリンググループを手動で有効にすることもできます。詳細については、「スケーリンググループを有効にする」をご参照ください。
スケーリングルールの作成
スケーリングルールは、スケーリンググループ内のインスタンス数を調整するための操作を定義し、インスタンスの追加または削除の管理に役立ちます。詳細については、「概要」をご参照ください。
スケーリングルールの実行
スケーリングルールを実行するには、次のいずれかの方法を使用できます。詳細については、「スケーリングルールを実行する」をご参照ください。
手動実行: スケーリングルールを手動で実行します。この方法は、一時的なビジネスニーズへの対応に最適です。
スケジュールされたタスクに基づく自動実行: スケジュールされたタスクを設定して、指定した時間にスケーリングルールを実行します。この方法は、予測可能なパターンを持つワークロードの変動を管理するのに最適です。
監視タスクに基づく自動実行: 監視タスクを設定して、特定のメトリックをモニターし、アラートをレポートし、スケーリングルールを実行します。このアプローチは、予測不可能なパターンを持つワークロードの変動を処理するのに最適です。
シナリオ
シナリオの説明と例 | リファレンス |
一時的なビジネスニーズの場合、追加するサーバーの数と追加のタイミングは不確実であり、特にモニタリングに利用できるメトリックがない場合はなおさらです。このような場合、サーバー数を手動で調整する必要があります。 たとえば、企業が一時的なテスト目的で追加のサーバーを必要とする場合、サーバー調整の数とタイミングを決定するために手動での監視が必要です。 | |
ワークロードにピーク時とオフピーク時が特定できる予測可能な変動が見られる場合、Auto Scaling コンソールでスケジュールされたタスクを設定して、指定した時点で ECS インスタンスの数を調整できます。 たとえば、あるゲーム会社では、毎晩 18:00:00 から 23:00:00 にかけてビジネスワークロードが一貫して増加するため、この期間中に追加のサーバーが必要になります。この期間外は、通常の運用をサポートするために一定数のサーバーのみが必要です。 | |
動的なワークロードの変動を管理する場合、最適なサーバー数とスケーリングのタイミングを決定するのは困難な場合があります。リアルタイムのワークロードの変更に基づいてサーバー容量を調整したい場合は、Auto Scaling コンソールで監視タスクを作成できます。 たとえば、ニュースウェブサイトのトラフィックは非常に変動しやすく、ページビューはニュース速報で急増し、ニュースの速報性が薄れるにつれて減少します。 |