I have the same issues.
Check for 'slow queries'. That is priority 1. Don't think there are none, there is always something to find.
use SSD disks
Here are my settings (Most imporant once)
If you are using metalb, I think you don't need to have an external vm with haproxy, you could install an ingress controller in kubernetes and change the service type of the ingress controller to LoadBalancer.
Now You will have an external ip in your lan to access your local service through the ingress controller ip.
(Internet) -> (Router) -> Nat -> ...
The open files limit can be increased.
… the per-process hard limit is set to 1048576 by default, but it can be
changed using the "fs.nr_open" sysctl. From: HAProxy Management Guide | 5. File-descriptor limitations
I've stumbled upon a useful resource on how to increase fs.nr_open. This is what I ended up doing (on my host machine):
# 0. ...
How could we configure in a load balancer like HA Proxy to split read
operation from writes and send to node 2 and 3 only read operations?
Not at all. There is no way that a load balancer would know what happens in a SQL Server connection and understand logically what can and what can not be considered a read only or a write only or a mixed (which is a ...
Workaround that hides haproxy stats.cfg password is using environment variable value instead of password in a configuration file.
This way stats.cfg may look like:
stats auth admin:"$PASS"
PASS environment variable holds the password. The password could be populated via ...