Red Hat Bugzilla – Bug 506592
lvm2-cluster lacks Requires: cman
Last modified: 2010-02-17 17:27:46 EST
Description of problem:
When trying to start clvmd, it fails after several seconds delay with the following message:
clvmd could not connect to cluster manager
Consult syslog for more information
And in /var/log/messages there is the following line:
Jun 17 22:49:53 yuki1 clvmd: Unable to create lockspace for CLVM: No such file or directory
Running clvmd under "strace -f" shows that the last ENOENT before the above message is sent to the syslog is this:
1580 stat("/dev/misc/dlm-control", 0x7fff8a7d6ee0) = -1 ENOENT (No such file or directory)
On my system (a freshly installed F11) the DLM devices (dlm-control, dlm-monitor, and dlm_plock) are directly under /dev, not under /dev/misc.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. have a system with lvm2-cluster installed and corosync up and running.
2. modprobe dlm
3. strace -f -o /tmp/clvmd.strace clvmd
clvmd dies with the above messages, in strace it can be seen that it tries to open /dev/misc/dlm-control
It should open /dev/dlm-control (or alternatively, udev should create /dev/misc/dlm-control)
I am new to clustered lvm, so I am not sure if whether I am missing something or not. I have tried to do a band-aid fix:
ln -s ../dlm* .
Then clvmd at least dies immediately, and with different messages:
Jun 17 22:58:00 yuki1 kernel: dlm: no local IP address has been set
Jun 17 22:58:00 yuki1 clvmd: Unable to create lockspace for CLVM: Transport endpoint is not connected
Jun 17 22:58:00 yuki1 kernel: dlm: cannot start dlm lowcomms -107
I think you need to install and run cman (which at least in rawhide contains udev rules to create this node).
Anyway, it is cluster-lib code here which open dlm-control, reassigning to cluster package (clvmd only uses it).
I am not sure this is a bug...
is cman running at all?
what's the output of cman_tool status and cman_tool nodes?
can you provide cluster.conf?
dlm needs to be running and configured via cman and it doesn't look like from the errors in dmesg.
OK, then the bug is that lvm2-cluster lacks "Requires: cman", if it cannot be run without cman.
As I said, I am pretty new to clvm. So I have installed lvm2-cluster and looked at its dependences. In F11, it brought only corosync in, so I have tried at least to configure and run corosync. I had no idea that cman is required to run clustered lvm.
cman-3.0.0-15.rc1.fc11.x86_64 indeed contains correct udev rules for /dev/misc/dlm*.
Changing the component back to lvm2-cluster and editing the title of the bug.
Yes, lvm2-cluster needs to depend on cman, because cman provides the DLM userspace files that it will use. Also the DLM currently depends on cman to run in the first place, so anything that depends on DLM (as clvmd does) will also require cman.
This dependency will be lifted in the future.