<br><font size=2><tt>&gt; Brian R. Hellman brian@linbit.com wrote:<br>
&gt;<br>
&gt;</tt></font>
<br><font size=2><tt>&gt; It's not officially posted yet, but here is a
link to a HOWTO that I<br>
&gt; wrote, this should help :)<br>
</tt></font>
<br><font size=2><tt>&gt; http://www.howtoforge.com/node/4265</tt></font>
<br>
<br><font size=2><tt>Thanks Brian that did the trick !</tt></font>
<br>
<br><font size=2><tt>Do you know if this will make it's way into the Users
Guide ?</tt></font>
<br>
<br><font size=2><tt>I had guessed I needed a &quot;--overwrite-data-of-peer&quot;
for the stacked</tt></font>
<br><font size=2><tt>resource but did not know the syntax. Shouldn't this
be in the</tt></font>
<br><font size=2><tt>drbdadm man page ?</tt></font>
<br>
<br><font size=2><tt>Also with the above post you use &quot;adjust&quot;
rather then &quot;up&quot;. In</tt></font>
<br><font size=2><tt>this context would both do the same thing ?</tt></font>
<br>
<br><font size=2><tt>Thanks<br>
</tt></font>
<br>
<br><font size=2><tt>&gt; <br>
&gt; David.Livingstone@cn.ca wrote:<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; &nbsp;Following on my Three node setup questions I have attempted
to<br>
&gt; &gt; &nbsp;setup a three node cluster. See the drbd.conf at the end
of this<br>
&gt; &gt; &nbsp;message and the following background.<br>
&gt; &gt;<br>
&gt; &gt; &nbsp;I get to the point of executing &quot;drbdadm --stacked
primary drbd-U&quot;<br>
&gt; &gt; &nbsp;and I get the following error. Any help would be appreciated.<br>
&gt; &gt;<br>
&gt; &gt; [root@hatest1 etc]# drbdadm --stacked primary drbd-U<br>
&gt; &gt; /dev/drbd1: State change failed: (-2) Refusing to be Primary
without at<br>
&gt; &gt; least one UpToDate disk<br>
&gt; &gt; Command 'drbdsetup /dev/drbd1 primary' terminated with exit code
17<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; &nbsp;HW and SW Background :<br>
&gt; &gt;<br>
&gt; &gt; &nbsp; &nbsp;All three machines :<br>
&gt; &gt; - HW : - Proliant DL380G4<br>
&gt; &gt; - SW : - Latest RHEL5 and kernel-2.6.18-128.1.1.el5<br>
&gt; &gt; - drbd : drbd-8.3.0-3, drbd-km-2.6.18_128.1.1.el5-8.3.0-3<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; &nbsp;Here is what the game plan was :<br>
&gt; &gt;<br>
&gt; &gt; 1. Bring up the underlying resource &quot;drbd&quot; :<br>
&gt; &gt; On hatest1/2:<br>
&gt; &gt; - drbdadm create-md drbd<br>
&gt; &gt; - modprobe drbd<br>
&gt; &gt; - drbdadm up drbd<br>
&gt; &gt; On hatest1:<br>
&gt; &gt; - drbdadm -- --overwrite-data-of-peer primary drbd<br>
&gt; &gt; 2. Manually on the &quot;primary&quot; bring up the 165.115.204.197(hatest)<br>
&gt; &gt; address specified for the stacked resource - it is this<br>
&gt; &gt; address which talks to the nlstor1 backup.<br>
&gt; &gt;<br>
&gt; &gt; On hatest1:<br>
&gt; &gt; ifconfig eth1:0 165.115.204.197 up<br>
&gt; &gt;<br>
&gt; &gt; 3. Start the stacked drbd-U resource :<br>
&gt; &gt;<br>
&gt; &gt; As with unstacked resources, you must create DRBD meta data on
the<br>
&gt; &gt; stacked resources. This is done using the following command:<br>
&gt; &gt;<br>
&gt; &gt; On hatest1:<br>
&gt; &gt; drbdadm --stacked create-md drbd-U<br>
&gt; &gt;<br>
&gt; &gt; Then, you may enable the stacked resource:<br>
&gt; &gt;<br>
&gt; &gt; On hatest1:<br>
&gt; &gt; drbdadm --stacked up drbd-U<br>
&gt; &gt; drbdadm --stacked primary drbd-U<br>
&gt; &gt;<br>
&gt; &gt; After this, you may bring up the resource on the backup node,
enabling<br>
&gt; &gt; three-node replication:<br>
&gt; &gt;<br>
&gt; &gt; On nlstor1:<br>
&gt; &gt; drbdadm create-md drbd-U<br>
&gt; &gt; drbdadm up drbd-U<br>
&gt; &gt;<br>
&gt; &gt; Here is the command history from the machines as they were executed
:<br>
&gt; &gt;<br>
&gt; &gt; [root@hatest1 etc]# drbdadm create-md drbd<br>
&gt; &gt; md_offset 1572859904<br>
&gt; &gt; al_offset 1572827136<br>
&gt; &gt; bm_offset 1572777984<br>
&gt; &gt;<br>
&gt; &gt; Found some data<br>
&gt; &gt; ==&gt; This might destroy existing data! &lt;==<br>
&gt; &gt;<br>
&gt; &gt; Do you want to proceed?<br>
&gt; &gt; [need to type 'yes' to confirm] yes<br>
&gt; &gt;<br>
&gt; &gt; Writing meta data...<br>
&gt; &gt; initialising activity log<br>
&gt; &gt; NOT initialized bitmap<br>
&gt; &gt; New drbd meta data block sucessfully created.<br>
&gt; &gt; [root@hatest1 etc]#<br>
&gt; &gt;<br>
&gt; &gt; [root@hatest2 etc]# drbdadm create-md drbd<br>
&gt; &gt; md_offset 1572859904<br>
&gt; &gt; al_offset 1572827136<br>
&gt; &gt; bm_offset 1572777984<br>
&gt; &gt;<br>
&gt; &gt; Found some data<br>
&gt; &gt; ==&gt; This might destroy existing data! &lt;==<br>
&gt; &gt;<br>
&gt; &gt; Do you want to proceed?<br>
&gt; &gt; [need to type 'yes' to confirm] yes<br>
&gt; &gt;<br>
&gt; &gt; Writing meta data...<br>
&gt; &gt; initialising activity log<br>
&gt; &gt; NOT initialized bitmap<br>
&gt; &gt; New drbd meta data block sucessfully created.<br>
&gt; &gt; [root@hatest2 etc]#<br>
&gt; &gt;<br>
&gt; &gt; [root@hatest1 etc]# modprobe drbd<br>
&gt; &gt; [root@hatest1 etc]# lsmod|grep drbd<br>
&gt; &gt; drbd &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;220696 &nbsp;0<br>
&gt; &gt; [root@hatest1 etc]# service drbd status<br>
&gt; &gt; drbd driver loaded OK; device status:<br>
&gt; &gt; version: 8.3.0 (api:88/proto:86-89)<br>
&gt; &gt; GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by<br>
&gt; &gt; root@hatest1, 2009-02-13 09:00:29<br>
&gt; &gt; m:res &nbsp;cs &nbsp;ro &nbsp;ds &nbsp;p &nbsp;mounted &nbsp;fstype<br>
&gt; &gt; [root@hatest1 etc]# drbdadm up drbd<br>
&gt; &gt; [root@hatest1 etc]#<br>
&gt; &gt;<br>
&gt; &gt; [root@hatest2 etc]# modprobe drbd<br>
&gt; &gt; [root@hatest2 etc]# service drbd status<br>
&gt; &gt; drbd driver loaded OK; device status:<br>
&gt; &gt; version: 8.3.0 (api:88/proto:86-89)<br>
&gt; &gt; GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by<br>
&gt; &gt; root@hatest2, 2009-02-13 09:59:05<br>
&gt; &gt; m:res &nbsp;cs &nbsp;ro &nbsp;ds &nbsp;p &nbsp;mounted &nbsp;fstype<br>
&gt; &gt; [root@hatest2 etc]# drbdadm up drbd<br>
&gt; &gt; [root@hatest2 etc]#<br>
&gt; &gt;<br>
&gt; &gt; [root@hatest1 etc]# cat /proc/drbd<br>
&gt; &gt; version: 8.3.0 (api:88/proto:86-89)<br>
&gt; &gt; GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by<br>
&gt; &gt; root@hatest1, 2009-02-13 09:00:29<br>
&gt; &gt; 0: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent
C r---<br>
&gt; &gt; ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:1535916<br>
&gt; &gt; [root@hatest1 etc]#<br>
&gt; &gt; [root@hatest2 etc]# cat /proc/drbd<br>
&gt; &gt; version: 8.3.0 (api:88/proto:86-89)<br>
&gt; &gt; GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by<br>
&gt; &gt; root@hatest2, 2009-02-13 09:59:05<br>
&gt; &gt; 0: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent
C r---<br>
&gt; &gt; ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:1535916<br>
&gt; &gt; [root@hatest2 etc]#<br>
&gt; &gt;<br>
&gt; &gt; [root@hatest1 etc]# drbdadm -- --overwrite-data-of-peer primary
drbd<br>
&gt; &gt; [root@hatest1 etc]#<br>
&gt; &gt;<br>
&gt; &gt; [root@hatest1 etc]# cat /proc/drbd<br>
&gt; &gt; version: 8.3.0 (api:88/proto:86-89)<br>
&gt; &gt; GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by<br>
&gt; &gt; root@hatest1, 2009-02-13 09:00:29<br>
&gt; &gt; 0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent
C r---<br>
&gt; &gt; ns:1239832 nr:0 dw:0 dr:1241792 al:0 bm:74 lo:161 pe:175 ua:223
ap:0<br>
&gt; &gt; ep:1 wo:b oos:301676<br>
&gt; &gt; [===============&gt;....] sync'ed: 80.6% (301676/1535916)K<br>
&gt; &gt; finish: 0:00:06 speed: 48,812 (49,368) K/sec<br>
&gt; &gt; [root@hatest1 etc]# cat /proc/drbd<br>
&gt; &gt; version: 8.3.0 (api:88/proto:86-89)<br>
&gt; &gt; GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by<br>
&gt; &gt; root@hatest1, 2009-02-13 09:00:29<br>
&gt; &gt; 0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r---<br>
&gt; &gt; ns:1535916 nr:0 dw:0 dr:1535916 al:0 bm:94 lo:0 pe:0 ua:0 ap:0
ep:1 wo:b<br>
&gt; &gt; oos:0<br>
&gt; &gt; [root@hatest1 etc]#<br>
&gt; &gt;<br>
&gt; &gt; root@hatest2 etc]# &nbsp;cat /proc/drbd<br>
&gt; &gt; version: 8.3.0 (api:88/proto:86-89)<br>
&gt; &gt; GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by<br>
&gt; &gt; root@hatest2, 2009-02-13 09:59:05<br>
&gt; &gt; 0: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r---<br>
&gt; &gt; ns:0 nr:1535916 dw:1535916 dr:0 al:0 bm:94 lo:0 pe:0 ua:0 ap:0
ep:1 wo:b<br>
&gt; &gt; oos:0<br>
&gt; &gt; [root@hatest2 etc]#<br>
&gt; &gt;<br>
&gt; &gt; [root@hatest1 etc]# drbdadm --stacked create-md drbd-U<br>
&gt; &gt; md_offset 1572773888<br>
&gt; &gt; al_offset 1572741120<br>
&gt; &gt; bm_offset 1572691968<br>
&gt; &gt;<br>
&gt; &gt; Found some data<br>
&gt; &gt; ==&gt; This might destroy existing data! &lt;==<br>
&gt; &gt;<br>
&gt; &gt; Do you want to proceed?<br>
&gt; &gt; [need to type 'yes' to confirm] yes<br>
&gt; &gt;<br>
&gt; &gt; Writing meta data...<br>
&gt; &gt; initialising activity log<br>
&gt; &gt; NOT initialized bitmap<br>
&gt; &gt; New drbd meta data block sucessfully created.<br>
&gt; &gt; [root@hatest1 etc]#<br>
&gt; &gt;<br>
&gt; &gt; [root@hatest1 etc]# drbdadm --stacked up drbd-U<br>
&gt; &gt; [root@hatest1 etc]#<br>
&gt; &gt;<br>
&gt; &gt; [root@hatest1 etc]# drbdadm --stacked primary drbd-U<br>
&gt; &gt; /dev/drbd1: State change failed: (-2) Refusing to be Primary
without at<br>
&gt; &gt; least one UpToDate disk<br>
&gt; &gt; Command 'drbdsetup /dev/drbd1 primary' terminated with exit code
17<br>
&gt; &gt; [root@hatest1 etc]#<br>
&gt; &gt;<br>
&gt; &gt; [root@hatest1 etc]# cat /proc/drbd<br>
&gt; &gt; version: 8.3.0 (api:88/proto:86-89)<br>
&gt; &gt; GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by<br>
&gt; &gt; root@hatest1, 2009-02-13 09:00:29<br>
&gt; &gt; 0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r---<br>
&gt; &gt; ns:1536005 nr:0 dw:89 dr:1536107 al:1 bm:94 lo:0 pe:0 ua:0 ap:0
ep:1<br>
&gt; &gt; wo:b oos:0<br>
&gt; &gt; 1: cs:WFConnection ro:Secondary/Unknown ds:Inconsistent/DUnknown
A r---<br>
&gt; &gt; ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:1535832<br>
&gt; &gt; [root@hatest1 etc]#<br>
&gt; &gt;<br>
&gt; &gt; root@nlstor1 etc]# &nbsp;drbdadm create-md drbd-U<br>
&gt; &gt; md_offset 2147479552<br>
&gt; &gt; al_offset 2147446784<br>
&gt; &gt; bm_offset 2147381248<br>
&gt; &gt;<br>
&gt; &gt; Found some data<br>
&gt; &gt; ==&gt; This might destroy existing data! &lt;==<br>
&gt; &gt;<br>
&gt; &gt; Do you want to proceed?<br>
&gt; &gt; [need to type 'yes' to confirm] yes<br>
&gt; &gt;<br>
&gt; &gt; Writing meta data...<br>
&gt; &gt; initialising activity log<br>
&gt; &gt; NOT initialized bitmap<br>
&gt; &gt; New drbd meta data block sucessfully created.<br>
&gt; &gt; [root@nlstor1 etc]#<br>
&gt; &gt;<br>
&gt; &gt; [root@nlstor1 etc]# drbdadm up drbd-U<br>
&gt; &gt; [root@nlstor1 etc]#<br>
&gt; &gt; [root@hatest1 etc]# cat /proc/drbd<br>
&gt; &gt; version: 8.3.0 (api:88/proto:86-89)<br>
&gt; &gt; GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by<br>
&gt; &gt; root@hatest1, 2009-02-13 09:00:29<br>
&gt; &gt; 0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r---<br>
&gt; &gt; ns:1536006 nr:0 dw:90 dr:1536158 al:1 bm:94 lo:0 pe:0 ua:0 ap:0
ep:1<br>
&gt; &gt; wo:b oos:0<br>
&gt; &gt; 1: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent
A r---<br>
&gt; &gt; ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:1535832<br>
&gt; &gt; [root@hatest1 etc]#<br>
&gt; &gt; [root@nlstor1 etc]# cat /proc/drbd<br>
&gt; &gt; version: 8.3.0 (api:88/proto:86-89)<br>
&gt; &gt; GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by<br>
&gt; &gt; root@nlstor1, 2009-02-19 11:56:15<br>
&gt; &gt;<br>
&gt; &gt; 1: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent
A r---<br>
&gt; &gt; ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:1535832<br>
&gt; &gt; [root@nlstor1 etc]#<br>
&gt; &gt;<br>
&gt; &gt; [root@hatest1 etc]# drbdadm --stacked primary drbd-U<br>
&gt; &gt; /dev/drbd1: State change failed: (-2) Refusing to be Primary
without at<br>
&gt; &gt; least one UpToDate disk<br>
&gt; &gt; Command 'drbdsetup /dev/drbd1 primary' terminated with exit code
17<br>
&gt; &gt; [root@hatest1 etc]#<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; Here is the drbd.conf :<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; global {<br>
&gt; &gt; usage-count no;<br>
&gt; &gt; }<br>
&gt; &gt;<br>
&gt; &gt; common {<br>
&gt; &gt; disk {<br>
&gt; &gt; on-io-error detach; # What to do when the lower level device
errors.<br>
&gt; &gt; }<br>
&gt; &gt;<br>
&gt; &gt; net {<br>
&gt; &gt; max-buffers 2048; #datablock buffers used before writing to disk.<br>
&gt; &gt; ko-count 4; # Peer is dead if this count is exceeded.<br>
&gt; &gt; #on-disconnect reconnect; # Peer disconnected, try to reconnect.<br>
&gt; &gt; }<br>
&gt; &gt;<br>
&gt; &gt; startup {<br>
&gt; &gt; wfc-timeout 0; # drbd init script will wait infinitely on resources.<br>
&gt; &gt; degr-wfc-timeout 120; # 2 minutes.<br>
&gt; &gt; }<br>
&gt; &gt; } # End of common<br>
&gt; &gt;<br>
&gt; &gt; resource drbd {<br>
&gt; &gt; protocol C;<br>
&gt; &gt; syncer {<br>
&gt; &gt; rate 100M; # Synchronization rate, in megebytes. Good for 100Mb
network.<br>
&gt; &gt; al-extents 257; # Must be prime, number of active sets.<br>
&gt; &gt; }<br>
&gt; &gt; on hatest1 {<br>
&gt; &gt; device /dev/drbd0; # The name of our drbd device.<br>
&gt; &gt; disk /dev/hatest_vg/vol01; &nbsp; &nbsp;# Partition we wish drbd
to use.<br>
&gt; &gt; address 192.168.36.130:7788; # node0 IP address and port number.<br>
&gt; &gt; meta-disk internal; # Stores meta-data in lower portion of disk.<br>
&gt; &gt; }<br>
&gt; &gt; on hatest2 {<br>
&gt; &gt; device /dev/drbd0; # Our drbd device, must match node0.<br>
&gt; &gt; disk /dev/hatest_vg/vol01; &nbsp; &nbsp;# Partition we wish drbd
to use.<br>
&gt; &gt; address 192.168.36.129:7788; # node0 IP address and port number.<br>
&gt; &gt; meta-disk internal; # Stores meta-data in lower portion of disk.<br>
&gt; &gt; }<br>
&gt; &gt; } # End of resource drbd<br>
&gt; &gt;<br>
&gt; &gt; resource drbd-U {<br>
&gt; &gt; protocol A;<br>
&gt; &gt;<br>
&gt; &gt; syncer &nbsp;{<br>
&gt; &gt; rate 30M;<br>
&gt; &gt; al-extents 257;<br>
&gt; &gt; }<br>
&gt; &gt;<br>
&gt; &gt; stacked-on-top-of drbd {<br>
&gt; &gt; device /dev/drbd1;<br>
&gt; &gt; address 165.115.204.197:7788;<br>
&gt; &gt; }<br>
&gt; &gt;<br>
&gt; &gt; on nlstor1 {<br>
&gt; &gt; device /dev/drbd1; # The name of our drbd device.<br>
&gt; &gt; disk /dev/VolGroup00/LogVol02; &nbsp; &nbsp;# Partition we wish
drbd to use.<br>
&gt; &gt; address 165.115.163.52:7788; # node0 IP address and port number.<br>
&gt; &gt; meta-disk internal; # Stores meta-data in lower portion of disk<br>
&gt; &gt; }<br>
&gt; &gt; } # End of resource drbd-U<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; ------------------------------------------------------------------------<br>
&gt; &gt;<br>
&gt; &gt; _______________________________________________<br>
&gt; &gt; drbd-user mailing list<br>
&gt; &gt; drbd-user@lists.linbit.com<br>
&gt; &gt; http://lists.linbit.com/mailman/listinfo/drbd-user<br>
</tt></font>
<br><font size=2><tt>&gt; <br>
&gt; ------------------------------<br>
</tt></font>
<br><font size=2><tt>&gt; _______________________________________________<br>
&gt; drbd-user mailing list<br>
&gt; drbd-user@lists.linbit.com<br>
&gt; http://lists.linbit.com/mailman/listinfo/drbd-user<br>
</tt></font>
<br><font size=2><tt>&gt; <br>
&gt; End of drbd-user Digest, Vol 55, Issue 32<br>
&gt; *****************************************</tt></font>