Latency of my application deployed to AWS Elastic Beanstalk is generally about 50 ms, I want another instance to start if average latency goes to 500ms (1/2 second). You can change the scaling Trigger in the configuration and select Latency, but the smallest Unit of Measurement is Second and Upper and Lower Scale Increments values must be an integer or percent.
So it doesn't seem possible to set a trigger as required.
Your AWS Elastic Beanstalk environment includes an Auto Scaling group that manages the Amazon EC2 instances in your environment. In a single-instance environment, the Auto Scaling group ensures that there is always one instance running.
The Auto Scaling group in your Elastic Beanstalk environment uses two Amazon CloudWatch alarms to trigger scaling operations. The default triggers scale when the average outbound network traffic from each instance is higher than 6 MB or lower than 2 MB over a period of five minutes.
AWS Auto Scaling lets you build scaling plans that automate how groups of different resources respond to changes in demand. You can optimize availability, costs, or a balance of both. AWS Auto Scaling automatically creates all of the scaling policies and sets targets for you based on your preference.
The AWS::AutoScaling::AutoScalingGroup resource defines an Amazon EC2 Auto Scaling group, which is a collection of Amazon EC2 instances that are treated as a logical grouping for the purposes of automatic scaling and management.
The properties "Lower breach scale increment" and "Upper breach scale increment" is the number of EC2 instances to add or remove. This has to be an integer or a percentage.
http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html
For using subsecond latencies as triggers for scaling, set the values of UpperThreshold and LowerThreshold to "0.5" for 500 ms. The Unit of Measurement will be Second.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With