zekky / mysql-master-ha

Automatically exported from code.google.com/p/mysql-master-ha
0 stars 0 forks source link

What if the Manager fails ? #19

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
First of all; Great project!

I wonder what happens when the manager fail.

For an example, the project MMM needs a writer with only readers, when your 
write is down you have an issue, so a SPOF.

In this case you have a manager which is also a SPOF because when it goes down, 
the servers are not checked anymore and if a Master fails another Slave cannot 
become a Master.

Is it not an idea to have all Slave nodes be some sort of Manager which checks 
what slave is the last Slave and becomes master when the master goes down ? In 
this case the master never needs to be a Manager too.

I think about this because I don't want to hev a SPOF. In a Master<>Master 
replacation is should have no SPOF but a split brain can occure instead which 
is not nice at all. 

Original issue reported on code.google.com by yamakasi...@gmail.com on 22 Feb 2012 at 10:35

GoogleCodeExporter commented 9 years ago
It's documented here.

http://code.google.com/p/mysql-master-ha/wiki/FAQ#How_to_make_MHA_Manager_node_i
tself_Highly_Available_?

Currently monitoring the same master from multiple MHA Manager is NOT 
supported. So if the MHA Manager goes down, automated master failover can not 
be started. MHA Manager down does not result in master down, so it's much less 
serious, but you may want to make MHA Manager highly available as long as 
possible. Current recommended MHA Manager HA solution is using common 
active/standby solutions like Pacemaker.

Original comment by Yoshinor...@gmail.com on 22 Feb 2012 at 10:40

GoogleCodeExporter commented 9 years ago
Thank you, I didn't see that alinea there.

But why don't monitor the Master from it's slaves ? I think you don't need a 
manager at all than.

Original comment by yamakasi...@gmail.com on 22 Feb 2012 at 10:57

GoogleCodeExporter commented 9 years ago
You can run manager on one of slaves.
Monitoring master from slave itself requires MySQL codebase changes. This is 
not trivial.

Original comment by Yoshinor...@gmail.com on 22 Feb 2012 at 11:00

GoogleCodeExporter commented 9 years ago
OK, but if a slave becomes master, it would be great of other managers on other 
nodes are updated about this. When the nest master goes down... so on... 

In this case when a master goes down you only have to add a new slave to have 
the old situation again.

Original comment by yamakasi...@gmail.com on 22 Feb 2012 at 11:06

GoogleCodeExporter commented 9 years ago
--remove_dead_master_conf may help.
http://code.google.com/p/mysql-master-ha/wiki/masterha_manager

Original comment by Yoshinor...@gmail.com on 26 Feb 2012 at 1:10