Hi,

On 12/22/24 10:54, highclass99 via developers wrote:
> MaxScale; including the recent MaxScales GPL version probably supports the equivalent functionality
I did look into this, and MariaDB specialized DB consulting company that supports Maxscale(and sells it) did not recommend this to us unless we send all our traffic to MaxScale too, which we do not wish to do.
They recommend MaxScale only when traffic is being sent to Maxscale as a proxy.

This is true for MaxScale but it's also true for all other applications that manage replication automatically and that don't use a VIP.

The VIP is there to control where writes are sent. Without it, the applications themselves must be able to determine where to connect to perform writes. In some deployments, VIPs are not an option or the complexity of setting them up is too great which is why the usual recommendation that is given is to use a "replication-aware" proxy like MaxScale: if the application that routes client traffic and manages replication is done in the same program, there's no possibility of a "split-brain" where the clients continue writing to the old primary while a switchover or a failover is in progress. This also eliminates the need for the application to be explicitly aware of the replication or what is a write and what isn't and all of this avoids a lot of complexity.

You could use MaxScale without routing any client traffic through it and it should work just fine, you'd just have to manage the VIP through the scripting mechanism in MaxScale. I haven't used MHA much and the last time I did was a long time ago but reading the wiki and some blog posts I believe that it also manages the VIP through scripts.

Another benefit of MaxScale is that you don't need SSH access to the servers, everything is done over SQL connections and thus the setup is a lot simpler.

Personally, I'd recommend just routing all the traffic through MaxScale as it greatly simplifies the deployment and with the cooperative monitoring mechanism, even MaxScale itself can be made highly available.

Disclaimer: I work on MaxScale :)

Markus
-- 
Markus Mäkelä, Senior Software Engineer
MariaDB Corporation