On 3/15/12 6:07 PM, William Seligman wrote: > On 3/15/12 6:05 PM, William Seligman wrote: >> On 3/15/12 4:57 PM, emmanuel segura wrote: >> >>> we can try to understand what happen when clvm hang >>> >>> edit the /etc/lvm/lvm.conf and change level = 7 in the log session and >>> uncomment this line >>> >>> file = "/var/log/lvm2.log" >> >> Here's the tail end of the file (the original is 1.6M). Because there no >> times >> in the log, it's hard for me to point you to the point where I crashed the >> other >> system. I think (though I'm not sure) that the crash happened after the last >> occurrence of >> >> cache/lvmcache.c:1484 Wiping internal VG cache >> >> Honestly, it looks like a wall of text to me. Does it suggest anything to >> you? > > Maybe it would help if I included the link to the pastebin where I put the > output: <http://pastebin.com/8pgW3Muw>
Could the problem be with lvm+drbd? In lvm2.conf, I see this sequence of lines pre-crash: device/dev-io.c:535 Opened /dev/md0 RO O_DIRECT device/dev-io.c:271 /dev/md0: size is 1027968 sectors device/dev-io.c:137 /dev/md0: block size is 1024 bytes device/dev-io.c:588 Closed /dev/md0 device/dev-io.c:271 /dev/md0: size is 1027968 sectors device/dev-io.c:535 Opened /dev/md0 RO O_DIRECT device/dev-io.c:137 /dev/md0: block size is 1024 bytes device/dev-io.c:588 Closed /dev/md0 filters/filter-composite.c:31 Using /dev/md0 device/dev-io.c:535 Opened /dev/md0 RO O_DIRECT device/dev-io.c:137 /dev/md0: block size is 1024 bytes label/label.c:186 /dev/md0: No label detected device/dev-io.c:588 Closed /dev/md0 device/dev-io.c:535 Opened /dev/drbd0 RO O_DIRECT device/dev-io.c:271 /dev/drbd0: size is 5611549368 sectors device/dev-io.c:137 /dev/drbd0: block size is 4096 bytes device/dev-io.c:588 Closed /dev/drbd0 device/dev-io.c:271 /dev/drbd0: size is 5611549368 sectors device/dev-io.c:535 Opened /dev/drbd0 RO O_DIRECT device/dev-io.c:137 /dev/drbd0: block size is 4096 bytes device/dev-io.c:588 Closed /dev/drbd0 I interpret this: Look at /dev/md0, get some info, close; look at /dev/drbd0, get some info, close. Post-crash, I see: evice/dev-io.c:535 Opened /dev/md0 RO O_DIRECT device/dev-io.c:271 /dev/md0: size is 1027968 sectors device/dev-io.c:137 /dev/md0: block size is 1024 bytes device/dev-io.c:588 Closed /dev/md0 device/dev-io.c:271 /dev/md0: size is 1027968 sectors device/dev-io.c:535 Opened /dev/md0 RO O_DIRECT device/dev-io.c:137 /dev/md0: block size is 1024 bytes device/dev-io.c:588 Closed /dev/md0 filters/filter-composite.c:31 Using /dev/md0 device/dev-io.c:535 Opened /dev/md0 RO O_DIRECT device/dev-io.c:137 /dev/md0: block size is 1024 bytes label/label.c:186 /dev/md0: No label detected device/dev-io.c:588 Closed /dev/md0 device/dev-io.c:535 Opened /dev/drbd0 RO O_DIRECT device/dev-io.c:271 /dev/drbd0: size is 5611549368 sectors device/dev-io.c:137 /dev/drbd0: block size is 4096 bytes ... and then it hangs. Comparing the two, it looks like it can't close /dev/drbd0. If I look at /proc/drbd when I crash one node, I see this: # cat /proc/drbd version: 8.3.12 (api:88/proto:86-96) GIT-hash: e2a8ef4656be026bbae540305fcb998a5991090f build by r...@hypatia-tb.nevis.columbia.edu, 2012-02-28 18:01:34 0: cs:WFConnection ro:Primary/Unknown ds:UpToDate/DUnknown C s----- ns:7000064 nr:0 dw:0 dr:7049728 al:0 bm:516 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0 If I look at /proc/drbd if I bring down one node gracefully (crm node standby), I get this: # cat /proc/drbd version: 8.3.12 (api:88/proto:86-96) GIT-hash: e2a8ef4656be026bbae540305fcb998a5991090f build by r...@hypatia-tb.nevis.columbia.edu, 2012-02-28 18:01:34 0: cs:WFConnection ro:Primary/Unknown ds:UpToDate/Outdated C r----- ns:7000064 nr:40 dw:40 dr:7036496 al:0 bm:516 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0 Could it be that drbd can't respond to certain requests from lvm if the state of the peer is DUnknown instead of Outdated? >>> Il giorno 15 marzo 2012 20:50, William Seligman <selig...@nevis.columbia.edu >>>> ha scritto: >>> >>>> On 3/15/12 12:55 PM, emmanuel segura wrote: >>>> >>>>> I don't see any error and the answer for your question it's yes >>>>> >>>>> can you show me your /etc/cluster/cluster.conf and your crm configure >>>> show >>>>> >>>>> like that more later i can try to look if i found some fix >>>> >>>> Thanks for taking a look. >>>> >>>> My cluster.conf: <http://pastebin.com/w5XNYyAX> >>>> crm configure show: <http://pastebin.com/atVkXjkn> >>>> >>>> Before you spend a lot of time on the second file, remember that clvmd >>>> will hang >>>> whether or not I'm running pacemaker. >>>> >>>>> Il giorno 15 marzo 2012 17:42, William Seligman < >>>> selig...@nevis.columbia.edu >>>>>> ha scritto: >>>>> >>>>>> On 3/15/12 12:15 PM, emmanuel segura wrote: >>>>>> >>>>>>> Ho did you created your volume group >>>>>> >>>>>> pvcreate /dev/drbd0 >>>>>> vgcreate -c y ADMIN /dev/drbd0 >>>>>> lvcreate -L 200G -n usr ADMIN # ... and so on >>>>>> # "Nevis-HA" is the cluster name I used in cluster.conf >>>>>> mkfs.gfs2 -p lock_dlm -j 2 -t Nevis_HA:usr /dev/ADMIN/usr # ... and so >>>> on >>>>>> >>>>>>> give me the output of vgs command when the cluster it's up >>>>>> >>>>>> Here it is: >>>>>> >>>>>> Logging initialised at Thu Mar 15 12:40:39 2012 >>>>>> Set umask from 0022 to 0077 >>>>>> Finding all volume groups >>>>>> Finding volume group "ROOT" >>>>>> Finding volume group "ADMIN" >>>>>> VG #PV #LV #SN Attr VSize VFree >>>>>> ADMIN 1 5 0 wz--nc 2.61t 765.79g >>>>>> ROOT 1 2 0 wz--n- 117.16g 0 >>>>>> Wiping internal VG cache >>>>>> >>>>>> I assume the "c" in the ADMIN attributes means that clustering is turned >>>>>> on? >>>>>> >>>>>>> Il giorno 15 marzo 2012 17:06, William Seligman < >>>>>> selig...@nevis.columbia.edu >>>>>>>> ha scritto: >>>>>>> >>>>>>>> On 3/15/12 11:50 AM, emmanuel segura wrote: >>>>>>>>> yes william >>>>>>>>> >>>>>>>>> Now try clvmd -d and see what happen >>>>>>>>> >>>>>>>>> locking_type = 3 it's lvm cluster lock type >>>>>>>> >>>>>>>> Since you asked for confirmation, here it is: the output of 'clvmd -d' >>>>>>>> just now. <http://pastebin.com/bne8piEw>. I crashed the other node at >>>>>>>> Mar 15 12:02:35, when you see the only additional line of output. >>>>>>>> >>>>>>>> I don't see any particular difference between this and the previous >>>>>>>> result <http://pastebin.com/sWjaxAEF>, which suggests that I had >>>>>>>> cluster locking enabled before, and still do now. >>>>>>>> >>>>>>>>> Il giorno 15 marzo 2012 16:15, William Seligman < >>>>>>>> selig...@nevis.columbia.edu >>>>>>>>>> ha scritto: >>>>>>>>> >>>>>>>>>> On 3/15/12 5:18 AM, emmanuel segura wrote: >>>>>>>>>> >>>>>>>>>>> The first thing i seen in your clvmd log it's this >>>>>>>>>>> >>>>>>>>>>> ============================================= >>>>>>>>>>> WARNING: Locking disabled. Be careful! This could corrupt your >>>> metadata. >>>>>>>>>>> ============================================= >>>>>>>>>> >>>>>>>>>> I saw that too, and thought the same as you did. I did some checks >>>>>>>>>> (see below), but some web searches suggest that this message is a >>>>>>>>>> normal consequence of clvmd initialization; e.g., >>>>>>>>>> >>>>>>>>>> <http://markmail.org/message/vmy53pcv52wu7ghx> >>>>>>>>>> >>>>>>>>>>> use this command >>>>>>>>>>> >>>>>>>>>>> lvmconf --enable-cluster >>>>>>>>>>> >>>>>>>>>>> and remember for cman+pacemaker you don't need qdisk >>>>>>>>>> >>>>>>>>>> Before I tried your lvmconf suggestion, here was my >>>> /etc/lvm/lvm.conf: >>>>>>>>>> <http://pastebin.com/841VZRzW> and the output of "lvm dumpconfig": >>>>>>>>>> <http://pastebin.com/rtw8c3Pf>. >>>>>>>>>> >>>>>>>>>> Then I did as you suggested, but with a check to see if anything >>>>>>>>>> changed: >>>>>>>>>> >>>>>>>>>> # cd /etc/lvm/ >>>>>>>>>> # cp lvm.conf lvm.conf.cluster >>>>>>>>>> # lvmconf --enable-cluster >>>>>>>>>> # diff lvm.conf lvm.conf.cluster >>>>>>>>>> # >>>>>>>>>> >>>>>>>>>> So the key lines have been there all along: >>>>>>>>>> locking_type = 3 >>>>>>>>>> fallback_to_local_locking = 0 >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> Il giorno 14 marzo 2012 23:17, William Seligman < >>>>>>>>>> selig...@nevis.columbia.edu >>>>>>>>>>>> ha scritto: >>>>>>>>>>> >>>>>>>>>>>> On 3/14/12 9:20 AM, emmanuel segura wrote: >>>>>>>>>>>>> Hello William >>>>>>>>>>>>> >>>>>>>>>>>>> i did new you are using drbd and i dont't know what type of >>>>>>>>>>>>> configuration you using >>>>>>>>>>>>> >>>>>>>>>>>>> But it's better you try to start clvm with clvmd -d >>>>>>>>>>>>> >>>>>>>>>>>>> like thak we can see what it's the problem >>>>>>>>>>>> >>>>>>>>>>>> For what it's worth, here's the output of running clvmd -d on >>>>>>>>>>>> the node that stays up: <http://pastebin.com/sWjaxAEF> >>>>>>>>>>>> >>>>>>>>>>>> What's probably important in that big mass of output are the >>>>>>>>>>>> last two lines. Up to that point, I have both nodes up and >>>>>>>>>>>> running cman + clvmd; cluster.conf is here: >>>>>>>>>>>> <http://pastebin.com/w5XNYyAX> >>>>>>>>>>>> >>>>>>>>>>>> At the time of the next-to-the-last line, I cut power to the >>>>>>>>>>>> other node. >>>>>>>>>>>> >>>>>>>>>>>> At the time of the last line, I run "vgdisplay" on the >>>>>>>>>>>> remaining node, which hangs forever. >>>>>>>>>>>> >>>>>>>>>>>> After a lot of web searching, I found that I'm not the only one >>>>>>>>>>>> with this problem. Here's one case that doesn't seem relevant >>>>>>>>>>>> to me, since I don't use qdisk: >>>>>>>>>>>> < >>>> http://www.redhat.com/archives/linux-cluster/2007-October/msg00212.html>. >>>>>>>>>>>> Here's one with the same problem with the same OS: >>>>>>>>>>>> <http://bugs.centos.org/view.php?id=5229>, but with no >>>> resolution. >>>>>>>>>>>> >>>>>>>>>>>> Out of curiosity, has anyone on this list made a two-node >>>>>>>>>>>> cman+clvmd cluster work for them? >>>>>>>>>>>> >>>>>>>>>>>>> Il giorno 14 marzo 2012 14:02, William Seligman < >>>>>>>>>>>> selig...@nevis.columbia.edu >>>>>>>>>>>>>> ha scritto: >>>>>>>>>>>>> >>>>>>>>>>>>>> On 3/14/12 6:02 AM, emmanuel segura wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>> I think it's better you make clvmd start at boot >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> chkconfig cman on ; chkconfig clvmd on >>>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> I've already tried it. It doesn't work. The problem is that >>>>>>>>>>>>>> my LVM information is on the drbd. If I start up clvmd >>>>>>>>>>>>>> before drbd, it won't find the logical volumes. >>>>>>>>>>>>>> >>>>>>>>>>>>>> I also don't see why that would make a difference (although >>>>>>>>>>>>>> this could be part of the confusion): a service is a >>>>>>>>>>>>>> service. I've tried starting up clvmd inside and outside >>>>>>>>>>>>>> pacemaker control, with the same problem. Why would >>>>>>>>>>>>>> starting clvmd at boot make a difference? >>>>>>>>>>>>>> >>>>>>>>>>>>>> Il giorno 13 marzo 2012 23:29, William Seligman< >>>> selig...@nevis.columbia.edu> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> ha scritto: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On 3/13/12 5:50 PM, emmanuel segura wrote: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> So if you using cman why you use lsb::clvmd >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> I think you are very confused >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> I don't dispute that I may be very confused! >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> However, from what I can tell, I still need to run >>>>>>>>>>>>>>>> clvmd even if I'm running cman (I'm not using >>>>>>>>>>>>>>>> rgmanager). If I just run cman, gfs2 and any other form >>>>>>>>>>>>>>>> of mount fails. If I run cman, then clvmd, then gfs2, >>>>>>>>>>>>>>>> everything behaves normally. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Going by these instructions: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> <https://alteeve.com/w/2-Node_**Red_Hat_KVM_Cluster_Tutorial> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> the resources he puts under "cluster control" >>>>>>>>>>>>>>>> (rgmanager) I have to put under pacemaker control. >>>>>>>>>>>>>>>> Those include drbd, clvmd, and gfs2. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> The difference between what I've got, and what's in >>>>>>>>>>>>>>>> "Clusters From Scratch", is in CFS they assign one DRBD >>>>>>>>>>>>>>>> volume to a single filesystem. I create an LVM physical >>>>>>>>>>>>>>>> volume on my DRBD resource, as in the above tutorial, >>>>>>>>>>>>>>>> and so I have to start clvmd or the logical volumes in >>>>>>>>>>>>>>>> the DRBD partition won't be recognized.>> Is there some >>>>>>>>>>>>>>>> way to get logical volumes recognized automatically by >>>>>>>>>>>>>>>> cman without rgmanager that I've missed? >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Il giorno 13 marzo 2012 22:42, William Seligman< >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> selig...@nevis.columbia.edu >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> ha scritto: >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> On 3/13/12 12:29 PM, William Seligman wrote: >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> I'm not sure if this is a "Linux-HA" question; >>>>>>>>>>>>>>>>>>> please direct me to the appropriate list if it's >>>>>>>>>>>>>>>>>>> not. >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> I'm setting up a two-node cman+pacemaker+gfs2 >>>>>>>>>>>>>>>>>>> cluster as described in "Clusters From Scratch." >>>>>>>>>>>>>>>>>>> Fencing is through forcibly rebooting a node by >>>>>>>>>>>>>>>>>>> cutting and restoring its power via UPS. >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> My fencing/failover tests have revealed a >>>>>>>>>>>>>>>>>>> problem. If I gracefully turn off one node ("crm >>>>>>>>>>>>>>>>>>> node standby"; "service pacemaker stop"; >>>>>>>>>>>>>>>>>>> "shutdown -r now") all the resources transfer to >>>>>>>>>>>>>>>>>>> the other node with no problems. If I cut power >>>>>>>>>>>>>>>>>>> to one node (as would happen if it were fenced), >>>>>>>>>>>>>>>>>>> the lsb::clvmd resource on the remaining node >>>>>>>>>>>>>>>>>>> eventually fails. Since all the other resources >>>>>>>>>>>>>>>>>>> depend on clvmd, all the resources on the >>>>>>>>>>>>>>>>>>> remaining node stop and the cluster is left with >>>>>>>>>>>>>>>>>>> nothing running. >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> I've traced why the lsb::clvmd fails: The >>>>>>>>>>>>>>>>>>> monitor/status command includes "vgdisplay", >>>>>>>>>>>>>>>>>>> which hangs indefinitely. Therefore the monitor >>>>>>>>>>>>>>>>>>> will always time-out. >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> So this isn't a problem with pacemaker, but with >>>>>>>>>>>>>>>>>>> clvmd/dlm: If a node is cut off, the cluster >>>>>>>>>>>>>>>>>>> isn't handling it properly. Has anyone on this >>>>>>>>>>>>>>>>>>> list seen this before? Any ideas? >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>> Details: >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> versions: >>>>>>>>>>>>>>>>>>> Redhat Linux 6.2 (kernel 2.6.32) >>>>>>>>>>>>>>>>>>> cman-3.0.12.1 >>>>>>>>>>>>>>>>>>> corosync-1.4.1 >>>>>>>>>>>>>>>>>>> pacemaker-1.1.6 >>>>>>>>>>>>>>>>>>> lvm2-2.02.87 >>>>>>>>>>>>>>>>>>> lvm2-cluster-2.02.87 >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> This may be a Linux-HA question after all! >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> I ran a few more tests. Here's the output from a >>>>>>>>>>>>>>>>>> typical test of >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> grep -E "(dlm|gfs2}clvmd|fenc|syslogd)**" >>>>>>>>>>>>>>>>>> /var/log/messages >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> <http://pastebin.com/uqC6bc1b> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> It looks like what's happening is that the fence >>>>>>>>>>>>>>>>>> agent (one I wrote) is not returning the proper >>>>>>>>>>>>>>>>>> error code when a node crashes. According to this >>>>>>>>>>>>>>>>>> page, if a fencing agent fails GFS2 will freeze to >>>>>>>>>>>>>>>>>> protect the data: >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> < >>>> http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Global_File_System_2/s1-gfs2hand-allnodes.html >>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> As a test, I tried to fence my test node via >>>>>>>>>>>>>>>>>> standard means: >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> stonith_admin -F \ >>>>>>>>>>>>>>>>>> orestes-corosync.nevis.columbia.edu >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> These were the log messages, which show that >>>>>>>>>>>>>>>>>> stonith_admin did its job and CMAN was notified of >>>>>>>>>>>>>>>>>> the fencing:<http://pastebin.com/jaH820Bv>. >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> Unfortunately, I still got the gfs2 freeze, so this >>>>>>>>>>>>>>>>>> is not the complete story. >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> First things first. I vaguely recall a web page >>>>>>>>>>>>>>>>>> that went over the STONITH return codes, but I >>>>>>>>>>>>>>>>>> can't locate it again. Is there any reference to >>>>>>>>>>>>>>>>>> the return codes expected from a fencing agent, >>>>>>>>>>>>>>>>>> perhaps as function of the state of the fencing >>>>>>>>>>>>>>>>>> device? See also: http://linux-ha.org/ReportingProblems -- Bill Seligman | Phone: (914) 591-2823 Nevis Labs, Columbia Univ | mailto://selig...@nevis.columbia.edu PO Box 137 | Irvington NY 10533 USA | http://www.nevis.columbia.edu/~seligman/
smime.p7s
Description: S/MIME Cryptographic Signature
_______________________________________________ Linux-HA mailing list Linux-HA@lists.linux-ha.org http://lists.linux-ha.org/mailman/listinfo/linux-ha See also: http://linux-ha.org/ReportingProblems