<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
Dear all,<BR>
<BR>
sometimes, I found "drbdadm secondary resource" blocks or does not works.<BR>
<BR>
For example, when the primary "Diskless", "drbdadm secondary resource" will not works. <BR>
So, the standby can't become DRBD primary. <BR>
<BR>
I spent several hours to solve this problem.<BR>
<BR>
At last, I think "allow-two-primaries", it may work around for the "drbdadm secondary resource".<BR>
In this solution, the DRBD block device works like a shared disk with network raid1.<BR>And the heartbeat will control which machine will become primary.<BR>
Only the primary machine will mount the block device of DRBD, so only the primary machine will access<BR>
the data in DRBD block device(exclude manually mount the block device on the secondary machine). <BR>
<BR>
I think this is a good idea.<BR>
Would you help to give me suggestion for this idea ? Does it has any problem or potential risk ?<BR>
<BR>
Also, I found the comments below for "allow-two-primaries".<BR>
And the file system I used is ext2 or ext3 of linux. <BR>
I don't know why ext2 or ext3 filesystem must not use "allow-two-primaries".<BR>
<BR>
Although, it has no distributed lock manager like GFS to control concurrent access to the data.<BR>
But, I used heartbeat(2.1.3) and DRBD8.3.0 together, and heartbeat will control and make Only <BR>
the primary machine will mount the block device of DRBD. <BR>
So, if no one hostility or make mistake to mount the DRBD block device on the secondary machine,<BR>
concurrent access will not happen.<BR>
<BR>
Your suggestion is highly appreciated.<BR>
<BR>
:-)<BR>
best wishes,<BR>
Edward<BR>
<BR>
<BR>
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++<BR>
<BR>
<A class=indexterm id=id1293600></A>In dual-primary mode, any resource is, at any given time, in the primary role on both cluster nodes. <BR>
Since concurrent access to the data is thus possible, this mode requires the use of a shared cluster file system that utilizes <BR>
a distributed lock manager. Examples include <A class=indexterm id=id1293968></A><A class=link title="Chapter 12. Using GFS with DRBD" href="http://www.drbd.org/users-guide/ch-gfs.html">GFS</A> and <A class=indexterm id=id1293923></A>OCFS2.<BR>
<BR>
++++++++++++++++++++++++++++++++++++++++++++<BR>
# The highest number of data blocks between two write barriers.<BR> # If you set this < 10 you might decrease your performance.<BR> # max-epoch-size 2048;<BR>
# if some block send times out this many times, the peer is<BR> # considered dead, even if it still answers ping requests.<BR> # ko-count 4;<BR>
# If you want to use OCFS2/openGFS on top of DRBD enable<BR> # this optione, and only enable it if you are going to use<BR> # one of these filesystems. Do not enable it for ext2,<BR> # ext3,reiserFS,XFS,JFS etc...<BR> allow-two-primaries;<BR> <BR>
<HR id=stopSpelling>
From: guohuai_li@hotmail.com<BR>To: james.masson@tradefair.com; drbd-user@lists.linbit.com; guohuailee0927@gmail.com; guohuai_li@hotmail.com<BR>Subject: how to make the resource secondary mandatorily<BR>Date: Fri, 4 Dec 2009 12:20:52 +0800<BR><BR>
<STYLE>
.ExternalClass .ecxhmmessage P
{padding:0px;}
.ExternalClass body.ecxhmmessage
{font-size:10pt;font-family:Verdana;}
</STYLE>
Dear all,<BR> <BR>Would you help to tell me how to make the resource secondary mandatorily ?<BR> <BR>Now I use DRBD8.3.0.<BR> <BR>And the primary node is diskless, so I "umount /dev/drbd0" and try to issue command<BR>"drbdadm secondary r0" to make the resource secondary.<BR>But it not works, the detail info is like below.<BR> <BR>I suggest DRBD provide a command to make the resource secondary mandatorilly, especially while "Diskless".<BR>Maybe I didn't know such command.<BR> <BR>thanks for your help,<BR> <BR>Regards,<BR>Edward<BR> <BR>+++++++++++++++++++++++++++++++++++<BR> <BR>linux-10:~ # drbdadm secondary r0<BR>unlink: Read-only file system<BR>open(/var/lock/drbd-147-0): Read-only file system<BR>Command 'drbdsetup /dev/drbd0 secondary' terminated with exit code 20<BR>drbdadm secondary r0: exited with code 20<BR>linux-10:~ # cat /proc/drbd <BR>version: 8.3.0 (api:88/proto:86-89)<BR>GIT-hash: 9ba8b93e24d842f0dd3fb1f9b90e8348ddb95829 build by <A href="mailto:root@linux-10">root@linux-10</A>, 2009-02-18 16:33:17<BR> 0: cs:Connected ro:Primary/Secondary ds:Diskless/UpToDate C r---<BR> ns:7924 nr:0 dw:3304 dr:321 al:16 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0<BR> 1: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r---<BR> 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:0<BR> 2: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r---<BR> 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:0<BR>linux-10:~ # <BR><BR>
<HR>
Windows Live Hotmail: <A href="http://www.microsoft.com/middleeast/windows/windowslive/see-it-in-action/social-network-basics.aspx?ocid=PID23461::T:WLMTAGL:ON:WL:en-xm:SI_SB_4:092009">Your friends can get your Facebook updates, right from HotmailŪ.</A>                                            <br /><hr />Windows Live: Keep your friends up to date <a href='http://www.microsoft.com/middleeast/windows/windowslive/see-it-in-action/social-network-basics.aspx?ocid=PID23461::T:WLMTAGL:ON:WL:en-xm:SI_SB_1:092010' target='_new'>with what you do online.</a></body>
</html>