ZhiQiang Fan
2016-May-04 11:34 UTC
[libvirt-users] [Ceph] blockInfo cannot work with network type disk
Hi devs & users, The Telemetry service of OpenStack, project code name Ceilometer, is using libvirt.domain.blockInfo() to get disk's physical, allocation and capacity information [1]. However, when disk is network type with protocol ceph, the blockInfo() always fail with: libvirtError: internal error: missing storage backend for network files using rbd protocol. [2] After reading some libvirt code, I think it might due to blockInfo() always assume disk is file backend [3], and file backend doesn't support network type [4]. I want to know if such limitation is by design? - If yes, then how should I get the network type disk's physical, allocation and capacity info? - If not, is there any plan to implement it? Thanks! [1] https://github.com/openstack/ceilometer/blob/stable/mitaka/ceilometer/compute/virt/libvirt/inspector.py#L215 [2] https://bugs.launchpad.net/ceilometer/+bug/1457440 [3] https://github.com/libvirt/libvirt/blob/d6c25c34ef682a69f73f6ec200129e61b2932088/src/qemu/qemu_driver.c#L11727 [4] https://github.com/libvirt/libvirt/blob/d6c25c34ef682a69f73f6ec200129e61b2932088/src/storage/storage_backend.c#L142