DB configuration - locking


We use an librenms dispatcher service for 2400devices / 65500 ports with DB in master-slave configuration. We have front + 7vm only for polling. When we try to looking data in web interface, graphs and others data loading little to long - because db is on the load. My question is:

  • it is possible to reading from slave (connect webinterface into db slave)? In my opinion not.
  • it is possible to migrate db to multi master server configuration? In dispatcher services locking mechanism is in use?

Maybe MariaDB MaxScale proxy can help, as i understand there is no special support required for that on LibreNMS side, as it doing routing work itself with various modes like routing only for read connector.

I was looking into this like yesterday. Did someone already tried this with Librenms?


so today I created an maxscale configuration witch works, but not wit librenms (laravel). In log we have problem with connection to backend:
(handle_error_response): Invalid authentication message from backend ‘server1’. Error code: 1044, Msg : #42000: Access denied for user ‘libre_front’@‘XX.XX.XX.XX’ to database ‘librenms
because db name is double quotted :confused:
How to implement this without lost update functionality?

1 Like

I had the same issues these days trying this. If you go back to version 2.0 or 2.1 it will work.

2.1.17 working (problem solved) but I have a lot reads on master (95-98%) and slaves get bored. Wrong config? @paulierco How your config works?

My config:

Quite the same. I did this only in a lab env. Next days i will try into production. I’m looking to add 7k switches.

  [RW Split Router]

Actually my version is even older:
maxscale -v
MaxScale 2.0.1

for 7k devices, multimaster db is a must. In my opinion, maxscale with master and n+1 slaves is not a solution. For me that didn’t work.

Can we sync? I would like to check this as well in private.
Please contact me here or on discord with the same username.