<html><body><div style="font-family: Arial; font-size: 12pt; color: #000000"><div aria-label="Compose body">While testing drbd 9.0,in a three node mesh, executing drbdadm down r0 on the primary node does not promote other nodes to primary (no big deal as I'll do that with pacemaker) but drbdadm reports it cannot detach the block device since it was primary. <br></div><div aria-label="Compose body"><br></div><div aria-label="Compose body"><em>[root@mom3 chucks]# drbdadm status r0</em><br><em>This command will ignore resource names!</em><br><em>r0 role:Primary</em><br><em> disk:UpToDate</em><br><em> mom1 role:Secondary</em><br><em> peer-disk:UpToDate</em><br><em> mom2 role:Secondary</em><br><em> peer-disk:UpToDate</em><br><br><em>[root@mom3 chucks]# drbdadm down r0</em><br><em>r0: State change failed: (-2) Need access to UpToDate data</em><br><em>additional info from kernel:</em><br><em>failed to detach</em><br><em>Command 'drbdsetup down r0' terminated with exit code 17</em><br><br></div><div aria-label="Compose body">even though now from another node the resource IS down<br></div><div aria-label="Compose body"><em>[root@mom1 chucks]# drbdadm status</em><br><em>r0 role:Secondary</em><br><em> disk:UpToDate</em><br><em> mom2 role:Secondary</em><br><em> peer-disk:UpToDate</em><br><em> mom3 connection:Connecting</em><br><br></div><div aria-label="Compose body">and it seems to be unable to restore that it was primary, have to promote another node to primary and the old primary has to be taken down to secondary. <br></div><div aria-label="Compose body"><br></div><div aria-label="Compose body"><br></div><div aria-label="Compose body">So if not a "bug" / "feature" what would be the appropriate sequence,<br></div><div aria-label="Compose body">1) demote current primary to secondary<br></div><div aria-label="Compose body">2) promote new node to primary<br></div><div aria-label="Compose body">3) bring down old primary <br></div><div aria-label="Compose body"><br></div><div aria-label="Compose body">I see some trouble brewing with this as I progress to pacemaker and begin hard failover testing. (aka power / communication loss on 1 or 2 nodes at a time) <br></div><div aria-label="Compose body">-------------------------<br></div><div aria-label="Compose body">particulars...............<br></div><div aria-label="Compose body">---------------------------<br></div><div aria-label="Compose body">drbd<br></div><div aria-label="Compose body">version: 9.0.0 (api:2/proto:86-110)<br>GIT-hash: 360c65a035fc2dec2b93e839b5c7fae1201fa7d9</div><div aria-label="Compose body">drbd-utils<br></div><div aria-label="Compose body">Version: 8.9.3 (api:2)<br>GIT-hash: c11ba026bbbbc647b8112543df142f2185cb4b4b</div><div aria-label="Compose body"><br></div><div aria-label="Compose body">[root@mom1 chucks]# drbdadm dump<br># /etc/drbd.conf<br>global {<br> usage-count yes;<br>}<br><br>common {<br> net {<br> protocol C;<br> }<br>}<br><br># resource r0 on mom1: not ignored, not stacked<br># defined at /etc/drbd.d/r0.res:1<br>resource r0 {<br> on mom1 {<br> node-id 0;<br> device /dev/drbd1 minor 1;<br> disk /dev/vg_submother1/local_storage;<br> meta-disk internal;<br> address ipv4 192.168.110.10:7789;<br> }<br> on mom2 {<br> node-id 1;<br> device /dev/drbd1 minor 1;<br> disk /dev/vg_supermother2/local_storage;<br> meta-disk internal;<br> address ipv4 192.168.110.20:7789;<br> }<br> on mom3 {<br> node-id 2;<br> device /dev/drbd1 minor 1;<br> disk /dev/vg_mom3/local_storage;<br> meta-disk internal;<br> address ipv4 192.168.110.30:7789;<br> }<br> connection-mesh {<br> hosts mom1 mom2 mom3;<br> net {<br> use-rle no;<br> }<br> }<br>}<br><br></div></div></body></html>