Atlas autoscaling question


Due to the need to increase database performance, I have set the cluster tier scaling from m20 up to m40. According to the documentation, the cluster scales when memory utilization is greater than 75% for an hour. How can I measure the value of memory utilization is used to scale tier? I added the metric “Memory usage % has gone above 90%” and this value is exceding all the time but cluster is not scaling.

Thank you

Hi @Lukasz_Pelczar ,

The documentation mention what values are used to detrmine this value:

To determine memory utilization, Atlas calculates the following delta: total system memory - ( free + buffer + cache ), where free , buffer , and cache are amounts of available memory that Atlas can reclaim for other purposes. Atlas then divides that delta by the total system memory . To learn more, see System Memory in Review Available Metrics.

Now please remember that the alert is fired where a single monitored sample is crossing the threshold. Now for auto scaling we use the average over an hour so this cannot be done by an alert.

What you can do is to see if you get alerts where system memory is constantly crossing 75-80% going for a period of more than 60 min:

Having said that, since the calculation here does some deduction of reusable space, I find it hard to get to the accurate alert aligned with the scaling trigger.