Hi, I agree with Alan, if this part of work goes into a quorum module, it would be perfect. Quorum module is a kind of plugin too, so it is not an internal behavior of heartbeat.
When a split-brain happened, the side with more nodes will take the quorum and continue the service, the less nodes side will lost the quorum then be fenced. The problem is when the two sides have same number of nodes. We need a tie breaker in this case. The quorum plugin is going to do this. We implemented a quorum server which running out of the cluster, the side which is still connecting to the quorum server will get the quorum. if both connections are ok, the one who has connected to quorum server first will get the quorum. The SF-EX can be used to break the tie too. When the split brain happens, the side which still can access the share disk will get the quorum and continue it's service. The other side will be fenced. And this is what we expect. And it's easy to implement a quorum plugin, the interface is in include/clplumbing/cl_quorum.h, and you can refer to the implements in lib/plugins/quorum/. On 8/9/07, Alan Robertson <[EMAIL PROTECTED]> wrote: > OKADA Satoshi wrote: > > Hi Alan and all, > >> Hi Alan, > >> > >> Thank you for your comment. > >> This program isn't considered as a quorum module for now. > >> It was developed as RA, I mean, it provides an independent function > >> without > >> some effects to Heartbeat's internal behavior. > >> > >> since we don't have familiar with a quorum module, > >> what are the requirements for it? > >> We have no problem with improving it, but it's not known exactly how we > >> should do. > > I don't know exactly either, because I didn't write that code, but only > >> > > > > For example, SF-EX accesses to disk periodically by the active node to > > keep holding lock. > > We think quorum module can not operate this. Are we wrong? > > The quorum server module operates in a very similar way. It has to send > periodic heartbeats to the quorum server, or the quorum server would > take away its quorum. So, in that sense it's very similar. They are > sending packets, and you are doing disk I/O - but both have to do it > periodically, or it won't be able to keep quorum. > > I have CCed Huang Zhen, who added the plugin interface for the quorum > modules, and who also wrote the quorum daemon itself. > > I suppose I should go read the code, but I'm on traveling with my wife > right now, and until Monday am on holiday. > > -- > Alan Robertson <[EMAIL PROTECTED]> > > "Openness is the foundation and preservative of friendship... Let me > claim from you at all times your undisguised opinions." - William > Wilberforce > _______________________________________________________ > Linux-HA-Dev: [email protected] > http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev > Home Page: http://linux-ha.org/ > -- Best Regards, Huang Zhen (zhenh) http://www.linux-ha.org/HuangZhen _______________________________________________________ Linux-HA-Dev: [email protected] http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev Home Page: http://linux-ha.org/
