CRE-2024-0007
RabbitMQ Mnesia overloadedCriticalImpact: 9/10Mitigation: 8/10
CRE-2024-0007View on GitHub
Description
The underlying Erlang process, Mnesia, is overloaded (` WARNING Mnesia is overloaded`).
Cause
One way this can happen is when a RabbitMQ cluster is processing a large number of persistent mirrored queues at boot. There are so many queues that the underlying Erlang process, Mnesia, reports that it is overloaded while recovering these queues.
Mitigation
- Increase the size of the cluster
- Increase the Kubernetes CPU limits for the RabbitMQ brokers
- Consider adjusting mirroring policies to limit the number of mirrored queues
- Remove high-availability policies from queues where it is not needed
- Consider using lazy queues to avoid incurring the costs of writing data to disk