APM.AutoScaler
Element Description
The APM.AutoScaler element is used to control elastic scaling of applications.
Element Properties
Property |
Required |
Descripiton |
---|---|---|
name |
Yes |
Auto scaling policy type Type: string Value Description: Supports customization. Value Constraint: The value contains 1 to 64 characters. This value is unique under a tenant, and must meet the following requirement: {"regex": "^[a-zA-Z][0-9a-zA-Z-_]*$", "min_length" :1, "max_length" :64}. |
maxInstances |
Yes |
Maximum number of instances supported by an auto scaling policy. If the number of instances reaches this value, scale-out will not be performed. Type: integer Value Description: Supports an integer ranging from 1 to 1000. For example, 15. Default: 10 Value Constraint: The value must be an integer ranging from 1 to 1000. This integer must be greater than the value of minInstance. Suggestion: Set the value based on specifications and requirements. |
appName |
Yes |
Application to which the auto scaling policy applies Type: string Value Description: Indicates the name of the CCE.deployment object in the template. Default: '' Suggestion: You are advised to connect to the CCE.deployment object and use the get_reference function to automatically obtain the value, or manually enter the value. |
rules |
Yes |
Auto scaling rule, which indicates the scale-out or scale-in policy (currently, scaling can only be performed based on performance metrics) Type: APM.AutoscalerRule Array Value Description: Indicates the APM.AutoscalerRule array. Value Constraint: The definition of the APM.AutoscalerRule type is met. Suggestion: Select the rules field in the component part, and then fill in the field based on prompts. |
clusterId |
No |
Cluster ID to which the auto scaling policy applies Type: HuaweiCloud.CCE.Cluster.Id Value Description: Indicates the ID of the CCE.cluster object in the template. Suggestion: You are advised to connect to the CCE.deployment object which is contained in the CCE.cluster object and use the get_attribute function to automatically obtain the value, or manually enter the value. |
cooldownTime |
Yes |
Cooldown time of auto scaling, that is, the interval between two consecutive auto scalings Type: integer Value Description: Supports an integer ranging from 0 to 86400 (unit: s). For example, 180. Default: 60 Value Constraint: The value must be an integer ranging from 0 to 86400. The maximum cooldown time is 24 hours. Suggestion: Set the value based on specifications and requirements. |
minInstances |
Yes |
Minimum number of instances supported by an auto scaling policy. Type: integer Value Description: Supports an integer ranging from 1 to 1000. For example, 15. Default: 1 Value Constraint: The value must be an integer ranging from 1 to 1000. This integer must be greater than the value of maxInstance. Suggestion: Set the value based on specifications and requirements. |
type |
Yes |
Auto scaling policy type Type: string Value Description: Supports auto scaling for the current type of application. That is, policies can be loaded to stateless applications and CCE deployment objects. Default: app Value Constraint: Currently, only app is supported. Suggestion: Use the default value. |
Relationships Between Elements
Description |
Target |
---|---|
Connected |
|
ContainedIn |
|
Connected |
Return Value
Property |
Type |
Description |
---|---|---|
refID |
string |
Instance ID of an auto scaling policy |
refName |
string |
Instance name of an auto scaling policy |
Blueprint Example
tosca_definitions_version: huaweicloud_tosca_version_1_0 inputs: images: type: string instances: default: 1 type: integer node_templates: containercomponent-2: # Define containers of the application. type: HuaweiCloud.ServiceStage.ContainerComponent properties: package: image: get_input: images imagePullPolicy: Always lifecycle: postStart: - '/bin/bash' - '-c' - touch aos preStop: - '/bin/bash' - '-c' - sleep 60 statelessapplication-1: # Define a Deployment. type: HuaweiCloud.ServiceStage.StatelessApplication properties: affinitySelector: affinities: antiself: false instances: get_input: instances type: container requirements: - package: node: containercomponent-2 relationship: HuaweiCloud.Relationships.PackageConsistsOf my-scaling-policy: type: HuaweiCloud.APM.AutoScaler properties: name: my-scaling-policy maxInstances: 10 minInstances: 3 cooldownTime: 180 rules: - name: scaling-out-rule conditions: - evaluationPeriods: 1 metricUnit: Percent period: 60 metricOperation: '>' metricThreshold: 70 metricNamespace: PAAS.CONTAINER statistic: average metricName: cpuUsage actions: - type: scale_out_k8s parameters: scaleUnit: 1 - name: scaling-in-rule conditions: - metricNamespace: PAAS.CONTAINER metricName: cpuUsage metricUnit: Percent metricOperation: < metricThreshold: 50 statistic: average period: 60 evaluationPeriods: 3 actions: - type: scale_in_k8s requirements: - application: node: statelessapplication-1 # Define the dependencies on StatelessApplication.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot