
On Thu, Nov 20, 2014 at 8:13 PM, Markus Stockhausen <stockhausen@collogia.de
wrote:
Hi Bob,
looking at http://koji.fedoraproject.org/koji/packageinfo?packageID=91 I think FC20 will stay at 1.1.3. History shows:
[snip]
________________________________________ Von: Bob Doolittle [bob@doolittle.us.com] Gesendet: Donnerstag, 20. November 2014 19:38 An: Markus Stockhausen Cc: s k; users@ovirt.org; Daniel Helgenberger; Coffee Chou Betreff: Re: Simple way to activate live merge in FC20 cluster
Thanks Markus, but I have a single, self-hosted node, so cannot migrate VMs.
Is it your assumption that F20 will never be updated with libvirt 1.2.9?
If that's the case, my best course (in a month or so when F21 is released) is probably to export all my VMs, install F21, reinstall/reconfigure oVirt, import the old Export Domain, and then import my VMs again.
-Bob
On 11/20/2014 01:20 PM, Markus Stockhausen wrote:
Hi Bob,
if your are on a cluster with FC20 hypervisor nodes wthout virt-preview (like we run it with qemu 1.6.2) the simplest way to get live merge features should be - beware NOT FULLY TESTED!
1) choose a single host (we only need a single one if we think about the required setup) 2) Install libvirt from virt-preview repos. DON'T UPDATE QEMU AS YOU BREAK LIVE MIGRATION! 3) migrate VMs you want to live merge to the host 4) do the live merge 5) migrate VMs back to original host
Hello, following the flow, as I have now an all-in-one environment based on F20 and oVirt 3.5. As it is both my engine and my hypervisor, I should be in the best situation.... live merge is supposed to be supported on file based storage, that should match what I have (local on Host). In fact, installing oVirt AIO on F20 automatically gives the virt-preview repo through the ovirt-3.5-dependencies.repo file and I see: [root@tekkaman qemu]# rpm -q libvirt libvirt-1.2.9.1-1.fc20.x86_64 [root@tekkaman qemu]# vdsClient -s 0 getVdsCaps | grep -i merge liveMerge = 'true' [root@tekkaman qemu]# rpm -q qemu qemu-1.6.2-10.fc20.x86_64 Created a CentOS 7 x86_64 VM with a VirtIO-SCSI disk and after install I powered off and run it normally. Then I took a snapshot (while VM powered on) and then ran a yum update. At the end I reboot the VM with the new kernel installed and tried to delete the snapshot and the task indeed started: Snapshot 'test per live merge' deletion for VM 'c7' was initiated by admin. but about a minute later I got error: Failed to delete snapshot 'test per live merge' for VM 'c7'. here below relevant parts in log files. What did I miss in the workflow? BTW: both during the live snapshot and during the live merge I got disconnected both from spice console and from an ssh session open into VM (I could reconnect on both): is this expected? I hope not so.. Gianluca engine.log 2014-11-21 01:16:00,182 ERROR [org.ovirt.engine.core.vdsbroker.vdsbroker.MergeVDSCommand] (pool-7-thread-3) [3337208b] Failed in MergeVDS method 2014-11-21 01:16:00,183 INFO [org.ovirt.engine.core.vdsbroker.vdsbroker.MergeVDSCommand] (pool-7-thread-3) [3337208b] Command org.ovirt.engine.core.vdsbroker.vdsbroker.MergeVDSCommand return value StatusOnlyReturnForXmlRpc [mStatus=StatusForXmlRpc [mCode=52, mMessage=Merge failed]] 2014-11-21 01:16:00,184 INFO [org.ovirt.engine.core.vdsbroker.vdsbroker.MergeVDSCommand] (pool-7-thread-3) [3337208b] HostName = local_host 2014-11-21 01:16:00,190 ERROR [org.ovirt.engine.core.vdsbroker.vdsbroker.MergeVDSCommand] (pool-7-thread-3) [3337208b] Command MergeVDSCommand(HostName = local_host, MergeVDSCommandParameters{HostId = aab9571f-da17-4c3c-9e6b-d0224b84c31e, vmId=0ba6a56b-542c-480e-8bab-88aea9195302, storagePoolId=65c9777e-23f1-4f04-8cea-e7c8871dc88b, storageDomainId=0a8035e6-e41d-40ff-a154-e0a374f264b2, imageGroupId=8a0ba67f-78c0-4ded-9bda-97bb9424e385, imageId=1fdc7440-2465-49ec-8368-141afc0721f1, baseImageId=cd7dd270-0895-411d-bc97-c5ad0ebd80b1, topImageId=1fdc7440-2465-49ec-8368-141afc0721f1, bandwidth=0}) execution failed. Exception: VDSErrorException: VDSGenericException: VDSErrorException: Failed to MergeVDS, error = Merge failed, code = 52 2014-11-21 01:16:00,191 INFO [org.ovirt.engine.core.vdsbroker.vdsbroker.MergeVDSCommand] (pool-7-thread-3) [3337208b] FINISH, MergeVDSCommand, log id: 70748b53 2014-11-21 01:16:00,192 ERROR [org.ovirt.engine.core.bll.MergeCommand] (pool-7-thread-3) [3337208b] Command org.ovirt.engine.core.bll.MergeCommand throw Vdc Bll exception. With error message VdcBLLException: org.ovirt.engine.core.vdsbroker.vdsbroker.VDSErrorException: VDSGenericException: VDSErrorException: Failed to MergeVDS, error = Merge failed, code = 52 (Failed with error mergeErr and code 52) 2014-11-21 01:16:00,205 ERROR [org.ovirt.engine.core.bll.MergeCommand] (pool-7-thread-3) [3337208b] Transaction rolled-back for command: org.ovirt.engine.core.bll.MergeCommand. 2014-11-21 01:16:09,888 INFO [org.ovirt.engine.core.bll.tasks.SPMAsyncTask] (DefaultQuartzScheduler_Worker-55) task id f245da80-58ce-4e2e-bb5a-0261cf71de0d is in pre-polling period and should not be polled. Pre-polling period is 60,000 millis. 2014-11-21 01:16:09,889 INFO [org.ovirt.engine.core.bll.tasks.SPMAsyncTask] (DefaultQuartzScheduler_Worker-55) task id c7c363f1-98b8-468c-8fca-cf3116d00221 is in pre-polling period and should not be polled. Pre-polling period is 60,000 millis. 2014-11-21 01:16:10,080 ERROR [org.ovirt.engine.core.bll.RemoveSnapshotSingleDiskLiveCommand] (DefaultQuartzScheduler_Worker-56) [1457fcca] Failed child command status for step MERGE vdsm.log Thread-266::DEBUG::2014-11-21 01:16:00,144::resourceManager::641::Storage.ResourceManager::(releaseResource) Resource 'Storag e.0a8035e6-e41d-40ff-a154-e0a374f264b2' is free, finding out if anyone is waiting for it. Thread-266::DEBUG::2014-11-21 01:16:00,144::resourceManager::649::Storage.ResourceManager::(releaseResource) No one is waitin g for resource 'Storage.0a8035e6-e41d-40ff-a154-e0a374f264b2', Clearing records. Thread-266::DEBUG::2014-11-21 01:16:00,144::task::993::Storage.TaskManager.Task::(_decref) Task=`95f79027-3613-4f05-9d2d-02f8 c7975f02`::ref 0 aborting False Thread-266::INFO::2014-11-21 01:16:00,158::vm::5743::vm.Vm::(merge) vmId=`0ba6a56b-542c-480e-8bab-88aea9195302`::Starting mer ge with jobUUID='2247fea2-df73-407e-ad16-4622af7f52aa' Thread-266::DEBUG::2014-11-21 01:16:00,160::libvirtconnection::143::root::(wrapper) Unknown libvirterror: ecode: 67 edom: 10 level: 2 message: unsupported configuration: active commit not supported with this QEMU binary Thread-266::ERROR::2014-11-21 01:16:00,161::vm::5751::vm.Vm::(merge) vmId=`0ba6a56b-542c-480e-8bab-88aea9195302`::Live merge failed (job: 2247fea2-df73-407e-ad16-4622af7f52aa) Traceback (most recent call last): File "/usr/share/vdsm/virt/vm.py", line 5747, in merge flags) File "/usr/share/vdsm/virt/vm.py", line 670, in f ret = attr(*args, **kwargs) File "/usr/lib/python2.7/site-packages/vdsm/libvirtconnection.py", line 111, in wrapper ret = f(*args, **kwargs) File "/usr/lib64/python2.7/site-packages/libvirt.py", line 638, in blockCommit if ret == -1: raise libvirtError ('virDomainBlockCommit() failed', dom=self) libvirtError: unsupported configuration: active commit not supported with this QEMU binary Thread-266::DEBUG::2014-11-21 01:16:00,181::BindingXMLRPC::1139::vds::(wrapper) return merge with {'status': {'message': 'Merge failed', 'code': 52}} ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,656::__init__::375::IOProcess::(_processLogs) (null)|Receiving request... ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,657::__init__::375::IOProcess::(_processLogs) (null)|Queuing request in the thread pool... Thread-26::DEBUG::2014-11-21 01:16:00,658::fileSD::261::Storage.Misc.excCmd::(getReadDelay) /usr/bin/dd if=/rhev/data-center/mnt/_data_DATA2/b24b94c7-5935-4940-9152-36ecd370ba7c/dom_md/metadata iflag=direct of=/dev/null bs=4096 count=1 (cwd None) ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,659::__init__::375::IOProcess::(_processLogs) Extracting request information... ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,668::__init__::375::IOProcess::(_processLogs) (7100) Got request for method 'statvfs' ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,668::__init__::375::IOProcess::(_processLogs) (7100) Queuing response Thread-26::DEBUG::2014-11-21 01:16:00,687::fileSD::261::Storage.Misc.excCmd::(getReadDelay) SUCCESS: <err> = '0+1 records in\n0+1 records out\n588 bytes (588 B) copied, 0.020396 s, 28.8 kB/s\n'; <rc> = 0 ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,688::__init__::375::IOProcess::(_processLogs) (null)|Receiving request... ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,689::__init__::375::IOProcess::(_processLogs) (null)|Queuing request in the thread pool... ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,690::__init__::375::IOProcess::(_processLogs) Extracting request information... ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,690::__init__::375::IOProcess::(_processLogs) (7101) Got request for method 'statvfs' ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,691::__init__::375::IOProcess::(_processLogs) (7101) Queuing response ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,691::__init__::375::IOProcess::(_processLogs) (null)|Receiving request... ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,691::__init__::375::IOProcess::(_processLogs) Queuing request in the thread pool... ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,691::__init__::375::IOProcess::(_processLogs) Extracting request information... ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,692::__init__::375::IOProcess::(_processLogs) (null)|(7102) Got request for method 'access' ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,693::__init__::375::IOProcess::(_processLogs) (7102) Queuing response ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,693::__init__::375::IOProcess::(_processLogs) (null)|Receiving request... ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,693::__init__::375::IOProcess::(_processLogs) Queuing request in the thread pool... ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,694::__init__::375::IOProcess::(_processLogs) (null)|Extracting request information... ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,695::__init__::375::IOProcess::(_processLogs) (7103) Got request for method 'access' ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,695::__init__::375::IOProcess::(_processLogs) (7103) Queuing response ioprocess communication (4939)::DEBUG::2014-11-21 01:16:00,695::__init__::375::IOProcess::(_processLogs) (null)|Receiving req