<div dir="ltr">Thanks Digimer!<div><br></div><div>I will learn more about DRBD&#39;s fencing mechanism. </div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Mar 2, 2016 at 12:10 PM, Digimer <span dir="ltr">&lt;<a href="mailto:lists@alteeve.ca" target="_blank">lists@alteeve.ca</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 01/03/16 08:56 PM, Mark Wu wrote:<br>
&gt; Hi Digimer,<br>
&gt;<br>
&gt; Thanks for your reply!<br>
&gt;<br>
&gt; Yes,  I understand fencing can prevent split-brains.  But in my case it<br>
&gt; maybe not sufficient.  Let me clarify my use case.  Basically, you can<br>
&gt; get the architecture from <a href="http://ibin.co/2YoKo5VOmRYn" rel="noreferrer" target="_blank">http://ibin.co/2YoKo5VOmRYn</a>    The app on each<br>
&gt; client server will do I/O via block interface directly instead using a<br>
&gt; cluster file system. Every client server need write access to all drdb<br>
&gt; volumes to build a VG group. But the application can guarantee that no<br>
&gt; two servers write to the same data area at the same time because it just<br>
&gt; writes to the data belonging to itself even when spli-brain happens.  So<br>
&gt; merging data I mentioned before means just pull all newest data from<br>
&gt; different volumes together.<br>
&gt;<br>
&gt; For the suggestion of fencing,  I think it still can cause somehow<br>
&gt; out-of-sync because the fencing is invoked by cluster management<br>
&gt; software, but in data plane the I/O could be done before the fencing<br>
&gt; happens.<br>
&gt;<br>
&gt; my understanding is that fencing is invoked by the cluster management<br>
&gt; software asynchronously.<br>
<br>
</span>First; My experience is with 8.4, not 9. So caveat emptor.<br>
<br>
DRBD has its own concept of fencing; &#39;fencing; resource-and-stonith;&#39;<br>
and &#39;fence-handler &quot;/path/to/some/script&quot;;&#39;. If DRBD detects the peer<br>
fail, it blocks IO and calls the fence handler immediately. Most often,<br>
this handler passes the request up to the cluster manager and waits for<br>
a success message.<br>
<br>
So no, DRBD will not fall out of sync.<br>
<br>
As for your use case; I honestly don&#39;t understand it. It looks rather<br>
complicated.<br>
<div class="HOEnZb"><div class="h5"><br>
--<br>
Digimer<br>
Papers and Projects: <a href="https://alteeve.ca/w/" rel="noreferrer" target="_blank">https://alteeve.ca/w/</a><br>
What if the cure for cancer is trapped in the mind of a person without<br>
access to education?<br>
</div></div></blockquote></div><br></div>