HA for monitor node

Asked by Kester Riley

Hi,

I am looking at using MMM for handling the management of converting a Slave in to a Master in the event of a Master failure.

However, I cannot find any documentation about making the monitor node run in some type of HA environment. So can I have two servers in a Master --> Slave set up for the Monitoring Node, if so how?

Secondly, is it possible to use MySQL-Proxy to then connect to database's that are monitored by MMM? My thought would be that MySQL-Proxy can do the read / write splits to the DB's. The master IP would float and be controlled by MMM, so MySQL-proxy would always point at the same Virtual IP, and then it could list all the slave nodes as read only. Has anybody done this? Is it necessary?

Finally in my hours of looking in to this tonight there seems to be a well known MySQL consultancy company saying how bad MMM is, but you advertise them on your web site as experts in the product. They are also developing their own similar product, so do I listen to what they say, or actually is this stable, production ready and used in multiple large installations?

Kind Regards,

Question information

Language:
English Edit question
Status:
Answered
For:
mysql-mmm Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Kenny Gryp (gryp) said :
#1

## Multiple monitoring nodes
It is not possible to run 2 monitoring nodes.

## Proxy
You can indeed put a proxy in frond of MMM to do the splitting of reads and writes, but it might be more complicated than just doing that:
 - mysql proxy is then a bottleneck, needs HA by it's own and might become a performance bottleneck
 - not all selects can go to the reader ips (on slaves). Replication in mysql is asynchronous (or semi-sync), this means that a write on the master does not yet immediately appear on the slaves. So inserting a row and immediately selecting from it on a slave within the same transaction can/will give problems.
 - Most people write the functionality in the application itself, somewhere in the database class, which is more flexible.

## MMM is bad.
My guess is that you are talking about Percona. One of our employees at percona indeed made a blogpost of the issues with MMM http://www.xaprb.com/blog/2011/05/04/whats-wrong-with-mmm/). I completely agree, but note that a lot of companies are using it, with success. Depending on your requirements, MMM might still be a good solution, which it is for a lot of companies.

Finally, I fixed some code that changes behaviour, but tries to move slaves more consistent, which was not the case before:
* https://bugs.launchpad.net/mysql-mmm/+bug/771843
* https://code.launchpad.net/~gryp/mysql-mmm/mysql-mmm-MoveSlavesMoreConsistent

Can you help with this problem?

Provide an answer of your own, or ask Kester Riley for more information if necessary.

To post a message you must log in.