Use UEFI as the default boot for AArch64

Queens版本之前存在此bug

Method 1:

bug修复patch:

http://git.openstack.org/cgit/openstack/nova/commit/?id=9d1a909bfebc8040c37109bce46e4d7a9a88a245

具体添加:

Pike or Ocata:

在nova/virt/libvirt/driver.py中def _configure_guest_by_virt_type(self, guest, virt_type, caps, instance,
                                      image_meta, flavor, root_device_name)
添加如下红色部分代码,
                guest.sysinfo = self._get_guest_config_sysinfo(instance)
                guest.os_smbios = vconfig.LibvirtConfigGuestSMBIOS()
            hw_firmware_type = image_meta.properties.get('hw_firmware_type')
            if caps.host.cpu.arch == fields.Architecture.AARCH64:
                if not hw_firmware_type:
                    hw_firmware_type = fields.FirmwareType.UEFI
            if hw_firmware_type == fields.FirmwareType.UEFI:
                if self._has_uefi_support():

Newton:

4372             if caps.host.cpu.arch == arch.AARCH64:
4373                 if not hw_firmware_type:
4374                     hw_firmware_type = fields.FirmwareType.UEFI

 

Method 2:

设置image的hw_firmware_type,detail information: https://docs.openstack.org/glance/pike/admin/troubleshooting.html

$ openstack image create --container-format bare --disk-format qcow2 \
  --property hw_firmware_type=uefi --file /tmp/cloud-uefi.qcow --name uefi

posted on 2018-03-14 10:18  carrot_hrp  阅读(729)  评论(0编辑  收藏  举报

导航