Bug 1288000
Summary: | Virsh lacks support for the scale (MiB/s OR Bytes/s) for block job bandwidth | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Yang Yang <yanyang> |
Component: | libvirt | Assignee: | Peter Krempa <pkrempa> |
Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> |
Severity: | unspecified | Docs Contact: | |
Priority: | unspecified | ||
Version: | 7.2 | CC: | dyuan, hhan, jdenemar, lmiksik, mzhan, pkrempa, rbalakri, xuzhang |
Target Milestone: | rc | Keywords: | FutureFeature |
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | libvirt-1.3.3-1.el7 | Doc Type: | Enhancement |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2016-11-03 18:34:48 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Yang Yang
2015-12-03 09:48:01 UTC
Feature added upstream: commit d40d18fb8f09aabc08861ad573c40727e7d475dd Author: Peter Krempa <pkrempa> Date: Thu Mar 17 13:41:00 2016 +0100 virsh: blockpull: Support --bytes and scaled integers Use vshBlockJobOptionBandwidth to parse the bandwidth value which will allow users to specify bandwidth in bytes or as a scaled integer. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1288000 commit 453a6d8092d555011b46abcae44ec3c37122562d Author: Peter Krempa <pkrempa> Date: Thu Mar 17 13:40:30 2016 +0100 virsh: blockcopy: Support --bytes and scaled integers Use vshBlockJobOptionBandwidth to parse the bandwidth value which will allow users to specify bandwidth in bytes or as a scaled integer. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1288000 commit e557bd28a269bd31ab45a57534b348ab1e1b52fd Author: Peter Krempa <pkrempa> Date: Thu Mar 17 13:40:04 2016 +0100 virsh: blockcommit: Support --bytes and scaled integers Use vshBlockJobOptionBandwidth to parse the bandwidth value which will allow users to specify bandwidth in bytes or as a scaled integer. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1288000 commit e54b5484c972308ec0f6e3d79f3016437905ebf8 Author: Peter Krempa <pkrempa> Date: Tue Mar 29 15:52:10 2016 +0200 virsh: blockjob: Support --bytes and scaled integers as bandwidth Use vshBlockJobOptionBandwidth to parse the bandwidth value which will allow users to specify bandwidth in bytes or as a scaled integer. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1288000 Verified on libvirt-1.3.3-2.el7.x86_64, qemu-kvm-rhev-2.5.0-4.el7.x86_64 Prepare 3 running VMs: copy,commit,pull Running following scripts: ... #!/bin/bash DOM_COMMIT=commit IP_COMMIT=192.168.122.200 DOM_COPY=copy IP_COPY=192.168.122.215 DOM_PULL=pull IP_PULL=192.168.122.74 for i in $DOM_COMMIT $DOM_PULL $DOM_COPY; do virsh snapshot-create-as $i s1 --disk-only done for i in $IP_PULL $IP_COPY $IP_COMMIT; do ssh root@$i dd if=/dev/urandom of=~/file count=9 bs=100M done virsh blockcopy $DOM_COPY vda /var/lib/libvirt/images/$DOM_COPY-copy.qcow2 --bytes 511 --pivot & virsh blockcommit $DOM_COMMIT vda --active --bytes 512 & virsh blockpull $DOM_PULL vda --bytes 513 & sleep 5 # check speed in blockjob for i in $DOM_COPY $DOM_COMMIT $DOM_PULL;do echo "the speed of vm $i on blockjob is:" virsh blockjob $i vda --info --bytes done >> result systemctl stop libvirtd # check speed in qmp-shell for i in $DOM_COPY $DOM_COMMIT $DOM_PULL; do echo "the speed of vm $i on qmp-shell is:" ~/qemu/scripts/qmp/qmp-shell /var/lib/libvirt/qemu/domain-*-$i/monitor.sock <<EOF | grep '(QEMU)' query-block-jobs EOF done >> result systemctl restart libvirtd ... The result: # cat result the speed of vm copy on blockjob is: Bandwidth limit: 511 bytes/s (511.000 B/s) the speed of vm commit on blockjob is: Bandwidth limit: 512 bytes/s (512.000 B/s) the speed of vm pull on blockjob is: Bandwidth limit: 513 bytes/s (513.000 B/s) the speed of vm copy on qmp-shell is: (QEMU) {"return": [{"busy": false, "type": "mirror", "len": 2387214336, "paused": false, "ready": false, "io-status": "ok", "offset": 7340032, "device": "drive-virtio-disk0", "speed": 511}]} (QEMU) the speed of vm commit on qmp-shell is: (QEMU) {"return": [{"busy": false, "type": "commit", "len": 947388416, "paused": false, "ready": false, "io-status": "ok", "offset": 7602176, "device": "drive-virtio-disk0", "speed": 512}]} (QEMU) the speed of vm pull on qmp-shell is: (QEMU) {"return": [{"busy": false, "type": "stream", "len": 3221225472, "paused": false, "ready": false, "io-status": "ok", "offset": 30146560, "device": "drive-virtio-disk0", "speed": 513}]} (QEMU) The blockjob info results are the same with qmp-shell results. Bug fixed. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHSA-2016-2577.html |