スケーリングルールの機能はタイプによって決まります。タイプは、スケーリングアクティビティのトリガー、またはスケーリンググループの境界値のインテリジェントな設定に使用できます。ビジネス要件に応じて、CreateScalingRule API を呼び出し、さまざまなタイプのスケーリングルールを作成できます。たとえば、スケーリンググループの境界値の設定のみが必要な場合は、予測ルールを選択することを推奨します。
操作説明
スケーリングルールは、N 個のインスタンスを追加または削除するなど、特定のスケールアウトまたはスケールイン操作を定義します。スケーリングルールを実行した結果、スケーリンググループ内の ECS または ECI インスタンス数が MinSize を下回るか MaxSize を超える場合、自動スケーリングは、インスタンス数が MinSize または MaxSize に達するよう、追加または削除する ECS または ECI インスタンス数を調整します。ただし、スケーリングルールの設定値は変更されません。以下に例を示します。
MaxSize=3、現在の Total Capacity が 2 のスケーリンググループで、スケーリングルールが ECS インスタンスを 3 個追加するように指定している場合、実行時に実際に追加される ECS インスタンスは 1 個のみですが、スケーリングルールの設定値は 3 のままです。
MinSize=2、現在の Total Capacity が 3 のスケーリンググループで、スケーリングルールが ECS インスタンスを 5 個削除するように指定している場合、実行時に実際に削除される ECS インスタンスは 1 個のみですが、スケーリングルールの設定値は 5 のままです。
パラメーターの詳細は次のとおりです。
AdjustmentType が TotalCapacity の場合、スケーリンググループ内の ECS または ECI インスタンスの現在の数を、指定した数量に調整します。AdjustmentValue は 0 以上である必要があります。
AdjustmentType が QuantityChangeInCapacity または PercentChangeInCapacity の場合、AdjustmentValue が正の値であればインスタンスを追加し、負の値であればインスタンスを削除します。
AdjustmentType が PercentChangeInCapacity の場合、自動スケーリングは、現在のインスタンス数 (Total Capacity) に AdjustmentValue/100 を乗算し、丸め処理を適用して、追加または削除する ECS または ECI インスタンス数を計算します。
スケーリングルールでクールダウン時間 (Cooldown) が指定されている場合、このルールによってトリガーされたスケーリングアクティビティの完了後、スケーリンググループは指定された期間のクールダウンに入ります。スケーリングルールでクールダウン時間が指定されていない場合は、スケーリンググループのデフォルトのクールダウン時間 (DefaultCooldown) が使用されます。
スケーリンググループ内で作成できるスケーリングルールの数には制限があります。詳細については、「制限」をご参照ください。
- スケーリングルールから返される一意の識別子 (ScalingRuleAri) は、次の API で使用できます:
ExecuteScalingRule を呼び出してスケーリングルールを手動で実行する際に、ScalingRuleAri パラメーターに指定します。
指定した時刻にスケーリングルールを実行するスケジュールされたタスク (CreateScheduledTask) を作成する際に、ScheduledAction パラメーター内で指定します。
今すぐお試しください
テスト
RAM 認証
|
アクション |
アクセスレベル |
リソースタイプ |
条件キー |
依存アクション |
|
ess:CreateScalingRule |
create |
*ScalingGroup
|
なし | なし |
リクエストパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| ScalingGroupId |
string |
必須 |
スケーリングルールが属するスケーリンググループの ID です。 |
asg-bp1ffogfdauy0jw0**** |
| ScalingRuleName |
string |
任意 |
スケーリングルールの名前です。名前は 2 ~ 64 文字で、英字、数字、アンダースコア (_)、ハイフン (-)、ピリオド (.) を使用できます。名前は英字または数字で始まる必要があります。 スケーリングルール名は、同一リージョン内の同一アカウントにおいて一意である必要があります。 このパラメーターを空のままにすると、スケーリングルール ID が使用されます。 |
scalingrule**** |
| Cooldown |
integer |
任意 |
スケーリングルールのクールダウン時間です。このパラメーターは、 デフォルト値はありません。 |
60 |
| MinAdjustmentMagnitude |
integer |
任意 |
|
1 |
| AdjustmentType |
string |
任意 |
スケーリングルールのスケーリング方法です。このパラメーターは、
|
QuantityChangeInCapacity |
| AdjustmentValue |
integer |
任意 |
スケーリングルールに基づいてスケーリングされるインスタンスの数です。このパラメーターは、
|
100 |
| ScalingRuleType |
string |
任意 |
スケーリングルールのタイプです。有効な値:
デフォルト値: |
SimpleScalingRule |
| EstimatedInstanceWarmup |
integer |
任意 |
インスタンスのウォームアップ期間です。このパラメーターは、 説明
Auto Scaling はスケーリングされる ECS インスタンスの数を計算します。ウォームアップ状態の ECS インスタンスは、スケーリンググループの現在のキャパシティにはカウントされません。 有効な値:0 ~ 86400。単位:秒。 デフォルト値:300。 |
300 |
| MetricName |
string |
任意 |
監視対象の事前定義済みメトリクスです。
詳細については、「システム監視タイプのイベントトリガータスク」をご参照ください。 |
CpuUtilization |
| TargetValue |
number |
任意 |
目標値です。このパラメーターは、 |
0.125 |
| DisableScaleIn |
boolean |
任意 |
スケールインを無効にするかどうかを指定します。このパラメーターは、 デフォルト値:false。 |
false |
| ScaleInEvaluationCount |
integer |
任意 |
スケールインアクティビティ用のイベントトリガータスクがアラートをトリガーするまでに、しきい値条件を連続で満たす必要がある回数です。ターゲット追跡スケーリングルールが作成されると、イベントトリガータスクが自動的に作成され、ターゲット追跡スケーリングルールに関連付けられます。 デフォルト値:15。 |
15 |
| ScaleOutEvaluationCount |
integer |
任意 |
スケールアウトアクティビティ用のイベントトリガータスクがアラートをトリガーするまでに、しきい値条件を連続で満たす必要がある回数です。ターゲット追跡スケーリングルールが作成されると、イベントトリガータスクが自動的に作成され、ターゲット追跡スケーリングルールに関連付けられます。 デフォルト値:3。 |
3 |
| PredictiveScalingMode |
string |
任意 |
予測スケーリングルールのモードです。有効な値:
デフォルト値: |
PredictAndScale |
| PredictiveValueBehavior |
string |
任意 |
予測タスクの最大値の動作です。有効な値:
デフォルト値: |
MaxOverridePredictiveValue |
| PredictiveValueBuffer |
integer |
任意 |
デフォルト値:0。 |
50 |
| PredictiveTaskBufferTime |
integer |
任意 |
予測タスクが実行される前のバッファ時間です。デフォルトでは、予測スケーリングルール用に自動的に作成されたすべての予測タスクは毎正時に実行されます。予測タスクが実行される前のリソース準備のためのバッファ時間を指定できます。有効な値:0 ~ 60。単位:分。 デフォルト値:0。 |
30 |
| InitialMaxSize |
integer |
任意 |
スケーリンググループに含めることができる ECS インスタンスの最大数です。 このパラメーターのデフォルト値は |
100 |
| StepAdjustments |
array<object> |
任意 |
ステップ調整の詳細です。 |
|
|
object |
任意 |
ステップ調整の詳細です。 |
||
| MetricIntervalUpperBound |
number |
任意 |
ステップ調整における上限値です。有効な値:-9.999999E18 ~ 9.999999E18。 |
5.0 |
| ScalingAdjustment |
integer |
任意 |
ステップ調整でスケーリングされる ECS インスタンスの数です。このパラメーターは、 |
1 |
| MetricIntervalLowerBound |
number |
任意 |
ステップ調整における下限値です。このパラメーターは、 |
1.0 |
| RegionId |
string |
任意 |
スケーリンググループのリージョン ID です。 |
cn-hangzhou |
| AlarmDimensions |
array<object> |
任意 |
メトリックディメンションです。このパラメーターは、ターゲット追跡スケーリングルールに適用されます。事前定義済みメトリクスに追加のディメンションが必要な場合は、このパラメーターを指定する必要があります。例えば、事前定義済みメトリクスとして |
|
|
object |
任意 |
監視メトリクスのディメンションです。このパラメーターはターゲット追跡ルールに適用され、メトリクスに追加のディメンション情報が必要な場合に使用されます。例えば、 |
||
| DimensionKey |
string |
任意 |
メトリックディメンションのキーです。 |
rulePool |
| DimensionValue |
string |
任意 |
メトリックディメンションの値です。 |
sgp-l1cbirz451yxuxxx |
| MetricType |
string |
任意 |
メトリクスのタイプです。有効な値:
|
system |
| HybridMonitorNamespace |
string |
任意 |
ハイブリッドクラウドモニタリング名前空間の ID です。 ハイブリッドクラウドモニタリング名前空間の管理方法については、「名前空間の管理」をご参照ください。 |
aliyun-test |
| HybridMetrics |
array<object> |
任意 |
ハイブリッドクラウドモニタリングメトリクスです。詳細については、「カスタムターゲット追跡スケーリングルールの作成」をご参照ください。 |
|
|
array<object> |
任意 |
|||
| Id |
string |
任意 |
メトリクス式内のメトリクスの参照 ID です。 |
a |
| Expression |
string |
任意 |
複数のハイブリッドクラウドモニタリングメトリクスで構成されるメトリクス式です。スケーリングイベントをトリガーするために使用される結果を計算します。 式は逆ポーランド記法 (RPN) 形式で記述する必要があり、次の演算子のみをサポートします: |
(a+b)/2 |
| MetricName |
string |
任意 |
ハイブリッドクラウドモニタリングのメトリクス名です。 |
AliyunSmq_NumberOfMessagesVisible |
| Statistic |
string |
任意 |
メトリクス値の統計方法です。有効な値:
|
Average |
| Dimensions |
array<object> |
任意 |
メトリックディメンションです。このパラメーターを使用して、監視対象のリソースを指定できます。 |
|
|
object |
任意 |
|||
| DimensionKey |
string |
任意 |
メトリックディメンションのキーです。 |
queue |
| DimensionValue |
string |
任意 |
メトリックディメンションの値です。 |
testQueue |
| AlarmOptions |
object |
任意 |
アラートプロパティの定義です。 |
|
| Period |
integer |
任意 |
ターゲット追跡ルールで監視メトリクスデータを集計する期間です (秒単位)。有効な値:
説明
デフォルト値:60。 |
60 |
レスポンスフィールド
|
フィールド |
型 |
説明 |
例 |
|
object |
|||
| ScalingRuleAri |
string |
スケーリングルールのグローバルに一意なリソース識別子 (ARI) です。 |
ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7**** |
| RequestId |
string |
リクエストの ID です。 |
473469C7-AA6F-4DC5-B3DB-A3DC0DE3**** |
| ScalingRuleId |
string |
システムによって生成されるスケーリングルールの ID です。 |
asr-bp1dvirgwkoowxk7**** |
例
成功レスポンス
JSONJSON
{
"ScalingRuleAri": "ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****",
"RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****",
"ScalingRuleId": "asr-bp1dvirgwkoowxk7****"
}
エラーコード
完全なリストについては、「エラーコード」をご参照ください。
変更履歴
完全なリストについては、「変更履歴」をご参照ください。