[Drbd-dev] drbd-overview misreports volume status if the resource contains multiple volumes
David M. Syzdek
david.syzdek at acsalaska.net
Sat Dec 10 00:57:49 CET 2016
DRBD Devs,
DRBD Utilities: 8.9.9
DRBD Module: 9.0.5-1
Linux Kernel: 4.4.35
Perl: 5.18.1
The utility “drbd-overview” does not appear to proper track the status of volumes in a multi-volume resource. The status of the last volume is displayed as the status for all volumes in a resource. For example, if a resource has three volumes; volume 0 and volume 1 are inconsistent; and volume 2 is UpToDate, then drbd-overview will report all three volumes as UpToDate.
I’ve was able to duplicate the error on multiple DRBD nodes.
I’ve included two examples which use a DRBD resource backed by the following LVM volumes:
root at xen66.prv.nwc# lvdisplay -C |grep ' test'
test100g vg_nwc.prv.xen66_drbd -wi-ao---- 100.00g
test100m vg_nwc.prv.xen66_drbd -wi-ao---- 100.00m
test10g vg_nwc.prv.xen66_drbd -wi-ao---- 10.00g
root at xen66.prv.nwc#
root at xen67.prv.nwc# lvdisplay -C |grep ' test'
test100g vg_nwc.prv.xen67_drbd -wi-a----- 100.00g
test100m vg_nwc.prv.xen67_drbd -wi-a----- 100.00m
test10g vg_nwc.prv.xen67_drbd -wi-a----- 10.00g
root at xen67.prv.nwc#
Example 1:
root at xen66.prv.nwc# drbd-overview |grep :test; drbdsetup events2 --now test
40:test/0 Connected(2*) Primar/Second UpToDate(2*)
41:test/1 Connected(2*) Primar/Second UpToDate(2*)
42:test/2 Connected(2*) Primar/Second UpToDate(2*)
exists resource name:test role:Primary suspended:no
exists connection name:test peer-node-id:1 conn-name:xen67 connection:Connected role:Secondary
exists device name:test volume:0 minor:40 disk:UpToDate
exists device name:test volume:1 minor:41 disk:UpToDate
exists device name:test volume:2 minor:42 disk:UpToDate
exists peer-device name:test peer-node-id:1 conn-name:xen67 volume:0 replication:SyncSource peer-disk:Inconsistent resync-suspended:no
exists peer-device name:test peer-node-id:1 conn-name:xen67 volume:1 replication:SyncSource peer-disk:Inconsistent resync-suspended:no
exists peer-device name:test peer-node-id:1 conn-name:xen67 volume:2 replication:Established peer-disk:UpToDate resync-suspended:no
exists -
root at xen66.prv.nwc#
root at xen67.prv.nwc# drbd-overview |grep :test; drbdsetup events2 --now test
40:test/0 Connected(2*) Second/Primar UpToDate(2*)
41:test/1 Connected(2*) Second/Primar UpToDate(2*)
42:test/2 Connected(2*) Second/Primar UpToDate(2*)
exists resource name:test role:Secondary suspended:no
exists connection name:test peer-node-id:0 conn-name:xen66 connection:Connected role:Primary
exists device name:test volume:0 minor:40 disk:Inconsistent
exists device name:test volume:1 minor:41 disk:Inconsistent
exists device name:test volume:2 minor:42 disk:UpToDate
exists peer-device name:test peer-node-id:0 conn-name:xen66 volume:0 replication:SyncTarget peer-disk:UpToDate resync-suspended:no
exists peer-device name:test peer-node-id:0 conn-name:xen66 volume:1 replication:SyncTarget peer-disk:UpToDate resync-suspended:no
exists peer-device name:test peer-node-id:0 conn-name:xen66 volume:2 replication:Established peer-disk:UpToDate resync-suspended:no
exists -
root at xen67.prv.nwc#
Example 2:
root at xen66.prv.nwc# drbd-overview |grep :test; drbdsetup events2 --now test
40:test/0 Connected(2*) Secondary(2*) UpToDa/Incons
41:test/1 Connected(2*) Secondary(2*) UpToDa/Incons
42:test/2 Connected(2*) Secondary(2*) UpToDa/Incons
exists resource name:test role:Secondary suspended:no
exists connection name:test peer-node-id:1 conn-name:xen67 connection:Connected role:Secondary
exists device name:test volume:0 minor:40 disk:UpToDate
exists device name:test volume:1 minor:41 disk:UpToDate
exists device name:test volume:2 minor:42 disk:UpToDate
exists peer-device name:test peer-node-id:1 conn-name:xen67 volume:0 replication:SyncSource peer-disk:Inconsistent resync-suspended:no
exists peer-device name:test peer-node-id:1 conn-name:xen67 volume:1 replication:Established peer-disk:UpToDate resync-suspended:no
exists peer-device name:test peer-node-id:1 conn-name:xen67 volume:2 replication:SyncSource peer-disk:Inconsistent resync-suspended:no
exists -
root at xen66.prv.nwc#
root at xen67.prv.nwc# drbd-overview |grep :test; drbdsetup events2 --now test
40:test/0 Connected(2*) Secondary(2*) Incons/UpToDa
41:test/1 Connected(2*) Secondary(2*) Incons/UpToDa
42:test/2 Connected(2*) Secondary(2*) Incons/UpToDa
exists resource name:test role:Secondary suspended:no
exists connection name:test peer-node-id:0 conn-name:xen66 connection:Connected role:Secondary
exists device name:test volume:0 minor:40 disk:Inconsistent
exists device name:test volume:1 minor:41 disk:UpToDate
exists device name:test volume:2 minor:42 disk:Inconsistent
exists peer-device name:test peer-node-id:0 conn-name:xen66 volume:0 replication:SyncTarget peer-disk:UpToDate resync-suspended:no
exists peer-device name:test peer-node-id:0 conn-name:xen66 volume:1 replication:Established peer-disk:UpToDate resync-suspended:no
exists peer-device name:test peer-node-id:0 conn-name:xen66 volume:2 replication:SyncTarget peer-disk:UpToDate resync-suspended:no
exists -
root at xen67.prv.nwc#
—David M. Syzdek
----------------------------------------------------------------------
David M. Syzdek david.syzdek at acsalaska.com
IP Engineering Work: +1 907 550 8389
Cell: +1 907 980 1151
Alaska Communications Systems, Inc
MS #53
600 Telephone Avenue
Anchorage, Alaska 99503
----------------------------------------------------------------------
-------------- next part --------------
A non-text attachment was scrubbed...
Name: test-example1.res
Type: application/octet-stream
Size: 1343 bytes
Desc: not available
URL: <http://lists.linbit.com/pipermail/drbd-dev/attachments/20161209/cf61a930/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: test-example2.res
Type: application/octet-stream
Size: 1343 bytes
Desc: not available
URL: <http://lists.linbit.com/pipermail/drbd-dev/attachments/20161209/cf61a930/attachment-0001.obj>
-------------- next part --------------
More information about the drbd-dev
mailing list