Met à jour la stratégie de mise à l'échelle automatique de l'application.
Description de l'opération
Remarques sur l'utilisation
Pour mettre à l'échelle une application au-delà de 50 instances, contactez le support technique de SAE pour être ajouté à la liste d'autorisation. Pour plus de détails, consultez Nous contacter.
Testez maintenant
Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale. Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale.
Test
Autorisation RAM
|
sae:UpdateApplicationScalingRule |
update |
*Application
|
Aucune | Aucune |
Syntaxe de la requête
PUT /pop/v1/sam/scale/applicationScalingRule HTTP/1.1
Paramètres de requête
|
Paramètre |
Type |
Requis |
Description |
Exemple |
| AppId |
string |
Oui |
L'identifiant de l'application. |
7171a6ca-d1cd-4928-8642-7d5cfe69**** |
| ScalingRuleName |
string |
Oui |
Le nom de la stratégie de mise à l'échelle automatique. Le nom doit commencer par une lettre minuscule, contenir uniquement des lettres minuscules, des chiffres et des traits d'union (-), et ne pas dépasser 32 caractères. Remarque
Vous ne pouvez pas modifier le nom d'une stratégie de mise à l'échelle automatique après sa création. |
timer-0800-2100 |
| ScalingRuleTimer |
string |
Non |
La configuration de la stratégie de mise à l'échelle planifiée. Ce paramètre est requis pour les stratégies de mise à l'échelle planifiée. Ce paramètre comprend les champs suivants :
|
{"beginDate":null,"endDate":null,"period":"* * *","schedules":[{"atTime":"08:00","targetReplicas":10},{"atTime":"20:00","targetReplicas":3}]} |
| ScalingRuleMetric |
string |
Non |
La configuration de la stratégie de mise à l'échelle basée sur des métriques. Ce paramètre est requis pour les stratégies de mise à l'échelle basées sur des métriques. Ce paramètre comprend les champs suivants :
Remarque
Si vous spécifiez plusieurs métriques, un scale-out est déclenché lorsqu'une métrique atteint sa cible. Le nombre d'instances ne dépassera pas maxReplicas. Un scale-in n'est déclenché que lorsque toutes les métriques sont inférieures à leurs cibles. Le nombre d'instances ne descendra pas en dessous de 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 |
Non |
Le nombre minimum d'instances qui doivent rester disponibles lors d'un déploiement progressif. Valeurs valides :
Remarque
Pour assurer la continuité des activités, nous vous recommandons de définir le nombre minimum d'instances survivantes pour chaque déploiement progressif sur 1 ou plus. |
3 |
| MinReadyInstanceRatio |
integer |
Non |
Le pourcentage minimum d'instances qui doivent rester disponibles lors d'un déploiement progressif. Valeurs valides :
Remarque
Si vous spécifiez à la fois MinReadyInstances et MinReadyInstanceRatio, et que MinReadyInstanceRatio n'est pas -1, MinReadyInstanceRatio est prioritaire. Par exemple, si MinReadyInstances est défini sur 5 et MinReadyInstanceRatio sur 50, le système utilise 50 % pour calculer le nombre minimum d'instances survivantes. |
-1 |
| EnableIdle |
boolean |
Non |
Indique si le mode inactif doit être activé ou désactivé. |
|
| ScalingRuleType |
string |
Non |
timing |
Éléments de réponse
|
Élément |
Type |
Description |
Exemple |
|
object |
Les informations renvoyées. |
||
| RequestId |
string |
L'identifiant de la requête. |
91F93257-7A4A-4BD3-9A7E-2F6EAE6D**** |
| TraceId |
string |
L'identifiant de trace utilisé pour interroger les détails de l'appel. |
0a98a02315955564772843261e**** |
| Data |
object |
Les données de réponse. |
|
| Timer |
object |
La configuration de la mise à l'échelle planifiée. |
|
| EndDate |
string |
The end date of the short-term scheduled scaling policy.
|
2021-04-25 |
| BeginDate |
string |
The start date of the short-term scheduled scaling policy.
|
2021-03-25 |
| Schedules |
array<object> |
The schedules for the scaling policy. |
|
|
object |
The configuration for a specific trigger schedule. |
||
| AtTime |
string |
The time at which the scaling action is triggered. Format: HH:mm. |
08:00 |
| TargetReplicas |
integer |
The target number of instances. |
3 |
| MinReplicas |
integer |
The minimum number of instances. |
1 |
| MaxReplicas |
integer |
The maximum number of instances. |
10 |
| Period |
string |
The recurrence schedule for the scaling policy.
|
* * * |
| UpdateTime |
integer |
L'heure de mise à jour de la stratégie de mise à l'échelle, en millisecondes. |
1616642248938 |
| AppId |
string |
L'identifiant de l'application. |
7171a6ca-d1cd-4928-8642-7d5cfe69**** |
| CreateTime |
integer |
L'heure de création de la stratégie de mise à l'échelle, en millisecondes. |
1616642248938 |
| LastDisableTime |
integer |
L'heure de la dernière désactivation de la stratégie de mise à l'échelle, en millisecondes. |
1641882854484 |
| ScaleRuleEnabled |
boolean |
Indique si la stratégie de mise à l'échelle est activée. Valeurs valides :
|
true |
| ScaleRuleType |
string |
Le type de la stratégie de mise à l'échelle. Valeurs valides :
|
timing |
| Metric |
object |
La configuration de la mise à l'échelle basée sur des métriques. |
|
| Metrics |
array<object> |
The metrics that trigger scaling actions. |
|
|
object |
The configuration for a specific metric trigger. |
||
| MetricTargetAverageUtilization |
integer |
The target value for the specified metric. The unit varies based on the metric type.
|
20 |
| MetricType |
string |
The metric that triggers the scaling policy. Valid values:
|
CPU |
| SlbProject |
string |
The name of the Log Service Project for SLB access logs. |
test |
| SlbLogstore |
string |
The name of the Logstore for SLB access logs. |
test |
| Vport |
string |
The SLB port. |
80 |
| SlbId |
string |
The SLB instance ID. |
lb-xxx |
| MaxReplicas |
integer |
The maximum number of instances. |
3 |
| MinReplicas |
integer |
The minimum number of instances. |
1 |
| ScaleRuleName |
string |
Le nom de la stratégie de mise à l'échelle. |
test |
| EnableIdle |
boolean |
Indique si le mode inactif doit être activé. |
|
| Message |
string |
Le message de réponse.
|
success |
| ErrorCode |
string |
Le code d'erreur.
|
|
| Code |
string |
Le code d'état HTTP ou un code d'erreur POP.
|
200 |
| Success |
boolean |
Indique si la requête a abouti. Valeurs valides :
|
true |
Exemples
JSON format
{
"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
}
Codes d'erreur
|
Code de statut HTTP |
Code d'erreur |
Message d'erreur |
Description |
|---|---|---|---|
| 400 | InvalidScalingRuleDate.BeginAfterEnd | The specified beginning time is later than the ending time. | The specified begin date is later than the end date. |
| 400 | InvalidScalingRuleDate.Format | The specified date is invalid. | The specified date is invalid. The correct format is yyyy-MM-dd . |
| 400 | InvalidScalingRuleName.NotFound | The specified ScalingRuleName does not exist. | 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. | 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. | The specified time is invalid. The correct format is HH:mm . |
| 400 | QuotaExceeded.ScalingRuleTime | The maximum number of scaling policy trigger time is exceeded. | Scaling rule time quota 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. | You can create %s instances for each application. please join the DingTalk group 32874633 for technical support. |
| 400 | NoComputeResourceQuota.User.Exceed | Your account is limited to create %s instances. Please submit a ticket to raise the quota. | Your account is limited to create %s instances. please join the DingTalk group 32874633 for technical support. |
| 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. | 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. | An application change process is in progress. Please try again later. |
Consultez Codes d'erreur pour la liste complète.
Notes de version
Consultez Notes de version pour la liste complète.