In today’s dynamic digital landscape, businesses face the challenge of managing fluctuating workloads efficiently. Auto scaling on Alibaba Cloud has emerged as a game-changing solution, allowing organizations to automatically adjust their computing resources based on demand. This powerful feature enables companies to maintain high availability, optimize resource utilization, and control costs effectively, making it an essential tool for modern cloud infrastructure management.
This comprehensive guide will walk readers through the intricacies of mastering auto scaling on Alibaba Cloud. It covers essential concepts, implementation strategies, and best practices for configuring auto scaling components. The article delves into dynamic scaling strategies, explores ways to enhance reliability, and provides insights on optimizing costs. By the end, readers will have a solid understanding of how to leverage auto scaling to create a flexible and efficient cloud environment that adapts to their business needs.
Auto Scaling Essentials on Alibaba Cloud
Core Concepts and Terminology
Auto Scaling on Alibaba Cloud is a service that automatically adjusts computing resources based on actual usage, ensuring steady and reliable performance [1]. This dynamic adjustment helps maintain application availability and responsiveness by scaling computing resources up or down according to real-time needs [1].
At the heart of Auto Scaling is the scaling group, which consists of instances of the same type used for similar business scenarios [2]. A scaling group specifies the minimum and maximum number of instances and can be associated with Server Load Balancer (SLB) instances and ApsaraDB RDS instances [2].
The primary components of Auto Scaling include:
- Elastic Compute Service (ECS) Instances: Virtual servers that comprise basic computing components such as vCPU, memory, operating system, network configuration, and disk [2].
- Elastic Container Instances: A container service that combines container and serverless technologies [2].
- Server Load Balancer (SLB): A service that forwards network traffic to backend servers, increasing application throughput and preventing service interruptions caused by single points of failure [2].
- ApsaraDB RDS: A stable and reliable online database service supporting elastic scaling and various database engines [2].
Auto Scaling operates using different scaling modes, which determine when to add or remove instances:
- Scheduled mode
- Dynamic mode
- Fixed-number mode
- Custom mode
- Health mode
- Multiple modes [2]
The instance configuration source, which can be a scaling configuration or a launch template, is used to create new instances [2]. Scaling tasks are categorized into scheduled tasks and event-triggered tasks, allowing for time-based or metric-based scaling [2].
Auto Scaling Architecture
The Auto Scaling architecture on Alibaba Cloud is designed to provide flexibility and efficiency in managing computing resources. Here’s an overview of how it works:
- Scaling Group: This is the core component that wraps around all auto-scaling resources. It defines the minimum and maximum number of ECS instances and determines which instances should be removed first based on the removal policy [3].
- Scaling Configuration: This defines the template used to launch new instances within the scaling group [3].
- Scaling Rules: These specify how instances should be added or removed. For example, a rule might be set to add one instance or remove one instance based on certain conditions [3].
- Triggers: Scaling rules can be triggered manually, on a schedule, or after a customizable alarm goes off [3].
- Alarms: These are used to monitor specific metrics and trigger scaling actions when thresholds are met. For instance, an alarm might add instances when the average CPU usage exceeds 70% for a specified duration [3].
Auto Scaling supports both horizontal scaling (adding or removing nodes) and vertical scaling (adjusting resources of existing nodes). Adding more identical nodes is referred to as “scaling out,” while removing nodes is called “scaling in” [3].
It’s crucial to note that Auto Scaling works best with stateless applications. If a node stores state (e.g., user sessions in web applications), that state is lost when the node is removed from the auto-scaling group [3].
Auto Scaling on Alibaba Cloud offers two primary scaling approaches:
- Scheduled Scaling: Based on daily, weekly, or monthly schedules that define when to scale out and in [3].
- Demand-based Scaling: Monitors metrics provided by the operating system of running nodes and makes scaling decisions accordingly [3].
By leveraging these concepts and components, Auto Scaling on Alibaba Cloud enables businesses to maintain optimal performance while controlling costs. It automatically scales resources during peak hours to ensure sufficient computing power and removes instances during off-peak hours to prevent resource waste [2].
Planning Your Auto Scaling Implementation
Effective implementation of Auto Scaling on Alibaba Cloud requires careful planning and consideration of various factors. This section explores the key steps involved in preparing for a successful Auto Scaling deployment.
Assessing Workload Patterns
To make the most of Auto Scaling, organizations need to have a deep understanding of their workload patterns. This involves analyzing the fluctuations in demand for computing resources over time. By examining historical data and identifying trends, businesses can anticipate when they might need to scale up or down.
Workload patterns can vary significantly depending on the nature of the business. For example, an e-commerce platform might experience higher traffic during holiday seasons or promotional events, while a business intelligence application might have peak usage during working hours. Understanding these patterns helps in creating more effective scaling strategies.
Defining Scaling Objectives
Once workload patterns are understood, the next step is to define clear scaling objectives. These objectives should align with the overall business goals and performance requirements. Some common scaling objectives include:
- Maintaining application performance under varying loads
- Optimizing resource utilization to minimize costs
- Ensuring high availability and fault tolerance
- Meeting specific service level agreements (SLAs)
When setting these objectives, it’s crucial to consider both the minimum and maximum number of instances required to meet performance goals while staying within budget constraints.
Alibaba Cloud’s Auto Scaling service offers flexibility in achieving these objectives. It automatically creates and releases ECS instances based on pre-defined rules, allowing services to scale to match demand without manual intervention [4]. This capability extends to configuring server load balancer and relational database service white lists, further streamlining the scaling process.
To effectively plan an Auto Scaling implementation, it’s essential to understand the core concepts and components of the service. These include:
- Scaling Groups: These define the set of ECS instances that Auto Scaling manages as a unit.
- Scaling Configurations: These provide the template for creating new instances within the scaling group.
- Scaling Rules: These determine how and when to add or remove instances.
Alibaba Cloud offers both manual and automatic scaling operations, providing flexibility in how scaling is triggered [4]. Manual scaling allows for immediate adjustments based on anticipated needs, while automatic scaling responds to real-time metrics or scheduled events.
When planning an Auto Scaling implementation, it’s important to consider the different types of scaling rules available:
- Simple Scaling: Adds or removes a fixed number of instances based on a single metric.
- Target Tracking: Automatically adjusts the number of instances to maintain a specified metric at a target value.
- Step Scaling: Allows for more granular control by defining multiple step adjustments based on the magnitude of metric change.
By carefully assessing workload patterns and defining clear scaling objectives, organizations can create a robust Auto Scaling strategy that ensures optimal performance and cost-efficiency. The flexibility and automation provided by Alibaba Cloud’s Auto Scaling service enable businesses to adapt quickly to changing demands, maintaining high availability and responsiveness without overprovisioning resources.
Configuring Auto Scaling Components
Setting Up Scaling Groups
Auto Scaling groups form the foundation of Alibaba Cloud’s Auto Scaling service. These groups consist of Elastic Compute Service (ECS) instances that are dynamically scaled based on pre-configured rules [5]. When setting up a scaling group, users can specify the minimum and maximum number of ECS instances, as well as define templates for automatically creating new instances [5].
To create an Auto Scaling group, users should follow these steps:
- Log in to the Alibaba Cloud Control Panel and navigate to the Auto Scaling console.
- Select “Scaling Groups” from the left-side navigation panel.
- Choose a region from the top navigation bar.
- Click the “Create” button in the upper-left corner of the Scaling Groups page.
- Configure the necessary parameters for the Auto Scaling group.
- Click “OK” to finalize the creation process [6].
It’s crucial to note that Auto Scaling can only manage ECS instances within an enabled scaling group [6]. To enable a scaling group:
- Access the Auto Scaling console.
- Navigate to the “Scaling Groups” section.
- Locate the desired scaling group and click the three dots in the Actions column.
- Select the “Enable” option [6].
Creating Scaling Configurations
Scaling configurations define the attributes of ECS instances that will be added to a scaling group. These configurations include details such as the instance type, image, and security group settings [7]. Users can create multiple scaling configurations and associate them with a single scaling group, providing flexibility in instance management [7].
To create a scaling configuration:
- Access the Auto Scaling console.
- Navigate to the desired scaling group.
- Select the “Scaling Configurations” tab.
- Click “Create Scaling Configuration.”
- Define the necessary parameters, including instance type, image, and security settings.
- Save the configuration.
Defining Scaling Rules
Scaling rules determine the conditions under which Auto Scaling will add or remove instances from a scaling group [5]. These rules can be based on various metrics, such as CPU utilization, memory usage, or custom metrics defined by the user [7].
To create a scaling rule in Alibaba Cloud:
- Log in to the Auto Scaling console as an admin user.
- Locate the desired scaling group and open its details page.
- Click the “Scaling Rules” tab in the upper part of the Auto Scaling group page.
- Click the “Create Scaling Rule” button.
- In the Create Scaling Rule dialog box, configure the necessary parameters, including a name and description for the rule.
- Click “OK” to create the scaling rule [5].
Alibaba Cloud offers several types of scaling rules, each with its own set of parameters:
- Simple Scaling Rule: Adds or removes a fixed number of instances based on a single metric.
- Predictive Scaling Rule: Uses machine learning to forecast future resource needs and scale proactively.
- Step Scaling Rule: Allows for more granular control by defining multiple step adjustments based on the magnitude of metric changes.
- Target Tracking Scaling Rule: Automatically adjusts the number of instances to maintain a specified metric at a target value [5].
By carefully configuring these Auto Scaling components, users can create a dynamic and responsive cloud environment that automatically adjusts to changing workloads. This approach helps maintain application availability and responsiveness while optimizing resource utilization and costs [8].
Implementing Dynamic Scaling Strategies
Dynamic scaling strategies on Alibaba Cloud allow applications to adapt automatically to changes in load, ensuring optimal performance and resource utilization. These strategies are particularly useful when workload patterns are unpredictable or vary significantly over time.
CPU Utilization-based Scaling
One of the most common approaches to dynamic scaling is based on CPU utilization. This method involves monitoring the average CPU usage across instances in a scaling group and adjusting the number of instances accordingly. For example, a scaling rule can be set to add instances when the average CPU usage exceeds a certain threshold, and remove instances when it falls below another threshold.
To implement CPU utilization-based scaling:
- Access the Auto Scaling console on Alibaba Cloud.
- Navigate to the desired scaling group.
- Create a new scaling rule under the “Scaling Rules” tab.
- Select “Simple Scaling Rule” as the rule type.
- Configure the rule to add instances when CPU usage exceeds 70% for a specified duration.
- Create another rule to remove instances when CPU usage falls below 10% for a specified duration [3].
These rules ensure that the application has sufficient resources during high-demand periods while avoiding unnecessary costs during low-demand periods.
Memory-based Scaling
Similar to CPU utilization, memory usage can also serve as a trigger for dynamic scaling. This is particularly useful for applications that are memory-intensive rather than CPU-intensive. The process for setting up memory-based scaling is similar to CPU-based scaling, but with memory metrics as the trigger.
To implement memory-based scaling:
- Access the Auto Scaling console.
- Create a new scaling rule for the desired scaling group.
- Choose “Step Scaling Rule” for more granular control.
- Configure steps based on different memory usage thresholds.
- Set appropriate cooldown periods to prevent rapid fluctuations.
Custom Metric Scaling
Alibaba Cloud’s Auto Scaling service also supports scaling based on custom metrics, allowing for more tailored and application-specific scaling strategies. This is particularly useful when standard metrics like CPU or memory usage don’t accurately reflect the application’s performance or resource needs.
One powerful example of custom metric scaling is the ability to scale based on ingress QPS (Queries Per Second) using Alibaba Cloud’s Log Service (SLS). This approach is particularly useful for applications with varying traffic patterns, such as web applications or APIs.
To implement custom metric scaling using SLS ingress QPS:
- Collect Ingress logs in SLS (Log Service).
- Configure SLS to analyze and generate metrics such as
sls_ingress_qps
andsls_ingress_latency_avg
. - Create a HorizontalPodAutoscaler (HPA) configuration that uses these custom metrics [9].
Here’s an example HPA configuration using custom SLS metrics:
apiVersion: autoscaling/v2beta2
kind: HorizontalPodAutoscaler
metadata:
name: ingress-hpa
spec:
scaleTargetRef:
apiVersion: apps/v1beta2
kind: Deployment
name: nginx-deployment-basic
minReplicas: 2
maxReplicas: 10
metrics:
- type: External
external:
metric:
name: sls_ingress_qps
selector:
matchLabels:
sls.project: ""
sls.logstore: ""
sls.ingress.route: ""
target:
type: AverageValue
averageValue: 10
- type: External
external:
metric:
name: sls_ingress_latency_p9999
selector:
matchLabels:
sls.project: ""
sls.logstore: ""
sls.ingress.route: ""
target:
type: Value
value: 10
This configuration scales the deployment based on both QPS and latency metrics, ensuring that the application can handle increased traffic while maintaining performance [9].
By leveraging these dynamic scaling strategies, organizations can create highly responsive and efficient cloud environments that automatically adjust to changing workloads. This approach helps maintain application performance, optimize resource utilization, and control costs effectively.
Enhancing Reliability with Auto Scaling
Auto Scaling on Alibaba Cloud offers powerful features to enhance the reliability and availability of applications. By automatically adjusting the number of Elastic Compute Service (ECS) instances based on changing business needs, Auto Scaling ensures that applications can handle varying loads efficiently [10]. This section explores key strategies for improving reliability through Auto Scaling, focusing on implementing health checks and configuring multi-AZ deployments.
Implementing Health Checks
Health checks are a crucial component of Auto Scaling that help maintain the overall health and performance of the scaling group. Auto Scaling regularly checks the health status of ECS instances within the group to ensure they are functioning correctly [10]. Here’s how health checks contribute to enhancing reliability:
- Automatic Instance Replacement: When an ECS instance is found to be unhealthy, Auto Scaling automatically releases it and triggers the scaling-out process by creating a new ECS instance [10]. This ensures that the application always has the required number of healthy instances to handle the workload.
- Healthy Instance Criteria: Auto Scaling considers an instance healthy if it has a ‘Running’ state [10]. This simple criterion helps quickly identify and replace problematic instances.
- Continuous Monitoring: The health check process runs continuously, allowing Auto Scaling to respond promptly to any issues that may arise with the instances in the scaling group.
To implement effective health checks:
- Enable health checks for the scaling group in the Auto Scaling console.
- Configure appropriate health check intervals and thresholds based on your application’s requirements.
- Ensure that your application is designed to report its health status accurately.
It’s important to note that if the health check is disabled for a Server Load Balancer (SLB) instance associated with the scaling group, ECS instances will no longer be added to the scaling group automatically [10]. This can impact the reliability of your application, so it’s crucial to keep health checks enabled for both Auto Scaling and associated SLB instances.
Configuring Multi-AZ Deployments
Implementing Multi-Availability Zone (Multi-AZ) deployments is a key strategy for enhancing the reliability and fault tolerance of applications using Auto Scaling. By distributing instances across multiple Availability Zones, you can protect your application from potential failures in a single zone. Here’s how to configure Multi-AZ deployments effectively:
- Create Multiple VSwitches: When setting up your scaling group, create two or more VSwitches (subnets), each in a separate Availability Zone [3]. This provides the foundation for distributing your instances across different physical locations.
- Configure Scaling Group: In the scaling group configuration, specify the VSwitches you created in different Availability Zones. Auto Scaling will then ensure that instances are balanced across these VSwitches [3].
- Define Scaling Rules: Create scaling rules that take into account the distribution of instances across Availability Zones. For example, you might want to ensure that each zone always has a minimum number of instances.
- Use Server Load Balancer: Integrate a Server Load Balancer (SLB) instance with your scaling group. The SLB can distribute traffic across instances in different Availability Zones, further enhancing reliability and performance [10].
By implementing Multi-AZ deployments, you can achieve several benefits:
- Improved Fault Tolerance: If one Availability Zone experiences issues, your application can continue running in other zones.
- Better Load Distribution: Traffic is distributed across multiple zones, potentially improving overall performance.
- Increased Availability: The likelihood of your application being affected by a localized failure is significantly reduced.
When configuring Multi-AZ deployments, it’s essential to ensure that your application is designed to be stateless. As ECS instances in a scaling group can be automatically released, they should not store critical state data such as databases, logs, or session information [10]. Instead, use external services or dedicated storage solutions for maintaining state across instances and zones.
By combining robust health checks with Multi-AZ deployments, you can significantly enhance the reliability and availability of your applications using Auto Scaling on Alibaba Cloud. These strategies work together to ensure that your application can handle varying loads, recover from instance failures, and maintain high availability even in the face of zone-level issues.
Optimizing Costs with Auto Scaling
Auto Scaling on Alibaba Cloud offers powerful tools to optimize costs while maintaining application performance and reliability. By automatically adjusting computing resources based on business cycles, organizations can significantly reduce their operating expenses [11]. This section explores two key strategies for cost optimization: leveraging spot instances and implementing scheduled scaling.
Leveraging Spot Instances
Spot instances, also known as preemptible instances, are a cost-effective alternative to on-demand instances. These instances utilize spare computing capacity available at discounted prices, offering potential savings of up to 76% compared to pay-as-you-go instances [11] [12]. The key characteristics of spot instances include:
- Dynamic Pricing: Spot instance prices fluctuate based on real-time supply and demand of available cloud capacity [12].
- Intermittent Availability: As spare computing capacity, spot instances can be reclaimed by Alibaba Cloud at any time if the spot price exceeds the maximum price set by the user [12].
- Workload Suitability: Ideal for fault-tolerant, interruptible workloads such as batch processing, big data analysis, and high-performance computing (HPC) [12].
To effectively leverage spot instances:
- Set a maximum price: Users can bid on spot instances by setting a maximum price they’re willing to pay per hour [12].
- Design for interruptions: Ensure applications can handle instance interruptions gracefully, as instances may be reclaimed with short notice [12].
- Use for appropriate workloads: Spot instances are well-suited for stateless applications, scalable web services, data analysis, and massively parallel computing [12].
It’s important to note that spot instances may not be suitable for mission-critical or latency-sensitive workloads due to the risk of interruption [12]. Additionally, they are not recommended for stateful applications like databases, where maintaining application state is crucial [12].
Implementing Scheduled Scaling
Scheduled scaling is an effective strategy for optimizing costs when application usage patterns are predictable. This approach allows organizations to automatically adjust computing resources based on anticipated demand, ensuring optimal performance during peak hours while reducing costs during off-peak periods [13].
Key benefits of scheduled scaling include:
- Cost Optimization: By adding resources only when needed and removing them during low-demand periods, organizations can significantly reduce their operating costs [13].
- Improved Resource Utilization: Scheduled scaling ensures that computing power is available when it’s most needed, preventing overprovisioning during off-peak hours [13].
- Predictable Performance: By aligning resources with expected demand, applications can maintain consistent performance during known high-traffic periods [13].
To implement scheduled scaling effectively:
- Analyze Usage Patterns: Study historical data to identify predictable peaks and troughs in application usage [13].
- Create Time-Based Rules: Configure Auto Scaling to add or remove ECS instances based on specific time periods [13].
- Set Appropriate Thresholds: Define the minimum and maximum number of instances for each time period to ensure adequate performance while controlling costs [13].
An example of effective scheduled scaling is an e-commerce application preparing for a planned sale. The Auto Scaling group can be configured to add more computing resources or additional ECS instances during the sale period (e.g., from 1 AM to 4 AM) and remove them afterward [13].
By combining spot instances and scheduled scaling, organizations can create a highly cost-effective Auto Scaling strategy. This approach allows for dynamic resource allocation based on both real-time market conditions and predictable usage patterns, resulting in significant cost savings without compromising application performance or reliability.
Auto Scaling Best Practices and Pitfalls
Performance Optimization Tips
To maximize the benefits of Auto Scaling on Alibaba Cloud, organizations should implement several best practices. One key strategy is to take full advantage of Alibaba Cloud’s Auto Scaling feature, which automatically adjusts the number of cloud resources based on demand [14]. This dynamic scaling ensures that businesses only pay for the resources they use, eliminating the need for manual scaling and preventing over-provisioning.
Alibaba Cloud provides powerful resource management tools like Resource Orchestration Service (ROS) and Server Load Balancer (SLB) [14]. These tools automate resource deployment, monitor usage, and optimize resource allocation. By utilizing these tools effectively, organizations can streamline their cloud environment, identify underutilized instances, and eliminate unnecessary costs.
To build a scalable web application that can handle daily business and traffic spikes during major activities, Auto Scaling offers several benefits:
- Zero backup resource cost: Auto Scaling automatically creates and releases ECS instances based on requirements, eliminating the need for maintaining backup resources [15].
- Zero maintenance cost: By configuring scaling policies in advance, Auto Scaling automatically manages ECS instances, adding them to ApsaraDB for RDS instance whitelists and SLB backend server groups when load increases, and removing them when load decreases [15].
- Flexible scaling modes: Auto Scaling provides various scaling modes that can be combined to match specific business needs. For example, using dynamic mode based on CloudMonitor metrics allows monitoring of average CPU utilization to respond to traffic changes in real-time [15].
Common Mistakes to Avoid
While Auto Scaling is a powerful feature, it’s not a magic solution that can solve all performance and cost issues [16]. Organizations should be aware of common pitfalls and mistakes that can undermine the benefits of Auto Scaling:
- Overlooking application design: Auto Scaling works best with stateless applications. Ensure that critical state data, such as databases and logs, are stored externally to prevent data loss during instance scaling.
- Ignoring cost implications: While Auto Scaling can optimize costs, it’s essential to monitor and set appropriate thresholds to prevent unexpected expenses during traffic spikes.
- Neglecting performance testing: Thoroughly test your application’s performance under various load conditions to ensure it can handle scaling events smoothly.
- Failing to implement proper monitoring: Set up comprehensive monitoring and alerting systems to detect and respond to scaling events and potential issues promptly.
- Overrelying on Auto Scaling: While Auto Scaling is powerful, it should be part of a broader strategy that includes optimizing application code, database performance, and network configurations.
By implementing these best practices and avoiding common pitfalls, organizations can leverage Auto Scaling on Alibaba Cloud to build highly scalable, cost-effective, and resilient applications that can handle varying workloads efficiently.
Conclusion
Auto scaling on Alibaba Cloud has a significant impact on how businesses manage their computing resources. By automatically adjusting resources based on demand, companies can maintain high performance during peak times and cut costs during lulls. This guide has explored the key aspects of auto scaling, from setting up scaling groups to implementing dynamic strategies and optimizing costs.
To wrap up, mastering auto scaling on Alibaba Cloud allows organizations to create flexible and cost-effective cloud environments. By applying the best practices discussed and steering clear of common pitfalls, businesses can build robust applications that adapt to changing workloads. This approach not only enhances reliability but also helps to control expenses, giving companies a competitive edge in today’s fast-paced digital landscape.
FAQs
What types of Auto Scaling modes does Alibaba Cloud offer?
Alibaba Cloud’s Auto Scaling feature supports various modes to accommodate different business needs. These include fixed-number mode, health mode, scheduled mode, dynamic mode, and custom mode. These modes help scale ECS instances or elastic container instances based on specific requirements.
What is the cooldown period in Alibaba Cloud’s Auto Scaling?
The cooldown time for Alibaba Cloud Auto Scaling is not specified in the provided information.
How can I set up Auto Scaling on AWS?
To configure Auto Scaling in AWS, follow these steps:
- Log into the AWS Management Console.
- Create a launch template.
- Establish an Auto Scaling group.
- Optionally, integrate Elastic Load Balancers.
- Optionally, set up Scaling Policies.
How does Auto Scaling function in the cloud environment?
Auto Scaling in cloud computing automatically manages the lifecycle of cloud instances. It launches and terminates virtual machines as necessary to meet fluctuating resource demands. This process is typically used alongside elastic load balancing to optimize the utilization of cloud resources.
References
[1] – https://www.alibabacloud.com/help/en/auto-scaling/product-overview/how-auto-scaling-works
[2] – https://www.alibabacloud.com/help/en/auto-scaling/product-overview/terms
[3] – https://medium.com/xebia/auto-scaling-on-alibaba-cloud-99d1d9ac1c6b
[4] – https://cloudacademy.com/course/alibaba-auto-scaling-1247/introduction-to-alibaba-auto-scaling/
[5] – https://serverhealers.com/blog/create-an-auto-scaling-rule-in-alibaba-cloud
[6] – https://serverhealers.com/blog/quick-start-on-auto-scaling-group-in-alibaba-cloud
[7] – https://www.alibabacloud.com/help/en/auto-scaling/user-guide/manage-scaling-rules
[8] – https://www.alibabacloud.com/help/en/auto-scaling/user-guide/manage-scaling-groups/
[9] – https://github.com/AliyunContainerService/alibaba-cloud-metrics-adapter/blob/master/README.md
[10] – https://medium.com/alibaba-cloud-guide/learn-auto-scaling-in-alibaba-cloud-the-tips-c7a5e92939b1
[11] – https://www.alibabacloud.com/en/product/auto-scaling?_p_lc=1
[12] – https://www.quora.com/What-are-the-spot-instances-in-the-Alibaba-cloud-batch-compute
[13] – https://www.linkedin.com/pulse/alibaba-cloud-auto-scaling-shahid-imran
[14] – https://medium.com/@bimandika/cost-saving-strategies-in-alibaba-cloud-3495090bc4af
[15] – http://static-aliyun-doc.oss-cn-hangzhou.aliyuncs.com/download%2Fpdf%2F63428%2FBest_practices_reseller_en-US.pdf
[16] – https://www.linkedin.com/advice/0/what-common-pitfalls-mistakes-avoid-when-auto-scaling