Bug 1308769
Summary: | virt-v2v does not copy additional disks to Glance | |||
---|---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Dayle Parker <dayleparker> | |
Component: | libguestfs | Assignee: | Richard W.M. Jones <rjones> | |
Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> | |
Severity: | urgent | Docs Contact: | ||
Priority: | urgent | |||
Version: | 7.2 | CC: | dayleparker, fahmed, jherrman, mkalinin, mxie, mzhan, ptoscano, rhodain, rjones, rubick, sherold, tzheng, xiaodwan | |
Target Milestone: | rc | Keywords: | ZStream | |
Target Release: | --- | |||
Hardware: | Unspecified | |||
OS: | Unspecified | |||
Whiteboard: | V2V | |||
Fixed In Version: | libguestfs-1.32.4-1.el7 | Doc Type: | Bug Fix | |
Doc Text: |
With this update, virt-v2v is capable of exporting guests with more than one disk to the OpenStack Glance service, while previously, only guests with a single disk could be exported. This makes it possible for larger virtual deployments to be converted to OpenStack Glance using virt-v2v.
|
Story Points: | --- | |
Clone Of: | ||||
: | 1316625 (view as bug list) | Environment: | ||
Last Closed: | 2016-11-03 17:58:02 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: | ||||
Bug Depends On: | ||||
Bug Blocks: | 1218766, 1316625 |
Comment 4
Richard W.M. Jones
2016-02-16 15:56:02 UTC
For QA, I tested this by creating a CentOS guest: $ virt-builder centos-6.img Then I created a second empty disk: $ truncate -s 1G centos-6-2.img Then I created some libvirt XML to describe the guest. See http://libguestfs.org/virt-v2v.1.html#minimal-xml-for--i-libvirtxml-option Then I imported the guest to Glance by doing: $ virt-v2v -i libvirtxml centos-6.xml -o glance -of qcow2 -on test1 You should see 2 disks being created in Glance. They will be called "test1" and "test1-disk2". Upstream commits: https://github.com/libguestfs/libguestfs/commit/bae3d92e88b7e74af11a5d0905710cf00f2504e3 https://github.com/libguestfs/libguestfs/commit/6200ae7204f4db3b93707acf7356083e121f854f I can reproduce it with builds: libguestfs-1.28.1-1.55.el7.x86_64 virt-v2v-1.28.1-1.55.el7.x86_64 kernel:kernel-3.10.0-327.el7.x86_64 virtio-win-1.8.0-4.el7.noarch Verify it with builds: libguestfs-1.32.4-1.el7.x86_64 virt-v2v-1.32.4-1.el7.x86_64 kernel:3.10.0-376.el7.x86_64 virtio-win-1.8.0-4.el7.noarch Steps: Scenario 1: 1.1prepare a guest with muiltiple disk: #virsh dumpxml $guest | grep disk -A7 <disk type='volume' device='disk'> <driver name='qemu' type='raw' cache='none'/> <source pool='default' volume='win-sda'/> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </disk> <disk type='volume' device='disk'> <driver name='qemu' type='raw' cache='none'/> <source pool='default' volume='win-sdb'/> <target dev='vdb' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </disk> <disk type='volume' device='disk'> <driver name='qemu' type='raw' cache='none'/> <source pool='default' volume='win-sdc'/> <target dev='vdc' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </disk> <disk type='volume' device='disk'> <driver name='qemu' type='raw' cache='none'/> <source pool='default' volume='win-sdd'/> <target dev='vdd' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/> </disk> <controller type='usb' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> </controller> <controller type='pci' index='0' model='pci-root'/> <interface type='direct'> <mac address='00:50:56:b7:bb:cc'/> <source dev='enp0s25' mode='bridge'/> 1.2.Convert a linux guest with multiple disk to openstack using virt-v2v #virt-v2v -ic vpx://root.4.103/tzheng-demo/10.73.3.19/?no_verify=1 -o glance rhel7-juzhou-standard-cdrom-multidisks --password-file /tmp/passwd -on kean [ 0.0] Opening the source -i libvirt -ic vpx://root.4.103/tzheng-demo/10.73.3.19/?no_verify=1 rhel7-juzhou-standard-cdrom-multidisks [ 1.0] Creating an overlay to protect the source from being modified [ 2.4] Initializing the target -o glance [ 3.2] Opening the overlay [ 49.9] Inspecting the overlay [ 111.0] Checking for sufficient free disk space in the guest [ 111.0] Estimating space required on target for each disk [ 111.0] Converting Red Hat Enterprise Linux Server 7.0 (Maipo) to run on KVM virt-v2v: This guest has virtio drivers installed. [ 524.5] Mapping filesystem data to avoid copying unused and blank areas [ 525.6] Closing the overlay [ 525.7] Checking if the guest needs BIOS or UEFI to boot [ 525.7] Assigning disks to buses [ 525.7] Copying disk 1/2 to /var/tmp/glance.OAvf9d/sda (raw) (100.00/100%) [ 892.5] Copying disk 2/2 to /var/tmp/glance.OAvf9d/sdb (raw) (100.00/100%) [ 983.8] Creating output metadata +------------------+--------------------------------------+ | Property | Value | +------------------+--------------------------------------+ | checksum | a53f5804058734f82a00943d3fa28a4b | | container_format | bare | | created_at | 2016-04-29T04:58:00.000000 | | deleted | False | | deleted_at | None | | disk_format | raw | | id | 456888fb-24f2-419e-a3eb-57a76f3ca5aa | | is_public | False | | min_disk | 0 | | min_ram | 0 | | name | kean | | owner | 6c4dac53186d44fcbac29d3f3f575125 | | protected | False | | size | 8589934592 | | status | active | | updated_at | 2016-04-29T04:59:33.000000 | | virtual_size | None | +------------------+--------------------------------------+ +----------------------------+--------------------------------------+ | Property | Value | +----------------------------+--------------------------------------+ | Property 'architecture' | x86_64 | | Property 'hw_disk_bus' | virtio | | Property 'hw_vif_model' | virtio | | Property 'hypervisor_type' | kvm | | Property 'os_distro' | rhel | | Property 'os_type' | linux | | Property 'os_version' | 7 | | Property 'vm_mode' | hvm | | checksum daigu | a53f5804058734f82a00943d3fa28a4b | | container_format | bare | | created_at | 2016-04-29T04:58:00.000000 | | deleted | False | | deleted_at | None | | disk_format | raw | | id | 456888fb-24f2-419e-a3eb-57a76f3ca5aa | | is_public | False | | min_disk | 0 | | min_ram | 2060 | | name | kean | | owner | 6c4dac53186d44fcbac29d3f3f575125 | | protected | False | | size | 8589934592 | | status | active | | updated_at | 2016-04-29T04:59:39.000000 | | virtual_size | None | +----------------------------+--------------------------------------+ +------------------+--------------------------------------+ | Property | Value | +------------------+--------------------------------------+ | checksum | a981130cf2b7e09f4686dc273cf7187e | | container_format | bare | | created_at | 2016-04-29T04:59:40.000000 | | deleted | False | | deleted_at | None | | disk_format | raw | | id | 31f210cd-5b37-4943-b427-0d7f94c6e0aa | | is_public | False | | min_disk | 0 | | min_ram | 0 | | name | kean-disk2 | | owner | 6c4dac53186d44fcbac29d3f3f575125 | | protected | False | | size | 2147483648 | | status | active | | updated_at | 2016-04-29T05:00:02.000000 | | virtual_size | None | +------------------+--------------------------------------+ +----------------------------+--------------------------------------+ | Property | Value | +----------------------------+--------------------------------------+ | Property 'architecture' | x86_64 | | Property 'hw_disk_bus' | virtio | | Property 'hw_vif_model' | virtio | | Property 'hypervisor_type' | kvm | | Property 'os_distro' | rhel | | Property 'os_type' | linux | | Property 'os_version' | 7 | | Property 'vm_mode' | hvm | | checksum | a981130cf2b7e09f4686dc273cf7187e | | container_format | bare | | created_at | 2016-04-29T04:59:40.000000 | | deleted | False | | deleted_at | None | | disk_format | raw | | id | 31f210cd-5b37-4943-b427-0d7f94c6e0aa | | is_public | False | | min_disk | 0 | | min_ram | 2060 | | name | kean-disk2 | | owner | 6c4dac53186d44fcbac29d3f3f575125 | | protected | False | | size | 2147483648 | | status | active | | updated_at | 2016-04-29T05:00:03.000000 | | virtual_size | None | +----------------------------+--------------------------------------+ [1107.5] Finishing off Scenario2:Convert multidisks guest which has windows os from esx6.0 to openstack Scenario3:Convert multidisks guest which has linux os from XEN to openstack Scenario4:Convert multidisks guest which has windows os from XEN to openstack Scenario5:Convert multidisks guest which has linux os from KVM to openstack Scenario6:Convert multidisks guest which has windows os from KVM to openstack 7.After conversion, check the result on openstack dashboard Login the openstack dashboard 7.1 Check all disk which belong to the guest has list the image interface 7.2 Make sure the guest can be boot successfully on openstack 7.3 Create the other additional disks as volume 7.4 Add volumes which created by step2.4 to instance which is you just converted 7.5 Make sure the instance is normal and the new added volumes could be used in OS 7.6 Check the guest whether or not meet checkpoint Result now: As above all scenarios can be converted successfully and checking conversion result at openstack is passed,virt-v2v can copy additional disks to Glance So move the bug from ON_QA to VERIFIED 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-2576.html |