Wednesday, June 16, 2021

Predictive Auto-Scaling


Prediction is to undertand the future based on current or past date. Scaling is to adjust the resources. Hence Predictive auto-scaling does simplify the future resource needs via automation. The resource needed can be CPU, Memory, Storage or even Network resources. The automation there by simplifies the provision of any of these resources for a future state. This provision can be determined also reactively, proactivly or in hybrid manner. Prediction of auto scaling factors thus works with various parameters based on the determined behaviour of the system. We will see how Amazon positions the autoscaling in predictive scenarios.



Automation is carried out in 3 ways: Amazon EC2 servers, in Application itself or with the Amazon Web Servers. Within the EC2 this auto scaling is carried out as follows : By Simple and automatic capacity provision, Scaling of infrastucture up and down, by replacment of unhealthy instances, support for various purchase options, and via balancing capacity across avaliability zones. Applications autoscaling are carried out via individual service scaling by the applications like EC2 ( Spot fleet request), ECS(Service), DynamoDB ( tables and global secondary indexes(GSI)), SageMaker(Fleet), EMR(instance group), Aurora(Cluster), AppStream 2.0(Fleet) and Custom recources. Amazon Web Servers auto scaling leverages the existing EC2 Auto Scaling and Application Auto Scaling services. Allows the application developer to define theirs based on an AWS CloudFormation stack or resource tags.



Scaling options can be of manual, scheduled or dynamic. Predictive autoscaling new feature., and uses the machine learning techniques behind the scene. The forecasting metrics are to be defined in the modeling. Where and when to use this predictive scaling has to be determined aswell upfront. It can be achieved through AWS Auto Scaling console, SDK or CFN.



Predictive auto scaling builds a scaling schedule based on historical data to provide a baseline capacity. Dynamic scaling comes next by adding capacity as needed to the baseline capacity and acts as a complement [1].


Architecture: [2]
  1. Auto Scaling Group : similar EC2 instances for scaling and to a maximum allowed
  2. Launch Configuration : provides information to instantiance EC2 instances
  3. CloudWatch : is monitoring app for metrics deviations on CPU, Memory, loads
  4. Scaling Policy: Policies set for scale in and out or scale up and down.



[1] © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS Auto Scaling How to use predictive scaling Chris Lewis Software Development Manager Amazon Web Services A P I 3 3 1 - R & A P I 3 3 1 - R 1 Usman Khalid Senior Software Development Manager Amazon Web Services

[2] M. N. A. H. Khan, Y. Liu, H. Alipour, and S. Singh, “Modeling the Autoscaling Operations in Cloud with Time Series Data,” Proceedings of the IEEE Symposium on Reliable Distributed Systems, vol. 2016-January, no. September, pp. 7–12, 2015.

Labels:

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home