Skip to content

Aurora: is the service scaling up or not?

0

I've an Aurora Mysql instance.

Its capacity range is from 0.5 to 5.5 ACU

Today the website has high traffic and it's > 90% all the time.

In performance insight I can see that 'estimated vCPUs is never higher than2. Why?

3 Answers
2

if your Aurora MySQL instance's capacity range is set from 0.5 to 5.5 ACUs and your website is experiencing high traffic with CPU usage consistently over 90%, but the estimated vCPUs never exceed 2, consider these possible reasons:

Auto-Scaling Configuration: Ensure that auto-scaling is properly configured to allow the instance to scale up to the maximum ACUs.

Cooldown Periods: Aurora Serverless may have cooldown periods that delay scaling up.

Scaling Limits: Check if there are any configuration limits preventing scaling beyond 2 vCPUs.

Latency in Scaling: There can be a delay in scaling up due to Aurora Serverless architecture.

Workload Characteristics: The workload might be I/O-bound rather than CPU-bound.

Inefficient Query Patterns: High CPU usage might be due to inefficient queries or excessive connection pooling.

Troubleshooting Steps: =>Review and adjust the auto-scaling configuration. =>Check and adjust cooldown settings if necessary. =>Analyze workload characteristics using monitoring tools. =>Verify there are no AWS-imposed limits on scaling. =>Optimize database interaction patterns and query efficiency. =>These steps should help ensure that your Aurora instance scales appropriately to handle high traffic and effectively utilizes the available vCPUs.

EXPERT
answered a year ago
EXPERT
reviewed a year ago
EXPERT
reviewed a year ago
EXPERT
reviewed a year ago
0

Per the docs at on Aurora Serverless v2 [see link 1 below], "Each ACU is a combination of approximately 2 gibibytes (GiB) of memory, corresponding CPU, and networking". If you do the math, this implies each ACU is about 0.25 of a vCPU - that's a quarter of a single core on a Graviton instance. So if you set the max ACU to 5.5, technically that would be well under 2 vCPUs of compute capacity (1.375 vCPUs to be precise). This would explain why Performance Insights never shows compute usage higher than 2 vCPUs. Please note that resetting the Max ACU to something higher is dynamic (i.e., no database engine restart is needed) so it might be worth an experiment to see how increasing it to something a little higher impacts the resource usage, the latency of your website, and costs... Hope this helps!

[1] https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.how-it-works.html#aurora-serverless-v2.how-it-works.capacity

AWS
answered a year ago
0

Hi,

Thank you for asking your question.

To monitor and dive deep scaling/performance issue on Aurora Serverless v2, we recommend to use below metrics:

  • ServerlessDatabaseCapacity
  • ACUUtilization
  • CPUUtilization
  • FreeableMemory
  • TempStorageIops
  • TempStorageThroughput

We described which metrics is important Amazon CloudWatch metrics for Aurora Serverless v2 in this document, if you observed ACUUtilization reached around 100% at the time of high traffic period, this means Aurora Serverlss v2 was scaled up to the maximum capacity, 5.5ACUs in this case. That application consume more than 5.5ACUs during peak time, we recommend to dial-up max ACUs to handle surge traffic.

Please note: some parameters are modified following max ACU change and need to be rebooted. We explain more detailed instractions and explanation in this document.

I hope this might help.

AWS
answered a year ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.