[ClusterLabs] Need help for "libvirtd[16755]: resource busy: Lockspace resource '...' is not locked"
Ulrich Windl
Ulrich.Windl at rz.uni-regensburg.de
Mon Jan 25 07:04:38 EST 2021
Hi!
I reconfigured my cluster to let it control virtlockd (instead of just "enable" it in systemd). However I still have problems I don't understand:
When live-migrating a Xen PV I still get these messages:
Jan 25 12:38:06 h18 virtlockd[42724]: libvirt version: 6.0.0
Jan 25 12:38:06 h18 virtlockd[42724]: hostname: h18
Jan 25 12:38:06 h18 virtlockd[42724]: resource busy: Lockspace resource '1076b120cb84515c54de74dc163c1a3af2832d51feb0b020dd070d3ed5c96128' is not locked
Jan 25 12:38:06 h18 libvirtd[42689]: libvirt version: 6.0.0
Jan 25 12:38:06 h18 libvirtd[42689]: hostname: h18
Jan 25 12:38:06 h18 libvirtd[42689]: resource busy: Lockspace resource '1076b120cb84515c54de74dc163c1a3af2832d51feb0b020dd070d3ed5c96128' is not locked
Jan 25 12:38:06 h18 libvirtd[42689]: Unable to release lease on test-jeos1
Jan 25 12:38:06 h18 VirtualDomain(prm_xen_test-jeos1)[47902]: INFO: test-jeos1: live migration to h16 succeeded.
When I inspect my nodes with "lsof -M /var/lib/libvirt/lockd", I see that for each PVM running on a node there is a virtlockd having open a file like this:
h16:~ # lsof -M /var/lib/libvirt/lockd
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
virtlockd 26349 root 12uw REG 9,10 0 122900 /var/lib/libvirt/lockd/files/4c6bebd1f4bc581255b422a65d317f31deef91f777e51ba0daf04419dda7ade5
virtlockd 26349 root 13uw REG 9,10 0 122901 /var/lib/libvirt/lockd/files/f9d587c61002c7480f8b86116eb4f7dfa210e52af7e944762f58c2c2f89a6865
virtlockd 26349 root 14uw REG 9,10 0 122902 /var/lib/libvirt/lockd/files/1076b120cb84515c54de74dc163c1a3af2832d51feb0b020dd070d3ed5c96128
h16:~ # virsh list
Id Name State
----------------------------
0 Domain-0 running
6 test-jeos3 running
7 test-jeos4 running
8 test-jeos1 running
h18:/etc/libvirt # lsof -M /var/lib/libvirt/lockd
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
virtlockd 42724 root 12uw REG 9,10 0 124945 /var/lib/libvirt/lockd/files/7cc124bc29ec975f78295c33a67159a35c941cbc2f513c637d7285db82d1f13f
ph18:/etc/libvirt # virsh list
Id Name State
----------------------------
0 Domain-0 running
7 test-jeos2 running
h18:/etc/libvirt # ll /var/lib/libvirt/lockd/files/
total 0
-rw------- 1 root root 0 Jan 25 12:38 1076b120cb84515c54de74dc163c1a3af2832d51feb0b020dd070d3ed5c96128
-rw------- 1 root root 0 Jan 25 12:08 4c6bebd1f4bc581255b422a65d317f31deef91f777e51ba0daf04419dda7ade5
-rw------- 1 root root 0 Jan 25 12:06 7cc124bc29ec975f78295c33a67159a35c941cbc2f513c637d7285db82d1f13f
-rw------- 1 root root 0 Jan 25 12:08 f9d587c61002c7480f8b86116eb4f7dfa210e52af7e944762f58c2c2f89a6865
So all files that exist are open by at most one node when not migrating. And I see a corresponding lock in /proc/locks:
12: POSIX ADVISORY WRITE 26349 09:0a:122902 0 0
13: POSIX ADVISORY WRITE 26349 09:0a:122901 0 0
14: POSIX ADVISORY WRITE 26349 09:0a:122900 0 0
24: POSIX ADVISORY WRITE 42724 09:0a:124945 0 0
So I wonder: Do I have a configuration problem still, or do I have a software problem (SLES15 SP2)?
The cluster config is basically:
primitive prm_lockspace_ocfs2 Filesystem ...
primitive prm_lockspace_raid_md10 Raid1 ...
primitive prm_virtlockd systemd:virtlockd.socket ...
clone cln_lockspace_ocfs2 prm_lockspace_ocfs2 meta interleave=true
clone cln_lockspace_raid_md10 prm_lockspace_raid_md10 meta interleave=true
clone cln_virtlockd prm_virtlockd meta interleave=true
colocation col_lockspace_ocfs2__DLM inf: cln_lockspace_ocfs2 cln_DLM
colocation col_lockspace_ocfs2__raid_md10 inf: cln_lockspace_ocfs2 cln_lockspace_raid_md10
colocation col_virtlockd__lockspace_fs inf: cln_virtlockd cln_lockspace_ocfs2
colocation col_vm__virtlockd inf: ( prm_xen_test-jeos1 prm_xen_test-jeos2 prm_xen_test-jeos3 prm_xen_test-jeos4 ) cln_virtlockd
order ord_DLM__lockspace_ocfs2 Mandatory: cln_DLM cln_lockspace_ocfs2
order ord_lockspace_fs__virtlockd Mandatory: cln_lockspace_ocfs2 cln_virtlockd
order ord_raid_md10__lockspace_ocfs2 Mandatory: cln_lockspace_raid_md10 cln_lockspace_ocfs2
order ord_virtlockd__vm Mandatory: cln_virtlockd ( prm_xen_test-jeos1 prm_xen_test-jeos2 prm_xen_test-jeos3 prm_xen_test-jeos4 )
Should I put another or mor libvirt processes under cluster control?
libvirtd.service
libvirtd-tls.socket
libvirtd-ro.socket
libvirtd.socket
virtlogd.socket
Regards,
Ulrich
More information about the Users
mailing list