<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div>My apologies for the length of this; I&#39;d rather give to much information than too little.</div><div><br></div><div dir="ltr">I have a simple PaceMaker cluster with two nodes, A and B, that are CentOS 7 VMs.  In both nodes I have a file named my-data.res under /etc/drdb.d, with the following contents (identical in both nodes):</div><div dir="ltr"><br></div><div dir="ltr"><div dir="ltr">          resource my-data {</div><div dir="ltr">            protocol C;</div><div dir="ltr">            meta-disk internal;</div><div dir="ltr">            device /dev/drbd1;</div><div dir="ltr"><br></div><div dir="ltr">            syncer {</div><div dir="ltr">             verify-alg sha1;</div><div dir="ltr">            }</div><div dir="ltr"><br></div><div dir="ltr">            net {</div><div dir="ltr">             allow-two-primaries;</div><div dir="ltr">            }</div><div dir="ltr">            on A {</div><div dir="ltr">             disk /dev/sdb1;</div><div dir="ltr">             address <a href="http://192.168.123.17:7789">192.168.0.5:7789</a>;</div><div dir="ltr">            }</div><div dir="ltr"><br></div><div dir="ltr">            on B {</div><div dir="ltr">             disk /dev/sdb1;</div><div dir="ltr">             address <a href="http://192.168.123.20:7789">192.168.0.6:7789</a>;</div><div dir="ltr">            }</div><div dir="ltr">          }</div><div><br></div></div><div dir="ltr">In both A and B, I did the following:<br></div><div dir="ltr"><div><br></div><div><div>   # drbdadm create-md my-data</div><div>   --==  Thank you for participating in the global usage survey  ==--<br></div><div>   The server&#39;s response is:</div><div><br></div><div>    you are the xxxxxth user to install this version</div><div>    drbdmeta 1 v08 /dev/sdb1 internal create-md</div><div><br></div><div>    # drbdadm up my-data</div><div><br></div><div>In A alone, I did the following:</div><div><br></div><div>     # drbdadm primary --force my-data</div></div><div><br></div><div>After this, and  giving time for both nodes to become synchronized,  I get the following in A:</div><div><div><br></div><div>     # cat /proc/drbd</div><div>      version: 8.4.11-1 (api:1/proto:86-101)<br></div><div>      GIT-hash: 66145a308421e9c124ec391a7848ac20203bb03c build by mockbuild@, 2018-11-03 01:26:55</div><div><br></div><div>      1: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----ns:2096028 nr:0 dw:0 dr:2098148 al:8 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0</div><div><br></div><div>whereas  the output from the same command in B is</div><div><br></div><div>       version: 8.4.11-1 (api:1/proto:86-101)<br></div><div>       GIT-hash: 66145a308421e9c124ec391a7848ac20203bb03c build by mockbuild@, 2018-11-03 01:26:55</div><div><br></div><div>       1: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r-----ns:0 nr:2096028 dw:2096028 dr:0 al:8 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0</div><div><br></div></div><div>In A, I then created a filesystem in the /dev/drbd1 device</div><div><br></div><div><div>        # mkfs.ext4 /dev/drbd1</div><div><br></div><div>I then mounted it (stil in A)  and populated it with some data, consisting of two files, f1 and f2, unmounting when done.</div><div><br></div></div><div>After this, I issued the following commands in A:</div><div><br></div><div><div>        # pcs cluster cib drbd_cfg</div><div>        # pcs -f drbd_cfg resource create DrbdData ocf:linbit:drbd drbd_resource=my-data op monitor interval=60s</div><div>        # pcs -f drbd_cfg resource master DrbdDataClone DrbdData master-max=1 master-node-max=1 clone-max=2 clone-node-max=1 notify=true</div><div>        # pcs cluster cib-push drbd_cfg<br></div></div><div><div>        # pcs cluster cib fs_cfg</div><div>        # pcs -f fs_cfg resource create DrbdFS Filesystem device=&quot;/dev/drbd1&quot; directory=&quot;/var/lib/my-data&quot; fstype=&quot;ext4&quot;</div></div><div>        # pcs -f fs_cfg constraint colocation add DrbdFS with DrbdDataClone INFINITY with-rsc-role=Master</div><div><div>        # pcs -f fs_cfg constraint order promote DrbdDataClone then start DrbdFS</div><div>        Adding DrbdDataClone DrbdFS (kind: Mandatory) (Options: first-action=promote then-action=start)</div><div>        # pcs -f fs_cfg constraint colocation add ClusterIP with DrbdFS INFINITY</div><div>        # pcs -f fs_cfg constraint order DrbdFS then ClusterIP</div><div>         Adding DrbdFS ClusterIP (kind: Mandatory) (Options: first-action=start then-action=start)</div><div>        # pcs cluster cib-push fs_cfg</div><div>        CIB Updated</div><div>        # pcs status resources</div><div>        ClusterIP  (ocf::heartbeat:IPaddr2):  Started A</div><div>         Master/Slave Set: DrbdDataClone [DrbdData]</div><div>             Masters: [ A ]</div><div>             Slaves: [ B ]</div><div>         DrbdFS  (ocf::heartbeat:Filesystem):  Started A</div></div><div><br></div><div>The output from the last command in B is very similar,  mutatis mutandis.</div><div><br></div><div>Once this all is done, node A is active where node B is passive. When I do </div><div><br></div><div>           # ls /var/lib/my-data</div><div><br></div><div>in A I can see the f1 and f2 files that I created above. In B, however, there is nothing. My understanding of the DRBD framework tells me that this is expected.</div><div><br></div><div>During this state of affairs (i.e. the cluster up both in A and B, with A being the active node and B being the passive node) I stopped the A node by issuing the following command in A:</div><div><br></div><div>             # pcs cluster stop A</div><div><br></div><div>After this, and giving time for node B to take over, I get the following in B:</div><div><br></div><div><div>             # pcs status</div><div>            Cluster name: FirstCluster</div><div>            Stack: corosync</div><div>            Current DC: B (version 1.1.19-8.el7_6.4-c3c624ea3d) - partition with quorum</div><div>            Last updated: Wed Apr  3 11:49:19 2019</div><div>            Last change: Wed Apr  3 09:53:30 2019 by root via cibadmin on B</div><div><br></div><div>           2 nodes configured</div><div>           4 resources configured</div><div><br></div><div>           Online: [ B ]</div><div>           OFFLINE: [ A ]</div><div><br></div><div>           Full list of resources:</div><div><br></div><div>           ClusterIP<span style="white-space:pre">        </span>(ocf::heartbeat:IPaddr2):<span style="white-space:pre">        </span>Started B</div><div>           Master/Slave Set: DrbdDataClone [DrbdData]</div><div>               Masters: [ B ]</div><div>               Stopped: [ A ]</div><div>           DrbdFS<span style="white-space:pre">        </span>(ocf::heartbeat:Filesystem):<span style="white-space:pre">        </span>Started B</div><div><br></div><div>           Daemon Status:</div><div>              corosync: active/enabled</div><div>              pacemaker: active/enabled</div><div>              pcsd: active/enabled</div></div><div><br></div><div>On listing the contents of /var/lib/my-data on A, nothing is found there. However, on listing the contents of /var/lib/my-data on B, I find files f1 and f2. So, B has taken over and is now accessing, thanks to DRDB,  the filesystem created in A earlier on.</div><div><br></div><div>Next I started and stopped both A and B (the nodes, not the VMs) until I got back the original situation - namely, A is active, B is passive, /var/log/my-data contains f1 and f2 in A, and nothing in B.</div><div><br></div><div>Next I did the following: In A I removed both f1 and f2, and added new files, f3, and f4. I did this while A is the active node. After this I stopped the A node from A as above. Having done this, the output from pcs status in B is as described above. Here&#39;s the thing:</div><div><br></div><div>In this situation, when I list the contents of /var/lib/my-data in A, I find it to be empty - as expected, for A has been stopped. When I list the contents of /var/lib/my-data in B, however, what I see is files f1 and f2, not f3 and f4. I was expecting for any changes made on /var/lib/my-data while A was active to be made visible to B when it takes over.</div><div><br></div><div>Is my expectation misplaced? Or perhaps the changes to /var/lib/my-data have to be made by some resource explicitly managed by PaceMaker, while changes done by hand are just dismissed? Notice, however, that if I bring the A node up again, and make it active, on listing /var/lib/my-data on A I see files f3 and f4: the changes I made by hand have not just been dismissed.</div><div><br></div><div>As you can see, I am very confused.</div><div><br></div><div><br></div><div><br></div></div></div></div></div></div></div></div></div></div>