Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-52938

Can't create instance from volume after v2v converting to OSP18 because converted volume has an incorrect property "architecture = 'x86_64'"

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Normal Normal
    • None
    • rhel-9.5
    • virt-v2v
    • No
    • Moderate
    • rhel-sst-virtualization
    • ssg_virtualization
    • 7
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • None
    • None
    • x86_64
    • None

      Description of problem:
      Can't create instance from volume after v2v converting to OSP18 because converted volume has an incorrect property "architecture = 'x86_64'"

      Version-Release number of selected component (if applicable):
      virt-v2v-2.5.6-1.el9.x86_64
      python3-openstackclient-6.2.0-18.0.20240625095349.05d34ff.el9ost.noarch
      libguestfs-1.50.2-1.el9.x86_64
      guestfs-tools-1.51.6-4.el9.x86_64
      nbdkit-1.38.3-1.el9.x86_64
      libnbd-1.20.2-2.el9.x86_64
      libvirt-libs-10.5.0-4.el9.x86_64
      qemu-img-9.0.0-7.el9.x86_64

      How reproducible:
      100%

      Steps to Reproduce:
      1. Prepare a v2v appliance on OSP18 env

      sh-5.1$ openstack server list
      .............
      | c40430c1-bc1d-4c4c-8958-26283231928c | rhel9.5-v2v-appliance   | ACTIVE | public=192.168.122.246 | rhel9.5-image            | medium |
      ............. 

      2.Convert a guest from OVA to OSP18 by virt-v2v in rhel9.5-v2v-appliance instance

       # virt-v2v -i ova /home/esx8.0-rhel9.4-efi-serial-port.tar.xz -o openstack -oo server-id=rhel9.5-v2v-appliance  --oo os-username=admin -oo os-auth-url=https://keystone-public-openstack.apps.ocp.openstack.lab -oo os-password=12345678  -oo os-project-name=admin -oo os-user-domain-name=Default -oo os-project-domain-name=Default -oo os-identity-api-version=3 --oo verify-server-certificate=false 
      [   0.4] Setting up the source: -i ova /home/esx8.0-rhel9.4-efi-serial-port.tar.xz
      virt-v2v: warning: making OVA directory public readable to work around 
      libvirt bug https://bugzilla.redhat.com/1045069
      [ 133.9] Opening the source
      [ 194.7] Inspecting the source
      [ 212.2] Checking for sufficient free disk space in the guest
      [ 212.2] Converting Red Hat Enterprise Linux 9.4 Beta (Plow) to run on KVM** (process:1844): WARNING **: 00:03:01.662: Entity http://pcisig.com/pci/1af4/1058 referenced but not defined
      virt-v2v: This guest has virtio drivers installed.
      [ 458.7] Mapping filesystem data to avoid copying unused and blank areas
      [ 461.8] Closing the overlay
      [ 462.2] Assigning disks to buses
      [ 462.2] Checking if the guest needs BIOS or UEFI to boot
      virt-v2v: This guest requires UEFI on the target to boot.
      [ 462.2] Setting up the destination: -o openstack -oo server-id=rhel9.5-v2v-appliance
      [17850.867046] pci 0000:0a:00.0: [1af4:1042] type 00 class 0x010000 PCIe Endpoint
      [17850.868190] pci 0000:0a:00.0: BAR 1 [mem 0x00000000-0x00000fff]
      [17850.869514] pci 0000:0a:00.0: BAR 4 [mem 0x00000000-0x00003fff 64bit pref]
      [17850.882420] pci 0000:0a:00.0: BAR 4 [mem 0x388000000000-0x388000003fff 64bit pref]: assigned
      [17850.883440] pci 0000:0a:00.0: BAR 1 [mem 0xfda00000-0xfda00fff]: assigned
      [17850.884476] virtio-pci 0000:0a:00.0: enabling device (0000 -> 0002)
      [17850.939533] virtio_blk virtio8: 4/0/0 default/read/poll queues
      [17850.954767] virtio_blk virtio8: [vdc] 33554432 512-byte logical blocks (17.2 GB/16.0 GiB)
      [ 482.1] Copying disk 1/1
      █ 100% [****************************************]
      [18013.389338]  vdc: vdc1 vdc2 vdc3
      [ 640.5] Creating output metadata
      [18013.403894]  vdc: vdc1 vdc2 vdc3
      [ 646.6] Finishing off 

      {}3.Launch  instance from the volume after v2v conversion, found instance can't be created with error ' {'code': 500, 'created': '2024-08-05T16:35:17Z', 'message': 'No valid host was found. ''

      3.1 sh-5.1$ openstack volume list
      +--------------------------------------+------------------------------------+-----------+------+------------------------------------------------+
      | ID                                   | Name                               | Status    | Size | Attached to                                    |
      +--------------------------------------+------------------------------------+-----------+------+------------------------------------------------+
      | 8b90c066-2574-4b10-bd5a-1724b44d2175 | esx8.0-rhel9.4-efi-serial-port-sda | available |   16 |   sh-5.1$ openstack server create --flavor small --volume esx8.0-rhel9.4-efi-serial-port-sda --nic net-id=8128177e-93d0-4bb5-a012-661e79da3aa6 esx8.0-rhel9.4-efi-serial-port  --availability-zone novash-5.1
      3.2 $ openstack server list
      +--------------------------------------+--------------------------------+--------+------------------------+--------------------------+--------+
      | ID                                   | Name                           | Status | Networks               | Image                    | Flavor |
      +--------------------------------------+--------------------------------+--------+------------------------+--------------------------+--------+
      | 2fedbf64-7df2-4856-bc2d-f3097e9d3ada | esx8.0-rhel9.4-efi-serial-port | ERROR  |                        | N/A (booted from volume) | small  |
      3.3 sh-5.1$ openstack server show esx8.0-rhel9.4-efi-serial-port
      ......
      | fault                               | {'code': 500, 'created': '2024-08-05T16:35:17Z', 'message': 'No valid host was found. ', 'details': 'Traceback (most recent call last):\n  File "/usr/lib/python3.9/site-packages/nova/conductor/manager.py", line 1654, in schedule_and_build_instances\n    host_lists = self._schedule_instances(context, request_specs[0],\n  File "/usr/lib/python3.9/site-packages/nova/conductor/manager.py", line 942, in _schedule_instances\n    host_lists = self.query_client.select_destinations(\n  File "/usr/lib/python3.9/site-packages/nova/scheduler/client/query.py", line 41, in select_destinations\n    return self.scheduler_rpcapi.select_destinations(context, spec_obj,\n  File "/usr/lib/python3.9/site-packages/nova/scheduler/rpcapi.py", line 160, in select_destinations\n    return cctxt.call(ctxt, \'select_destinations\', **msg_args)\n  File "/usr/lib/python3.9/site-packages/oslo_messaging/rpc/client.py", line 190, in call\n    result = self.transport._send(\n  File "/usr/lib/python3.9/site-packages/oslo_messaging/transport.py", line 123, in _send\n    return self._driver.send(target, ctxt, message,\n  File "/usr/lib/python3.9/site-packages/oslo_messaging/_drivers/amqpdriver.py", line 689, in send\n    return self._send(target, ctxt, message, wait_for_reply, timeout,\n  File "/usr/lib/python3.9/site-packages/oslo_messaging/_drivers/amqpdriver.py", line 681, in _send\n    raise result\nnova.exception_Remote.NoValidHost_Remote: No valid host was found. \nTraceback (most recent call last):\n\n  File "/usr/lib/python3.9/site-packages/oslo_messaging/rpc/server.py", line 244, in inner\n    return func(*args, **kwargs)\n\n  File "/usr/lib/python3.9/site-packages/nova/scheduler/manager.py", line 210, in select_destinations\n    raise exception.NoValidHost(reason="")\n\nnova.exception.NoValidHost: No valid host was found. \n\n'} |
      | flavor                              | small (small)                                                                                                   .................... 

      4. Create image from the volume to check the metadatas 

      4.1 sh-5.1$ openstack image create esx8.0-rhel9.4-efi-serial-port-image --volume  8b90c066-2574-4b10-bd5a-1724b44d2175
      4.2 sh-5.1$ openstack image list
      .....
      | cb8a37b1-c4f3-47e0-9855-693da998cd1d | esx8.0-rhel9.4-efi-serial-port-image | active |
      ......
      4.2 sh-5.1$ openstack image show esx8.0-rhel9.4-efi-serial-port-image
      .....
      | properties       | architecture='x86_64', hw_cpu_cores='1', hw_cpu_sockets='1', hw_disk_bus='virtio', hw_firmware_type='uefi', hw_machine_type='q35', hw_rng_model='virtio', hw_video_model='vga', hw_vif_model='virtio', hypervisor_type='kvm', os_distro='rhel', os_hash_algo='sha512', os_hash_value='52d07e645da56394dd315e10f56a4c92d7ff9f730bcba1f2606a2884bbea6d882dd78e8e95c5de871704a8efd65535ce863c227a586c11bfa3398446ba68316d', os_hidden='False', os_type='linux', os_version='9.4', stores='default_backend', vm_mode='hvm' | 

      5. Remove  architecture='x86_64' from metadata of esx8.0-rhel9.4-efi-serial-port-image and then create the instance from the image, can see the instance can be created successfully after removing property architecture

      5.1 sh-5.1$ openstack image unset esx8.0-rhel9.4-efi-serial-port-image  --property architecture
      5.2 sh-5.1$  openstack server create --flavor small --image esx8.0-rhel9.4-efi-serial-port-image  --nic net-id=8128177e-93d0-4bb5-a012-661e79da3aa6 esx8.0-rhel9.4-efi-serial-port-image-remove-architecture --availability-zone nova 
      5.3 sh-5.1$ openstack server list
      +--------------------------------------+----------------------------------------------------------+--------+------------------------+--------------------------------------+--------+
      | ID                                   | Name                                                     | Status | Networks               | Image                                | Flavor |
      +--------------------------------------+----------------------------------------------------------+--------+------------------------+--------------------------------------+--------+
      | c20b1378-c495-4e17-bd6f-168933015d36 | esx8.0-rhel9.4-efi-serial-port-image-remove-architecture | ACTIVE | public=192.168.122.232 | esx8.0-rhel9.4-efi-serial-port-image | small  | 

      Actual results:
      As above description

      Expected result:
      Remove property "architecture = 'x86_64'" after v2v converting guests to OSP18

      Additional info:
      There is no architecture in OSP18 image metadata, pls refer to screenshot 'no-architecture-osp18.png'

       

       

              virt-maint virt-maint
              mxie@redhat.com Ming Xie
              virt-maint virt-maint
              virt-bugs virt-bugs
              Votes:
              0 Vote for this issue
              Watchers:
              10 Start watching this issue

                Created:
                Updated: