<div class="gmail_quote">On Tue, Sep 4, 2012 at 1:04 PM, Fabio M. Di Nitto <span dir="ltr"><<a href="mailto:fdinitto@redhat.com" target="_blank">fdinitto@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On 09/04/2012 05:01 PM, Terry wrote:<br>
> Hello,<br>
><br>
> I am running an NFS cluster with 3 exports distributed across 2 nodes.<br>
> When I try to relocate an NFS export, it fails. I then have to disable<br>
> and enable it on the other node. Does anyone have any tricks to get<br>
> around this issue? I am sure it is due to file locking. Here's the config:<br>
<br>
</div>This is a difficult config to support because of some design limitations<br>
in nfsd and what cluster users expect (exactly your config).<br>
<br>
My best guess is that the service fails to relocate because the fs<br>
cannot be unmounted.<br>
<br>
If so, you need to add force_unmount="1" to the fs resources.<br>
<br>
If that still doesn't fix the problem, you need to upgrade to a version<br>
of the resource-agents that support nfsrestart="1" for fs resource.<br>
This depends on what distro/release you have. nfsrestart does a much<br>
harder (invasive) action to drop the locks holding the fs. Still<br>
requires force_unmount to be set. It can be used together with nfslock<br>
(if nfslock fails, then nfsrestart will kick in).<br>
<br>
Fabio<br>
<br>
><br>
> /<?xml version="1.0" ?>/<br>
><br>
> /<cluster config_version="17" name="omadvnfs01">/<br>
><br>
> / <cman expected_votes="1" two_node="1"/>/<br>
><br>
> / <clusternodes>/<br>
><br>
> / <clusternode name="<a href="http://omadvnfs01a.sec.jel.lc" target="_blank">omadvnfs01a.sec.jel.lc</a><br>
> <<a href="http://omadvnfs01a.sec.jel.lc" target="_blank">http://omadvnfs01a.sec.jel.lc</a>>" nodeid="1" votes="1">/<br>
><br>
> / <fence>/<br>
><br>
> / <method name="drac">/<br>
><br>
> / <device<br>
> name="omadvnfs01a-drac"/>/<br>
><br>
> / </method>/<br>
><br>
> / </fence>/<br>
><br>
> / </clusternode>/<br>
><br>
> / <clusternode name="<a href="http://omadvnfs01b.sec.jel.lc" target="_blank">omadvnfs01b.sec.jel.lc</a><br>
> <<a href="http://omadvnfs01b.sec.jel.lc" target="_blank">http://omadvnfs01b.sec.jel.lc</a>>" nodeid="2" votes="1">/<br>
><br>
> / <fence>/<br>
><br>
> / <method name="drac">/<br>
><br>
> / <device<br>
> name="omadvnfs01b-drac"/>/<br>
><br>
> / </method>/<br>
><br>
> / </fence>/<br>
><br>
> / </clusternode>/<br>
><br>
> / </clusternodes>/<br>
><br>
> / <rm>/<br>
><br>
> / <failoverdomains>/<br>
><br>
> / <failoverdomain name="fd_omadvnfs01a"<br>
> ordered="1" restricted="0" nofailback="1">/<br>
><br>
> / <failoverdomainnode<br>
> name="<a href="http://omadvnfs01a.sec.jel.lc" target="_blank">omadvnfs01a.sec.jel.lc</a> <<a href="http://omadvnfs01a.sec.jel.lc" target="_blank">http://omadvnfs01a.sec.jel.lc</a>>"<br>
> priority="1"/>/<br>
><br>
> / <failoverdomainnode<br>
> name="<a href="http://omadvnfs01b.sec.jel.lc" target="_blank">omadvnfs01b.sec.jel.lc</a> <<a href="http://omadvnfs01b.sec.jel.lc" target="_blank">http://omadvnfs01b.sec.jel.lc</a>>"<br>
> priority="2"/>/<br>
><br>
> / </failoverdomain>/<br>
><br>
> / <failoverdomain name="fd_omadvnfs01b"<br>
> ordered="1" restricted="0" nofailback="1">/<br>
><br>
> / <failoverdomainnode<br>
> name="<a href="http://omadvnfs01b.sec.jel.lc" target="_blank">omadvnfs01b.sec.jel.lc</a> <<a href="http://omadvnfs01b.sec.jel.lc" target="_blank">http://omadvnfs01b.sec.jel.lc</a>>"<br>
> priority="1"/>/<br>
><br>
> / <failoverdomainnode<br>
> name="<a href="http://omadvnfs01a.sec.jel.lc" target="_blank">omadvnfs01a.sec.jel.lc</a> <<a href="http://omadvnfs01a.sec.jel.lc" target="_blank">http://omadvnfs01a.sec.jel.lc</a>>"<br>
> priority="2"/>/<br>
><br>
> / </failoverdomain>/<br>
><br>
> / </failoverdomains>/<br>
><br>
> / <resources>/<br>
><br>
> / <ip address="10.198.1.112"<br>
> monitor_link="1"/>/<br>
><br>
> / <ip address="10.198.1.113"<br>
> monitor_link="1"/>/<br>
><br>
> / <ip address="10.198.1.114"<br>
> monitor_link="1"/>/<br>
><br>
> / <ip address="10.198.1.115"<br>
> monitor_link="1"/>/<br>
<div class="im">><br>
> / <fs device="/dev/vg_data01a/lv_data01a"<br>
> quick_status="0" force_fsck="0" force_unmount="1" fsid="27014"<br>
> fstype="ext4" mountpoint="/data01a" name="omadvnfs01-data01a"<br>
> options="rw,noatime,nodiratime,data=writeback,commit=30,_netdev"<br>
</div>> self_fence="0" nfslock="1"/>/<br>
<div class="im">><br>
> / <fs device="/dev/vg_data01b/lv_data01b"<br>
> quick_status="0" force_fsck="0" force_unmount="1" fsid="39436"<br>
> fstype="ext4" mountpoint="/data01b" name="omadvnfs01-data01b"<br>
> options="rw,noatime,nodiratime,data=writeback,commit=30,_netdev"<br>
</div>> self_fence="0" nfslock="1"/>/<br>
<div class="im">><br>
> / <fs device="/dev/vg_data01c/lv_data01c"<br>
> quick_status="0" force_fsck="0" force_unmount="1" fsid="99243"<br>
> fstype="ext4" mountpoint="/data01c" name="omadvnfs01-data01c"<br>
> options="rw,noatime,nodiratime,data=writeback,commit=30,_netdev"<br>
</div>> self_fence="0" nfslock="1"/>/<br>
<div class="im">><br>
> / <fs device="/dev/vg_data04/lv_data04"<br>
> quick_status="0" force_fsck="0" force_unmount="1" fsid="59016"<br>
> fstype="ext4" mountpoint="/data04" name="omadvnfs01-data04"<br>
</div>> options="defaults,_netdev" self_fence="0"/>/<br>
><br>
> / <script file="/etc/init.d/postgresql"<br>
> name="postgresql"/>/<br>
><br>
> / <nfsexport name="data01a"/>/<br>
><br>
> / <nfsexport name="data01b"/>/<br>
><br>
> / <nfsexport name="data01c"/>/<br>
<div class="im">><br>
> / <nfsclient allow_recover="1"<br>
> name="omadvdss01a"<br>
> options="async,no_root_squash,rw,no_subtree_check"<br>
</div>> target="omadvdss01a"/>/<br>
<div class="im">><br>
> / <nfsclient allow_recover="1"<br>
> name="omadvdss01b"<br>
> options="async,no_root_squash,rw,no_subtree_check"<br>
</div>> target="omadvdss01b"/>/<br>
<div class="im">><br>
> / <nfsclient allow_recover="1"<br>
> name="omadvdss01c"<br>
> options="async,no_root_squash,rw,no_subtree_check"<br>
> target="omadvdss01c"/>/<br>
><br>
</div>> / </resources>/<br>
><br>
> / <service autostart="1" domain="fd_omadvnfs01b"<br>
> name="postgresql">/<br>
><br>
> / <ip ref="10.198.1.112"/>/<br>
><br>
> / <fs ref="omadvnfs01-data04"/>/<br>
<div class="im">><br>
> / <script ref="postgresql"/>/<br>
><br>
</div>> / </service>/<br>
><br>
> / <service domain="fd_omadvnfs01a"<br>
> name="omadvnfs01-nfs-data01a" nfslock="1" recovery="relocate">/<br>
><br>
> / <ip ref="10.198.1.113"/>/<br>
><br>
> / <fs ref="omadvnfs01-data01a">/<br>
><br>
> / <nfsexport ref="data01a">/<br>
><br>
> / <nfsclient<br>
> ref="omadvdss01a"/>/<br>
><br>
> / <nfsclient<br>
> ref="omadvdss01b"/>/<br>
<div class="im">><br>
> / <nfsclient<br>
> ref="omadvdss01c"/>/<br>
><br>
</div>> / </nfsexport>/<br>
><br>
> / </fs>/<br>
><br>
> / </service>/<br>
><br>
> / <service domain="fd_omadvnfs01a"<br>
> name="omadvnfs01-nfs-data01b" nfslock="1" recovery="relocate">/<br>
><br>
> / <ip ref="10.198.1.114"/>/<br>
><br>
> / <fs ref="omadvnfs01-data01b">/<br>
><br>
> / <nfsexport ref="data01b">/<br>
><br>
> / <nfsclient<br>
> ref="omadvdss01a"/>/<br>
><br>
> / <nfsclient<br>
> ref="omadvdss01b"/>/<br>
<div class="im">><br>
> / <nfsclient<br>
> ref="omadvdss01c"/>/<br>
><br>
</div>> / </nfsexport>/<br>
><br>
> / </fs>/<br>
><br>
> / </service>/<br>
><br>
> / <service domain="fd_omadvnfs01b"<br>
> name="omadvnfs01-nfs-data01c" nfslock="1" recovery="relocate">/<br>
><br>
> / <ip ref="10.198.1.115"/>/<br>
><br>
> / <fs ref="omadvnfs01-data01c">/<br>
><br>
> / <nfsexport ref="data01c">/<br>
><br>
> / <nfsclient<br>
> ref="omadvdss01a"/>/<br>
><br>
> / <nfsclient<br>
> ref="omadvdss01b"/>/<br>
<div class="im">><br>
> / <nfsclient<br>
> ref="omadvdss01c"/>/<br>
><br>
</div>> / </nfsexport>/<br>
><br>
> / </fs>/<br>
><br>
> / </service>/<br>
><br>
> / </rm>/<br>
><br>
> /</cluster>/<br>
><br>
><br>
><br><br></blockquote><div>I am on ubuntu 12.04. </div></div><br>