Auto Scaling in AWS vs Auto Scaling in GCP
What is Auto Scaling?
Auto scaling is a cloud computing feature that allows to automatically scale cloud services, like virtual machines (VM) and server capacities, up or down, depending on the particular situation (eg. CPU utilization). Auto-scaling ensures that new instances are seamlessly increased during demand spikes and decreased during demand drops, enabling consistent performance for lower costs. AWS and GCP are one of the two cloud providers that offer Auto scaling features. The following are the major differences of auto-scaling feature offered by AWS and GCP-
Based on Scaling Policy
There are 3 types of auto scaling policies available in AWS:
- First one is a target tracking scaling policy. Here scaling is defined by the target value of a metric (CPU, request count). The autoscaling will try to maintain the metric’s value as close to the target value by increasing or decreasing the instance count.
- The second one is a step-based auto-scaling policy. It gives the ability to add the number of instances as per the level of alarm breach. For example, if the target CPU is 50% and the actual CPU has reached 60%, then you can choose to add 1 instance but if the CPU reached 80% then you can add 2 instances.
- The third one is a simple scaling policy. Here autoscaling will add the instances linearly until the target value is achieved.
For both step and simple scaling policy, we have to define separate scale out and scale in the policy. In case of target tracking scaling policy, we just have to give the target value and autoscaling will add or remove the instances as required. GCP only supports the target tracking scaling policy. So AWS has more scaling policy compared with the GCP.
Based on the additional Parameters for Scaling
Also, AWS provides to scale based on the following parameters
- Scaling based on SQS (Simple Queue Service)- Amazon SQS is a simple queue service offered by AWS that lets customers integrate and decouple distributed software systems and components. Autoscaling will scale in and out based on the number of messages in the queue.
- Scheduled Scaling- The scheduled action tells Amazon EC2 Auto Scaling to perform a scaling action at specified times.
These two features are not supported in GCP autoscaling.
Based on the termination Protection for running instances
In AWS we can protect particular instances from getting terminated during the scale-in event. We can enable termination protection on the EC2 instance, which we don’t want to terminate during the scale-in event. In the case of GCP autoscaling, instances can be terminated randomly during the scale-in event. There is no feature to protect a particular instance.