Mysql – AWS Aurora MySQL Serverless CPU utilization is growing for unknown reason

amazon-rds-auroraauroraawsaws-auroraMySQL

We have been using Aurora serverless databases in staging and production environments for a few months now, and find the CPU remains in the range 15-20% almost all the time. However in the past week the CPU utilisation has been growing, even during periods of zero load and is now at 38%. I'm worried this trend will continue further and begin to become an issue.

I saw the same trend in our Staging environment, but it only lasted 3 days and then returned to the usual level.

What could be driving this and how should I be debugging and resolving the root cause(s)?

Chart from AWS database monitoring

SHOW FULL PROCESSLIST

Returns only 6 rows.

Results from SHOW FULL PROCESSLIST

—– Update 4th Sept 2019 —–

In the end, I just continued to monitor it, and once it reached 50% it dropped back down. I guess it is a quirk of Aurora serverless? Would be great to hear from anyone else facing this issue as I hate not understanding things.

enter image description here

Best Answer

What solved it for me was setting the min and max instance count higher than before (forcing aurora to scale up, for example from min 2 ACU to min 4 ACU), and after scaling restoring the scaling settings.

I used 'Force scaling the capacity to the specified values when the timeout is reached' and 'Apply immediately'.

It also solved another issue we had, the 'Serverless database capacity' indicated 4 ACU while it was actually 2 ACU (as seen in the picture)

we expect 45% cpu with 2 instances, not 80%