アプリケーションの auto scaling ポリシーの更新
操作説明
注意事項
アプリケーションを 50 インスタンスを超えてスケーリングするには、SAE テクニカルサポートに連絡してホワイトリストへの追加を依頼してください。詳細については、「お問い合わせ」をご参照ください。
今すぐお試しください
テスト
RAM 認証
|
アクション |
アクセスレベル |
リソースタイプ |
条件キー |
依存アクション |
|
sae:UpdateApplicationScalingRule |
update |
*Application
|
なし | なし |
リクエスト構文
PUT /pop/v1/sam/scale/applicationScalingRule HTTP/1.1
リクエストパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| AppId |
string |
必須 |
アプリケーション ID。 |
7171a6ca-d1cd-4928-8642-7d5cfe69**** |
| ScalingRuleName |
string |
必須 |
auto scaling ポリシーの名前。名前は小文字で始まり、小文字、数字、ハイフン (-) のみを含み、長さは 32 文字以内である必要があります。 説明
auto scaling ポリシー作成後の名前の変更はできません。 |
timer-0800-2100 |
| ScalingRuleTimer |
string |
任意 |
スケジュールされたスケーリングポリシーの構成。このパラメーターは、スケジュールされたスケーリングポリシーの場合に必須です。 このパラメーターには以下のフィールドが含まれます。
|
{"beginDate":null,"endDate":null,"period":"* * *","schedules":[{"atTime":"08:00","targetReplicas":10},{"atTime":"20:00","targetReplicas":3}]} |
| ScalingRuleMetric |
string |
任意 |
メトリクスベースのスケーリングポリシーの構成。このパラメーターは、メトリクスベースのスケーリングポリシーの場合に必須です。 このパラメーターには以下のフィールドが含まれます。
説明
複数のメトリックを指定した場合、いずれかのメトリックがターゲットに達するとスケールアウトがトリガーされ、インスタンス数は maxReplicas を超えません。スケールインは、すべてのメトリックがターゲットを下回った場合にのみトリガーされ、インスタンス数は minReplicas を下回りません。 |
{"maxReplicas":3,"minReplicas":1,"metrics":[{"metricType":"CPU","metricTargetAverageUtilization":20},{"metricType":"MEMORY","metricTargetAverageUtilization":30},{"metricType":"tcpActiveConn","metricTargetAverageUtilization":20},{"metricType":"SLB_QPS","MetricTargetAverageUtilization":25,"slbId":"lb-xxx","slbProject":"aliyun-fc-cn-hangzhou-d95881d9-5d3c-5f26-a6b8-************","slbLogstore":"function-log","vport":"80"},{"metricType":"SLB_RT","MetricTargetAverageUtilization":35,"slbId":"lb-xxx","slbProject":"aliyun-fc-cn-hangzhou-d95881d9-5d3c-5f26-a6b8-************","slbLogstore":"function-log","vport":"80"}],"scaleUpRules":{"step":"100","disabled":false,"stabilizationWindowSeconds":0},"scaleDownRules":{"step":"100","disabled":false,"stabilizationWindowSeconds":300}} |
| MinReadyInstances |
integer |
任意 |
ローリングデプロイ中に最低限維持される必要のあるインスタンス数。有効値:
説明
業務継続性を確保するため、ローリングデプロイ時の最小生存インスタンス数を 1 以上に設定することを推奨します。 |
3 |
| MinReadyInstanceRatio |
integer |
任意 |
ローリングデプロイ中に最低限維持される必要のあるインスタンスの割合(パーセント)。有効値:
説明
MinReadyInstances と MinReadyInstanceRatio の両方を指定し、かつ MinReadyInstanceRatio が -1 でない場合、MinReadyInstanceRatio が優先されます。たとえば、MinReadyInstances が 5、MinReadyInstanceRatio が 50 の場合、システムは 50% を使用して最小生存インスタンス数を計算します。 |
-1 |
| EnableIdle |
boolean |
任意 |
アイドルモードを有効または無効にするかどうかを指定します。 |
レスポンスフィールド
|
フィールド |
型 |
説明 |
例 |
|
object |
返された情報。 |
||
| RequestId |
string |
リクエスト ID。 |
91F93257-7A4A-4BD3-9A7E-2F6EAE6D**** |
| TraceId |
string |
呼び出し詳細を照会するために使用されるトレース ID。 |
0a98a02315955564772843261e**** |
| Data |
object |
レスポンスデータ。 |
|
| Timer |
object |
スケジュールされたスケーリングの構成。 |
|
| EndDate |
string |
短期スケジュールされたスケーリングポリシーの終了日。
|
2021-04-25 |
| BeginDate |
string |
短期スケジュールされたスケーリングポリシーの開始日。
|
2021-03-25 |
| Schedules |
array<object> |
スケーリングポリシーのスケジュール。 |
|
|
object |
特定のトリガースケジュールの構成。 |
||
| AtTime |
string |
スケーリングアクションがトリガーされる時刻。形式:HH:mm。 |
08:00 |
| TargetReplicas |
integer |
インスタンスのターゲット数。 |
3 |
| MinReplicas |
integer |
インスタンスの最小数。 |
1 |
| MaxReplicas |
integer |
インスタンスの最大数。 |
10 |
| Period |
string |
スケーリングポリシーの繰り返し頻度。
|
* * * |
| UpdateTime |
integer |
スケーリングポリシーが更新された時刻(ミリ秒)。 |
1616642248938 |
| AppId |
string |
アプリケーション ID。 |
7171a6ca-d1cd-4928-8642-7d5cfe69**** |
| CreateTime |
integer |
スケーリングポリシーが作成された時刻(ミリ秒)。 |
1616642248938 |
| LastDisableTime |
integer |
スケーリングポリシーが最後に無効化された時刻(ミリ秒)。 |
1641882854484 |
| ScaleRuleEnabled |
boolean |
スケーリングポリシーが有効かどうかを指定します。有効値:
|
true |
| ScaleRuleType |
string |
スケーリングポリシーのタイプ。有効値:
|
timing |
| Metric |
object |
メトリクスベースのスケーリングの構成。 |
|
| Metrics |
array<object> |
スケーリングアクションをトリガーするメトリック。 |
|
|
object |
特定のメトリックトリガーの構成。 |
||
| MetricTargetAverageUtilization |
integer |
指定されたメトリックのターゲット値。単位はメトリックタイプによって異なります。
|
20 |
| MetricType |
string |
スケーリングポリシーをトリガーするメトリック。有効値:
|
CPU |
| SlbProject |
string |
SLB アクセスログの Log Service プロジェクト名。 |
test |
| SlbLogstore |
string |
SLB アクセスログの Logstore 名。 |
test |
| Vport |
string |
SLB ポート。 |
80 |
| SlbId |
string |
SLB インスタンス ID。 |
lb-xxx |
| MaxReplicas |
integer |
インスタンスの最大数。 |
3 |
| MinReplicas |
integer |
インスタンスの最小数。 |
1 |
| ScaleRuleName |
string |
スケーリングポリシーの名前。 |
test |
| EnableIdle |
boolean |
アイドルモードを有効にするかどうかを指定します。 |
|
| Message |
string |
レスポンスメッセージ。
|
success |
| ErrorCode |
string |
エラーコード。
|
|
| Code |
string |
HTTP ステータスコードまたは POP エラーコード。
|
200 |
| Success |
boolean |
リクエストが成功したかどうかを指定します。有効値:
|
true |
例
成功レスポンス
JSONJSON
{
"RequestId": "91F93257-7A4A-4BD3-9A7E-2F6EAE6D****",
"TraceId": "0a98a02315955564772843261e****",
"Data": {
"Timer": {
"EndDate": "2021-04-25",
"BeginDate": "2021-03-25",
"Schedules": [
{
"AtTime": "08:00",
"TargetReplicas": 3,
"MinReplicas": 1,
"MaxReplicas": 10
}
],
"Period": "* * *"
},
"UpdateTime": 1616642248938,
"AppId": "7171a6ca-d1cd-4928-8642-7d5cfe69****",
"CreateTime": 1616642248938,
"LastDisableTime": 1641882854484,
"ScaleRuleEnabled": true,
"ScaleRuleType": "timing",
"Metric": {
"Metrics": [
{
"MetricTargetAverageUtilization": 20,
"MetricType": "CPU",
"SlbProject": "test",
"SlbLogstore": "test",
"Vport": "80",
"SlbId": "lb-xxx"
}
],
"MaxReplicas": 3,
"MinReplicas": 1
},
"ScaleRuleName": "test",
"EnableIdle": false
},
"Message": "success",
"ErrorCode": "",
"Code": "200",
"Success": true
}
エラーコード
|
HTTP ステータスコード |
エラーコード |
エラーメッセージ |
説明 |
|---|---|---|---|
| 400 | InvalidScalingRuleDate.BeginAfterEnd | The specified beginning time is later than the ending time. | |
| 400 | InvalidScalingRuleDate.Format | The specified date is invalid. | |
| 400 | InvalidScalingRuleName.NotFound | The specified ScalingRuleName does not exist. | |
| 400 | InvalidScalingRuleTime.Conflict | The specified scaling rule time is invalid. Another schedule has been set for the specified time range. Please set a different time. | |
| 400 | InvalidScalingRuleTime.Format | The specified time is invalid. | |
| 400 | QuotaExceeded.ScalingRuleTime | The maximum number of scaling policy trigger time is exceeded. | |
| 400 | NoComputeResourceQuota.Exceed | Your compute resource is insufficient. Please contact us to raise the quota. | |
| 400 | NoComputeResourceQuota.App.Exceed | You can create %s instances for each application. Please submit a ticket to raise the quota. | |
| 400 | NoComputeResourceQuota.User.Exceed | Your account is limited to create %s instances. Please submit a ticket to raise the quota. | |
| 400 | System.Upgrading | The system is being upgraded. Please try again later. | |
| 400 | MinReadyInstances.Not.Smaller.Replicas | The minimum number of available instances must be less than the number of application instances. | |
| 400 | MinReadyInstanceRatio.Invalid | The ratio of minimum available instances must be between 0 and 100. | |
| 400 | Application.ChangerOrderRunning | An application change process is in progress. Please try again later. | 日文说明1 |
完全なリストについては、「エラーコード」をご参照ください。
変更履歴
完全なリストについては、「変更履歴」をご参照ください。