Créez une règle de mise à l'échelle pour Auto Scaling (ESS).
Syntaxe
{
"Type": "ALIYUN::ESS::ScalingRule",
"Properties": {
"AdjustmentValue": Integer,
"Cooldown": Integer,
"ScalingGroupId": String,
"AdjustmentType": String,
"ScalingRuleName": String,
"MetricName": String,
"PredictiveTaskBufferTime": Integer,
"ScalingRuleType": String,
"PredictiveValueBuffer": Integer,
"TargetValue": Number,
"StepAdjustment": List,
"PredictiveValueBehavior": String,
"DisableScaleIn": Boolean,
"InitialMaxSize": Integer,
"MinAdjustmentMagnitude": Integer,
"EstimatedInstanceWarmup": Integer,
"PredictiveScalingMode": String,
"ScaleInEvaluationCount": Integer,
"ScaleOutEvaluationCount": Integer
}
}
Propriétés
| Nom de la propriété | Type | Obligatoire | Mise à jour autorisée | Description | Contraintes |
| AdjustmentValue | Integer | Non | Oui |
Valeur d'ajustement. S'applique aux règles de mise à l'échelle simples et par paliers. |
Les valeurs valides varient selon AdjustmentType :
Remarque Le nombre d'instances ECS ajustées lors d'une seule activité de mise à l'échelle ne peut pas dépasser 500. |
| Cooldown | Integer | Non | Oui | Durée de refroidissement. S'applique uniquement aux règles de mise à l'échelle simples. | Valeurs valides : 0 à 86400. Unité : secondes. La valeur par défaut est vide. |
| ScalingGroupId | String | Oui | Non | ID du groupe de mise à l'échelle auquel la règle appartient. | Aucune |
| AdjustmentType | String | Non | Oui | Méthode d'ajustement. S'applique aux règles de mise à l'échelle simples et par paliers. | Valeurs valides :
|
| ScalingRuleName | String | Non | Oui | Nom de la règle de mise à l'échelle. | Le nom doit comporter entre 2 et 64 caractères. Il peut contenir des lettres, des chiffres, des traits de soulignement (_), des tirets (-) et des points (.). Le nom doit commencer par une lettre ou un chiffre. Si vous ne spécifiez pas ce paramètre, la valeur de ScalingRuleId est utilisée par défaut. |
| MetricName | String | Non | Non | Métrique prédéfinie. S'applique aux règles de mise à l'échelle par suivi de cible et prédictives. | Valeurs valides :
|
| PredictiveTaskBufferTime | Integer | Non | Non | Une règle de mise à l'échelle prédictive crée automatiquement une tâche prédictive qui s'exécute à l'heure pile. Définissez un temps tampon pour exécuter la tâche à l'avance et préparer les ressources. | Valeurs valides : 0 à 60. Unité : minutes. Valeur par défaut : 0. |
| ScalingRuleType | String | Non | Non | Type de la règle de mise à l'échelle. | Valeurs valides :
|
| PredictiveValueBuffer | Integer | Non | Non | Pourcentage d'augmentation de la valeur prédite. Prend effet uniquement lorsque PredictiveValueBehavior est défini sur PredictiveValueOverrideMaxWithBuffer. Si la valeur augmentée est supérieure à la valeur maximale initiale, la valeur augmentée est utilisée. | Valeurs valides : 0 à 100. Valeur par défaut : 0. |
| TargetValue | Number | Non | Non | Valeur cible. S'applique aux règles de mise à l'échelle par suivi de cible et prédictives. | La valeur de TargetValue peut comporter jusqu'à trois décimales et doit être supérieure à 0. |
| StepAdjustment | List | Non | Non | Procédure | Pour plus d'informations, consultez Propriétés StepAdjustment. |
| PredictiveValueBehavior | String | Non | Non | Action à effectuer sur la valeur maximale pour une règle de mise à l'échelle prédictive. | Valeurs valides :
|
| DisableScaleIn | Boolean | Non | Non | Indique s'il faut désactiver la réduction de capacité (scale-in). S'applique uniquement aux règles de mise à l'échelle par suivi de cible. | Valeurs valides :
|
| InitialMaxSize | Integer | Non | Non | Nombre maximal d'instances dans le groupe de mise à l'échelle. Utilisé avec PredictiveValueBehavior. | La valeur par défaut est le nombre maximal d'instances (MaxSize) du groupe de mise à l'échelle. |
| MinAdjustmentMagnitude | Integer | Non | Non | Nombre minimal d'instances à ajuster. | Ce paramètre prend effet uniquement lorsque ScalingRuleType est SimpleScalingRule ou StepScalingRule et que AdjustmentType est PercentChangeInCapacity. |
| EstimatedInstanceWarmup | Integer | Non | Non | Période de rodage pour les instances nouvellement ajoutées. S'applique aux règles de mise à l'échelle par suivi de cible et par paliers. | Valeurs valides : 0 à 86 400. Unité : secondes. Valeur par défaut : 300.Une instance ECS en état de rodage est ajoutée au groupe de mise à l'échelle comme d'habitude, mais ses données de surveillance ne sont pas signalées à CloudMonitor pendant cette période. Remarque Lorsque le nombre d'instances ECS à mettre à l'échelle est calculé dynamiquement, les instances en état de rodage ne sont pas comptabilisées dans le nombre actuel d'instances. |
| PredictiveScalingMode | String | Non | Non | Mode de la règle de mise à l'échelle prédictive. | Valeurs valides :
|
| ScaleInEvaluationCount | Integer | Non | Oui | Nombre de fois consécutives où le seuil doit être atteint avant qu'une tâche déclenchée par événement de réduction de capacité (scale-in) ne soit déclenchée. | Après avoir créé une règle de mise à l'échelle par suivi de cible, une tâche déclenchée par événement est automatiquement créée. Valeur par défaut : 15. |
| ScaleOutEvaluationCount | Integer | Non | Oui | Nombre de fois consécutives où le seuil doit être atteint avant qu'une tâche déclenchée par événement d'extension de capacité (scale-out) ne soit déclenchée. | Après avoir créé une règle de mise à l'échelle par suivi de cible, une tâche déclenchée par événement est automatiquement créée. Valeur par défaut : 3. |
Syntaxe StepAdjustment
"StepAdjustment": [
{
"MetricIntervalUpperBound": Number,
"ScalingAdjustment": Integer,
"MetricIntervalLowerBound": Number
}
]
Propriétés StepAdjustment
| Nom de la propriété | Type | Obligatoire | Mise à jour autorisée | Description | Contraintes |
| MetricIntervalUpperBound | Number | Non | Non | Limite supérieure du palier. S'applique uniquement aux règles de mise à l'échelle par paliers. | Valeurs valides : -9,999999E18 à 9,999999E18. |
| ScalingAdjustment | Integer | Non | Non | Nombre d'instances à ajouter dans le palier. S'applique uniquement aux règles de mise à l'échelle par paliers. | Aucune |
| MetricIntervalLowerBound | Number | Non | Non | Limite inférieure du palier. S'applique uniquement aux règles de mise à l'échelle par paliers. | Valeurs valides : -9,999999E18 à 9,999999E18. |
Valeurs de retour
Fn::GetAtt
ScalingRuleAri : identifiant unique de la règle de mise à l'échelle.
ScalingRuleId : ID généré par le système, globalement unique, de la règle de mise à l'échelle.
Exemples
-
YAMLformatROSTemplateFormatVersion: '2015-09-01' Description: Test ESS ScalingRule Parameters: AutoScalingGroupId: Type: String AssociationProperty: ALIYUN::ESS::AutoScalingGroup::AutoScalingGroupId Resources: ScalingRule: Type: ALIYUN::ESS::ScalingRule Properties: AdjustmentType: QuantityChangeInCapacity ScalingGroupId: Ref: AutoScalingGroupId AdjustmentValue: 1 Outputs: {} -
JSONformat{ "ROSTemplateFormatVersion": "2015-09-01", "Description": "Test ESS ScalingRule", "Parameters": { "AutoScalingGroupId": { "Type": "String", "AssociationProperty": "ALIYUN::ESS::AutoScalingGroup::AutoScalingGroupId" } }, "Resources": { "ScalingRule": { "Type": "ALIYUN::ESS::ScalingRule", "Properties": { "AdjustmentType": "QuantityChangeInCapacity", "ScalingGroupId": { "Ref": "AutoScalingGroupId" }, "AdjustmentValue": 1 } } }, "Outputs": { } }