[Bug 970439] New: pacemaker lvm resource agent must not start if lvmetad is enabled
http://bugzilla.suse.com/show_bug.cgi?id=970439 Bug ID: 970439 Summary: pacemaker lvm resource agent must not start if lvmetad is enabled Classification: openSUSE Product: openSUSE Distribution Version: Leap 42.1 Hardware: Other OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: High Availability Assignee: lmb@suse.com Reporter: zzhou@suse.com QA Contact: qa-bugs@suse.de Found By: --- Blocker: --- lvmetad is not cluster aware. If lvmetad is enabled in lvm.conf as "use_lvmetad = 1", pacemaker RA must not start lvm resources, and must report failure, and should provide a suggestion to user to disable lvmetad. NOTE: With the fresh installed Leap 42.1, by default lvmetad is enabled. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
Roger Zhou
http://bugzilla.suse.com/show_bug.cgi?id=970439
Holger Sickenberg
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c1
Yan Gao
http://bugzilla.suse.com/show_bug.cgi?id=970439
Yan Gao
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c2
--- Comment #2 from Liuhua Wang
Do you mean ocf:heartbeawt:LVM RA? I think it depends, since this RA can be used in non-clvm case too. If we'd like to check for this, probably we should check if the volume group has cluster tag? Kristoffer may have a better idea ;-) ocf:heartbeawt:LVM RA is just activating VGs, I think it is ocf:heartbeat:clvm RA that was mentioned.
Kristoffer, since in clustered environment lvmetad is not supported, how about add a line to modify /etc/lvm/lvm.conf and set use_lvmetad = 0 and locking_type = 3? I had thought it is that way, but I check RA source, it is not. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c3
Kristoffer Gronlund
(In reply to Yan Gao from comment #1)
Do you mean ocf:heartbeawt:LVM RA? I think it depends, since this RA can be used in non-clvm case too. If we'd like to check for this, probably we should check if the volume group has cluster tag? Kristoffer may have a better idea ;-) ocf:heartbeawt:LVM RA is just activating VGs, I think it is ocf:heartbeat:clvm RA that was mentioned.
Kristoffer, since in clustered environment lvmetad is not supported, how about add a line to modify /etc/lvm/lvm.conf and set use_lvmetad = 0 and locking_type = 3? I had thought it is that way, but I check RA source, it is not.
Sure! -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c4
--- Comment #4 from Roger Zhou
(In reply to Yan Gao from comment #1)
Do you mean ocf:heartbeawt:LVM RA? I think it depends, since this RA can be used in non-clvm case too.
Huh, this is right. This is valid to the non-clvm use case, i.e. in our official HA NFS guide document, lvm sits on top of primary/slave drbd.
If we'd like to check for this, probably we should check if the volume group has cluster tag? Kristoffer may have a better idea ;-) ocf:heartbeawt:LVM RA is just activating VGs, I think it is ocf:heartbeat:clvm RA that was mentioned.
Kristoffer, since in clustered environment lvmetad is not supported, how about add a line to modify /etc/lvm/lvm.conf and set use_lvmetad = 0 and locking_type = 3? I had thought it is that way, but I check RA source, it is not.
Also right, ocf:heartbeat:clvm is worth more intelligence too. And, it's better to report a message to the user for the changes, rather than do it blindly. Thanks, Roger -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c5
--- Comment #5 from Yan Gao
(In reply to Yan Gao from comment #1)
Do you mean ocf:heartbeawt:LVM RA? I think it depends, since this RA can be used in non-clvm case too. If we'd like to check for this, probably we should check if the volume group has cluster tag? Kristoffer may have a better idea ;-) ocf:heartbeawt:LVM RA is just activating VGs, I think it is ocf:heartbeat:clvm RA that was mentioned.
Kristoffer, since in clustered environment lvmetad is not supported, how about add a line to modify /etc/lvm/lvm.conf and set use_lvmetad = 0 and locking_type = 3? I had thought it is that way, but I check RA source, it is not. It seems good enough to just drop an error message and return OCF_ERR_CONFIGURED for me. Not sure if it's a good idea to modify users' configuration.
-- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c6
--- Comment #6 from Liuhua Wang
It seems good enough to just drop an error message and return OCF_ERR_CONFIGURED for me. Not sure if it's a good idea to modify users' configuration. That sounds good:)
-- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c7
--- Comment #7 from Kristoffer Gronlund
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c8
--- Comment #8 from Liuhua Wang
To be clear:
ocf:heartbeat:clvm should be modified to check if use_lvmetad is set, and if so generate an error.
Should ocf:heartbeat:LVM also check this? I guess not?
Yes, I think you are right:) -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c9
--- Comment #9 from Yan Gao
To be clear:
ocf:heartbeat:clvm should be modified to check if use_lvmetad is set, and if so generate an error. Hmm, I see the following in ocf:heartbeat:clvm:
# autoset locking type to clusted when lvmconf tool is available if [ -x "$LVMCONF" ]; then $LVMCONF --enable-cluster > /dev/null 2>&1 fi According to the manual of lvmconf: --enable-cluster Set locking_type to the default clustered type on this system. Also disable lvmetad use as it is not yet supported in clustered environment. So, it doesn't actually work? or only under some conditions?
Should ocf:heartbeat:LVM also check this? I guess not?
I don't think so. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c10
--- Comment #10 from Roger Zhou
To be clear:
ocf:heartbeat:clvm should be modified to check if use_lvmetad is set, and if so generate an error.
Should ocf:heartbeat:LVM also check this? I guess not?
Probably, I have a different opinion. From my view, ocf:heartbeat:LVM should also be improved to help to resolve issues in the lvm+drbd scenario more better. My context refers back to bsc#955564. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c11
--- Comment #11 from Kristoffer Gronlund
(In reply to Kristoffer Gronlund from comment #7)
To be clear:
ocf:heartbeat:clvm should be modified to check if use_lvmetad is set, and if so generate an error. Hmm, I see the following in ocf:heartbeat:clvm:
# autoset locking type to clusted when lvmconf tool is available if [ -x "$LVMCONF" ]; then $LVMCONF --enable-cluster > /dev/null 2>&1 fi
According to the manual of lvmconf:
--enable-cluster Set locking_type to the default clustered type on this system. Also disable lvmetad use as it is not yet supported in clustered environment.
So, it doesn't actually work? or only under some conditions?
Oh, I wasn't aware of that. Well, then the fix (if any) should be to fix lvmconf if it doesn't work. I'll retract my submit request then, no change to the resource agent should be necessary.
Should ocf:heartbeat:LVM also check this? I guess not?
I don't think so.
-- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c12
--- Comment #12 from Kristoffer Gronlund
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c13
--- Comment #13 from Kristoffer Gronlund
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c14
--- Comment #14 from Liuhua Wang
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c15
--- Comment #15 from Kristoffer Gronlund
`lvmconf --enable-cluster` works well. In ocf:heartbeat:clvm which belongs to resource-agents package, it includes this logic, but SUSE is using ocf:lvm2:clvm/cmirrord which belongs to lvm2 package instead of resource-agents.
@Yan, @Kristoffo, do you know why we are using our own clvmd and cmirrord instead of RA upstream? I have no idea why we did not use those from upstream.
No, I don't know why. Is there a difference in functionality? Maybe we should switch to use the RA upstream. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c16
--- Comment #16 from Yan Gao
`lvmconf --enable-cluster` works well. In ocf:heartbeat:clvm which belongs to resource-agents package, it includes this logic, but SUSE is using ocf:lvm2:clvm/cmirrord which belongs to lvm2 package instead of resource-agents.
@Yan, @Kristoffo, do you know why we are using our own clvmd and cmirrord instead of RA upstream? I have no idea why we did not use those from upstream. As far as I can see, ocf:heartbeat:clvm was introduced by David Vossel in 2014. While we've been shipping ocf:lvm2:clvm since 2008, but without proposing it to resource-agents upstream.
Yes, it'd probably make sense to switch to ocf:heartbeat:clvm in our documentation and crmsh templates. BTW, please notice ocf:heartbeat:clvm has "with_cmirrord" parameter which defaults to false. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c17
--- Comment #17 from Liuhua Wang
As far as I can see, ocf:heartbeat:clvm was introduced by David Vossel in 2014. While we've been shipping ocf:lvm2:clvm since 2008, but without proposing it to resource-agents upstream. Thanks for the information.
Yes, it'd probably make sense to switch to ocf:heartbeat:clvm in our documentation and crmsh templates.
BTW, please notice ocf:heartbeat:clvm has "with_cmirrord" parameter which defaults to false.
-- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c18
--- Comment #18 from Kristoffer Gronlund
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c19
Liuhua Wang
http://bugzilla.suse.com/show_bug.cgi?id=970439
Liuhua Wang
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c20
--- Comment #20 from Yan Gao
I think it is better to still keep ocf:lvm2:clvmd/cmirrord for old customers in lvm2 package(already bug fixed ) Ah, yes. It makes sense to let ocf:lvm2:clvmd invoke lvmconf to do the same as well.
-- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
Denis Zyuzin
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c21
--- Comment #21 from Kristoffer Gronlund
(In reply to Kristoffer Gronlund from comment #7)
To be clear:
ocf:heartbeat:clvm should be modified to check if use_lvmetad is set, and if so generate an error. Hmm, I see the following in ocf:heartbeat:clvm:
# autoset locking type to clusted when lvmconf tool is available if [ -x "$LVMCONF" ]; then $LVMCONF --enable-cluster > /dev/null 2>&1 fi
According to the manual of lvmconf:
--enable-cluster Set locking_type to the default clustered type on this system. Also disable lvmetad use as it is not yet supported in clustered environment.
So, it doesn't actually work? or only under some conditions?
Should ocf:heartbeat:LVM also check this? I guess not?
I don't think so.
It turns out that on SLES, LVMCONF is never called by ocf:heartbeat:clvm, because we install lvmconf to /sbin and not /usr/sbin so the resource agent can't find it. The fix would be either to patch the resource agent so it looks in the right location, or to move lvmconf to /usr/sbin. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
nick wang
http://bugzilla.suse.com/show_bug.cgi?id=970439
Kristoffer Gronlund
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c24
--- Comment #24 from Liuhua Wang
(In reply to Yan Gao from comment #9)
(In reply to Kristoffer Gronlund from comment #7)
To be clear:
ocf:heartbeat:clvm should be modified to check if use_lvmetad is set, and if so generate an error. Hmm, I see the following in ocf:heartbeat:clvm:
# autoset locking type to clusted when lvmconf tool is available if [ -x "$LVMCONF" ]; then $LVMCONF --enable-cluster > /dev/null 2>&1 fi
According to the manual of lvmconf:
--enable-cluster Set locking_type to the default clustered type on this system. Also disable lvmetad use as it is not yet supported in clustered environment.
So, it doesn't actually work? or only under some conditions?
Should ocf:heartbeat:LVM also check this? I guess not?
I don't think so.
It turns out that on SLES, LVMCONF is never called by ocf:heartbeat:clvm, because we install lvmconf to /sbin and not /usr/sbin so the resource agent can't find it.
The fix would be either to patch the resource agent so it looks in the right location, or to move lvmconf to /usr/sbin.
For record: A patch to add the above logci to clvmd.ocf --enable-cluster already accepted by sle12-sp2 and sle12-sp1. Also a softlink file of /usr/sbin/lvmconf to /sbin/lvmconf is created in lvm2.spec. So both ocf:lvm2:clvmd and ocf:heartbeat:clvmd is available for customers, but we hope the HA doc will suggest users to use that of upstream(ocf:heartbeat:clvmd) -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.suse.com/show_bug.cgi?id=970439
http://bugzilla.suse.com/show_bug.cgi?id=970439#c25
Tanja Roth
participants (1)
-
bugzilla_noreply@novell.com