スケーリングルールのタイプによって、スケーリングルールの目的が決まります。 スケーリングルールを使用してスケーリングアクティビティをトリガーしたり、スケーリンググループの境界値を自動的に設定したりできます。 ビジネス要件に基づいて、さまざまなタイプのスケーリングルールを作成できます。 たとえば、スケーリンググループの境界値を設定する場合は、予測スケーリングルールが適切なオプションです。 このトピックでは、スケーリングルールを作成、実行、変更、および削除する方法について説明します。
背景情報
Auto Scalingでは、単純なスケーリングルール、ステップスケーリングルール、ターゲット追跡スケーリングルール、および予測スケーリングルールの種類がサポートされています。 詳細については、「概要」をご参照ください。
スケーリンググループがElastic Compute Service (ECS) タイプの場合、単純なスケーリングルール、ステップスケーリングルール、ターゲット追跡スケーリングルール、および予測スケーリングルールを作成できます。
スケーリンググループがElastic Container Instanceタイプの場合、単純なスケーリングルールとターゲット追跡スケーリングルールを作成できます。
スケーリンググループは、限られた数のスケーリングルールをサポートします。 スケーリングルールのクォータを表示するには、クォータセンターをご参照ください。
スケーリングルールの作成
Auto Scalingコンソールにログインします。
左側のナビゲーションウィンドウで、スケーリンググループをクリックします。
上部のナビゲーションバーで、リージョンを選択します。
スケーリングルールを作成するスケーリンググループを見つけて、アクション列の詳細をクリックします。
表示されるページの上部で、スケーリングルールとイベントトリガータスクタブをクリックします。
スケーリングルールタブで、スケーリングルールの作成をクリックします。
スケーリングルールの作成ダイアログボックスで、必要に応じてパラメーターを設定します。
ルール名テキストボックスに名前を入力します。。
ルール型を指定して必要に応じて関連するパラメータを設定します。
次の表に、各タイプのスケーリングルールのパラメーターを示します。
単純なスケーリングルールステップスケーリングルールターゲット追跡スケーリングルール予測スケーリングルールECSタイプのスケーリンググループとElastic Container Instanceタイプのスケーリンググループに対して、簡単なスケーリングルールを作成できます。
パラメーター
説明
操作
スケーリングルールが実行されたときに実行される操作。 有効な値:
Nインスタンスへの変更: スケーリングルールが実行されると、スケーリンググループ内のインスタンスの数がNに変更されます。スケーリンググループでは、各操作で最大1,000個のインスタンスを追加または削除できます。
[Nインスタンスの追加]: スケーリングルールが実行されると、Nインスタンスがスケーリンググループに追加されます。 スケーリンググループには、各操作で最大1,000個のインスタンスを追加できます。
Add N %: スケーリングルールが実行されると、スケーリンググループ内の既存のインスタンスがN % 追加されます。 スケーリンググループでは、各操作で最大1,000個のインスタンスを追加または削除できます。
[Nインスタンスの削除]: スケーリングルールを実行すると、スケーリンググループからNインスタンスが削除されます。 スケーリンググループでは、各操作で最大1,000個のインスタンスを削除できます。
削除N %: スケーリングルールが実行されると、スケーリンググループ内の既存のインスタンスのN % が削除されます。 スケーリンググループでは、各操作で最大1,000個のインスタンスを追加または削除できます。
[操作] パラメーターを [N % の追加] または [N % の削除] に設定した場合、[調整するインスタンスの最小数] パラメーターも設定する必要があります。
クールダウン時間
スケーリングルールのクールダウン期間。 単位は秒です。 このパラメーターはオプションです。 このパラメーターを指定しない場合、スケーリンググループのクールダウン期間が使用されます。 詳細については、「クールダウン期間」をご参照ください。
ECSタイプのスケーリンググループに対してのみステップスケーリングルールを作成できます。
パラメーター
説明
モニタリングタイプ
監視するメトリックのタイプ。 有効な値:
システムモニタリング: CloudMonitorによって提供されるシステムメトリクス。 [モニタリングタイプ] パラメーターを [システムモニタリング] に設定した場合、スケーリングルールにシステムイベントトリガータスクを指定できます。
カスタムモニタリング: CloudMonitorに報告されるカスタムメトリクス。 [モニタリングタイプ] パラメーターを [カスタムモニタリング] に設定した場合、スケーリングルールにカスタムイベントトリガータスクを指定できます。
開始時刻
イベントトリガータスクによってスケーリングルールがトリガーされるポイント。 イベントトリガータスクの条件は、ステップスケーリングの基礎として機能します。
たとえば、平均CPU使用率が3つの連続した間隔で80% 以上になったときにトリガーするようにステップスケーリングルールを設定できます。
使用可能なイベントトリガータスクがない場合は、ステップスケーリングルールのイベントトリガータスクを作成できます。 ステップスケーリングルールのイベントトリガータスクを作成するには、[開始時刻] テキストボックスの右側にある [イベントトリガータスクの作成] をクリックします。 詳細については、「イベントトリガータスクの管理」をご参照ください。
ステップスケーリングルールを使用してイベントトリガータスクが作成された場合、ルールに関連付けられたスケーリンググループは監視対象リソースであり、ステップスケーリングルールはタスクのトリガールールとして機能します。
操作
各スケーリングステップのステップ調整と警告違反。 イベントトリガータスクがトリガーされた後、Auto Scalingは指定された操作を実行し、インスタンスを段階的にスケールします。 少なくとも1つのステップ調整を指定する必要があります。
例:
平均CPU使用率が80% 以上90% 未満の場合、2つのECSインスタンスを追加します。
平均CPU使用率が90% 以上の場合、3つのECSインスタンスを追加します。
イベントトリガータスクのトリガー条件に基づいて、各スケーリングステップのアラート違反サイズを設定する必要があります。 たとえば、平均CPU使用率が3つの連続した間隔で80% を超えたときにイベントトリガータスクがトリガーされた場合、最初のスケーリングステップのアラートブリーチサイズの下限を80% 以上に設定します。
ステップスケーリングルールは、Nインスタンスへの変更、Nインスタンスの追加、Nインスタンスの削除、N % の既存インスタンスの追加、N % の既存インスタンスの削除など、単純なスケーリングルールと同じ操作をサポートします。
[操作] パラメーターを [N % の追加] または [N % の削除] に設定した場合、[調整するインスタンスの最小数] パラメーターも設定する必要があります。
インスタンスのウォームアップ時間
インスタンスがウォームアップ状態のままである期間 (秒単位) 。 この間、Auto Scalingはスケーリンググループにインスタンスを追加しますが、モニタリングデータはCloudMonitorに報告しません。 必要なインスタンス数を計算するとき、Auto Scalingは、ウォームアップ期間が終了するまでメトリック値の変動を防ぐために、ウォームアップ状態のインスタンスを合計数から除外します。
たとえば、ステップスケーリングルールの [インスタンスウォームアップ時間] パラメーターを300秒に設定した場合、Auto scalingは、300秒のウォームアップ期間中のスケーリンググループの平均CPU使用率の計算に、新しく作成された2つのインスタンスの平均CPU使用率を含めません。
ECSタイプのスケーリンググループとElastic Container Instanceタイプのスケーリンググループのターゲットトラッキングスケーリングルールを作成できます。
パラメーター
説明
メトリックタイプ
監視するメトリックのタイプ。 スケーリンググループのタイプに基づいてCloudMonitorメトリックを選択します。
スケーリンググループがECSタイプの場合、次のメトリックがサポートされます。
(ECS) 平均CPU使用率 単位: % 。
(ECS) 平均受信内部トラフィック単位: KB /分。
(ECS) 平均アウトバウンド内部トラフィック。 単位: KB/min。
(ECS) 平均受信パブリックトラフィック。 単位: KB/min。
(ECS) 平均送信パブリックトラフィック。 単位: KB/min。
(ALB) バックエンドサーバーごとのQPS。 単位: カウント /秒。
スケーリンググループがElastic Container Instanceタイプの場合、次のメトリクスがサポートされます。
CPU使用率。 単位: % 。
メモリ。 単位: % 。
(ALB) バックエンドサーバーごとのQPS。 単位: queries/s。
メトリックタイプパラメーターを (ALB) QPS per Backend Serverに設定した場合は、ALB Server Groupパラメーターも設定する必要があります。
ターゲット値
メトリックのターゲット値。 Auto Scalingは、監視対象メトリックの値を目標値に近づけます。
インスタンスのウォームアップ時間
インスタンスがウォームアップ状態のままである期間 (秒単位) 。 この間、Auto Scalingはスケーリンググループにインスタンスを追加しますが、モニタリングデータはCloudMonitorに報告しません。 必要なインスタンス数を計算するとき、Auto Scalingは、ウォームアップ期間が終了するまでメトリック値の変動を防ぐために、ウォームアップ状態のインスタンスを合計数から除外します。
スケールアウトアラートのしきい値
スケールアウトイベントがトリガーされるまでにアラート条件が連続して満たされる必要がある回数。 ターゲット追跡スケーリングルールが作成されると、イベントトリガータスクが自動的に作成され、ターゲット追跡スケーリングルールに関連付けられます。
スケールインアラートのしきい値
スケールインイベントがトリガーされるまでにアラート条件が連続して満たされなければならない回数。 ターゲット追跡スケーリングルールが作成されると、イベントトリガータスクが自動的に作成され、ターゲット追跡スケーリングルールに関連付けられます。
スケールインの無効化
スケールインを無効にするかどうかを指定します。 この機能は、自動的に作成されるイベントトリガータスクの数に影響します。
スケールインの無効化機能を有効にした場合、Auto Scalingは、ターゲット追跡スケーリングルールに関連付けるスケールアウトイベント用のイベントトリガータスクを1つだけ作成します。
スケールインの無効化機能を無効にすると、Auto Scalingはスケールアウトイベント用に1つのイベントトリガータスクを作成し、スケールイン用に1つのイベントトリガータスクを作成してターゲット追跡スケーリングルールに関連付けます。
ECSタイプのスケーリンググループに対してのみ、予測スケーリングルールを作成できます。 スケーリンググループごとに作成できる予測スケーリングルールは1つだけです。
パラメーター
説明
既存のターゲット追跡スケーリングルールの参照
既存のターゲット追跡スケーリングルールを参照するかどうかを指定します。 このパラメーターはオプションです。 ターゲット追跡スケーリングルールがスケーリンググループに存在する場合、予測スケーリングルールは、ターゲット追跡スケーリングルールに指定されているメトリックタイプおよびターゲット値パラメーターの値を継承できます。
ルールの選択
このパラメーターは、[既存のターゲット追跡スケーリングルールの参照] 機能を有効にした後にのみ使用できます。 既存のターゲット追跡スケーリングルールを選択して、予測スケーリングルールの [メトリックタイプ] および [ターゲット値] フィールドを自動的に入力できます。 このパラメーターはオプションです。
メトリックタイプ
メトリックのタイプ。 有効な値:
(ECS) 平均CPU使用率 単位: % 。
(ECS) 平均受信内部トラフィック単位: KB /分。
(ECS) 平均アウトバウンド内部トラフィック。 単位: KB/min。
ターゲット値
メトリックのターゲット値。 予測スケーリングルールが実行されると、Auto scalingは、この目標値およびその他の要因に基づいて、スケーリングするインスタンスの数を計算します。
Target Valueパラメーターを変更すると、Auto Scalingは既存の予測タスクを削除し、1時間以内に新しい予測タスクを作成します。
予測モード
予測スケーリングルールが機能するモード。 有効な値:
予測のみ: 予測を生成しますが、予測タスクは作成しません。
予測とスケール: 予測を生成し、予測タスクを作成します。
予測がビジネス要件を満たすことを確認した後、[予測のみ] を選択し、値を [予測とスケール] に変更することを推奨します。 予測スケーリングルールの詳細ページで、予測がビジネス要件を満たしているかどうかを確認できます。 詳細については、「予測スケーリングルールの予測の表示」をご参照ください。
プリセット最大容量
スケーリンググループで許可されるインスタンスの最大数。 このパラメーターは、Maximum Capacity Handling Methodパラメーターと共に使用されます。
このパラメーターを空のままにすると、スケーリンググループに指定されたインスタンスの現在の最大数が使用されます。
最大容量処理方法
予測値がプリセットの最大容量を超えた場合、予測値またはプリセットの最大容量を使用するかどうかを指定します。 有効な値:
Predicted Capacity Overwrites Preset Max Capacity: 予測値がプリセットされた最大容量を超える場合、予測値を使用します。
Preset Max Capacity Overwrites Predicted Capacity: 予測値がプリセット最大容量を超える場合、プリセット最大容量を使用します。
[Predicted Capacity with Additional Ratio]: 特定の比率だけ増加した予測値を使用します。 この値を選択した場合、[増加率] パラメーターを設定する必要があります。
デフォルト値: 予測容量がプリセット最大容量に上書きされます。
増加率
予測値の増加率。 このパラメーターは、[最大容量処理方法] パラメーターを [追加比率の予測容量] に設定した場合にのみ使用できます。 この比率だけ増加する予測値は、予測タスクが次に実行されるときに使用される。 たとえば、予測値が100で、増加率パラメーターを10% に設定した場合、予測タスクの次回の実行時に使用される予測値が110されます。
有効値: 0~100。 デフォルト値:0 単位: % 。
起動前の時間
予測スケーリングルールによって作成された予測タスクが事前に起動される期間。 デフォルトでは、予測タスクは1時間に実行されます。 事前起動時間パラメーターを設定して、予測タスクを事前に起動し、リソースを事前に準備することができます。
単位:分 デフォルト値:0 最大値: 60。
OKをクリックします。
スケーリングルールを作成すると、[スケーリングルール] タブにスケーリングルールが表示されます。 スケーリングルールのIDをクリックすると、スケーリングルールのルールタイプ、一意の識別子、実行時間、スケーリング操作などの情報を表示できます。
スケーリングルールの実行
注意事項
スケーリングルールを実行して、ECSインスタンスまたはエラスティックコンテナインスタンスの数を手動または自動で調整できます。 単純なスケーリングとステップスケーリングルールは手動で実行する必要があります。 Auto Scalingは、ターゲットトラッキングルールと予測スケーリングルールのみを実行できます。
スケーリングルールを実行する前に、次の項目に注意してください。
Alibaba Cloudアカウント内で料金滞納はありません。 料金滞納の場合、実行は失敗します。 期待どおりにAuto Scalingを使用するには、Alibaba Cloudアカウントに十分な残高があることを確認してください。
実行するスケーリングルールが属するスケーリンググループは、[有効] 状態である必要があります。
スケーリンググループに対して [期待インスタンス数] 機能が有効になっている場合、スケーリングルールを実行するときに、スケーリンググループに進行中のスケーリングアクティビティがない必要があります。 スケーリンググループの [期待インスタンス数] 機能が無効になっている場合、スケーリングルールを実行するときに、スケーリンググループに進行中の非並列スケーリングアクティビティがない必要があります。 詳細については、「期待インスタンス数」をご参照ください。
手順
次のセクションでは、さまざまなシナリオでスケーリングルールを実行する方法について説明します。
手動実行: ECSインスタンスまたはエラスティックコンテナインスタンスの数をスケジュール外に調整する場合は、スケーリングルールを手動で実行できます。 スケーリンググループに進行中のスケーリングアクティビティがない場合、指定されたクールダウン期間を無視してすぐにスケーリングルールを実行できます。 指定されたクールダウン期間内に、Auto ScalingはCloudMonitorイベントトリガータスクによって開始されたスケーリングリクエストを拒否します。
自動実行: ビジネスに特定のパターンがある場合、スケーリングルールを自動的に実行するようにスケジュールタスクを設定できます。 ビジネスに特定のパターンがない場合は、イベントトリガータスクを設定して、スケーリングルールを自動的に実行できます。
Auto Scalingコンソールにログインします。
左側のナビゲーションウィンドウで、スケーリンググループをクリックします。
上部のナビゲーションバーで、リージョンを選択します。
スケーリングルールを実行するスケーリンググループを見つけて、アクション列の詳細をクリックします。
表示されるページの上部で、スケーリングルールとイベントトリガータスクタブをクリックします。
スケーリングルールタブで、実行するスケーリングルールを見つけて、アクション列の実行をクリックします。
スケーリングルールの実行メッセージで、OKをクリックします。
実行方法 | 説明 |
スケーリングルールを実行するようにスケジュールされたタスクを設定する | スケジュールタスクを作成するときは、タスクでスケーリングルールを指定します。 Auto Scalingは、指定された時点でスケーリングルールを自動的に実行します。 スケジュールタスクの作成方法の詳細については、「スケジュールタスクの設定」をご参照ください。 |
スケーリングルールを実行するようにイベントトリガータスクを設定する | イベントトリガータスクを作成するときは、タスクでスケーリングルールを指定します。 Auto Scalingは、タスクのアラート条件が満たされると、スケーリングルールを自動的に実行します。 イベントトリガータスクの作成方法の詳細については、「イベントトリガータスクの管理」をご参照ください。 イベントトリガータスク機能の詳細については、「概要」をご参照ください。 |
スケーリングルールの変更または削除
スケーリングルールがビジネス要件を満たさなくなった場合は、新しいルールを作成せずにパラメーター設定を変更できます。
スケーリングルールが不要になった場合は、スケーリングルクォータを解放するためにスケーリングルールを削除できます。
Auto Scalingコンソールにログインします。
左側のナビゲーションウィンドウで、スケーリンググループをクリックします。
上部のナビゲーションバーで、リージョンを選択します。
スケーリングルールを変更または削除するスケーリンググループを見つけて、アクション列の詳細をクリックします。
表示されるページの上部で、スケーリングルールとイベントトリガータスクタブをクリックします。
スケーリングルールタブで、スケーリングルールを変更または削除します。
スケーリングルールの変更スケーリングルールの削除変更するスケーリングルールを見つけて、[操作] 列の [編集] をクリックします。
[スケーリングルールの編集] ダイアログボックスで、ビジネス要件に基づいてパラメーター設定を変更し、[OK] をクリックします。
特定のパラメーターの詳細については、「スケーリングルールの作成」をご参照ください。
どのタイプのスケーリングルールに対しても、[ルールタイプ] パラメーターの設定を変更することはできません。 ステップスケーリングルールの [開始時間] パラメーターの設定は変更できません。
削除するスケーリングルールを見つけて、[操作] 列の [削除] をクリックします。
[スケーリングルールの削除] メッセージで、[OK] をクリックします。