Openstack实例-无可启动设备

时间:2018-08-15 16:36:20

标签: centos virtualbox instance openstack qemu

我已经将Openstack部署在VirtualBox计算机上托管的多节点体系结构上。现在,我尝试使用qcow2 centos映像启动我的第一个实例,但是每次执行此操作时,都会收到以下错误:

Booting from Hard Disk... 

Boot failed: not a bootable disk

No bootable device

error printscreen

我提到的是我使用了来自官方centos存储库的图像,但是我也使用Virtualbox构建了自己的qcow图像。在两种情况下,结果相同。 我不知道是什么原因造成的,我应该从哪里开始调查。

1 个答案:

答案 0 :(得分:1)

在创建新的虚拟机时,virt-manager似乎不读取现有映像的硬盘驱动器映像格式,而是选择了“原始”格式。由于virt-manager似乎是在内部存储它的设置,因此您不能只编辑〜/ .libvirt / qemu / VMNameHere.xml文件。

您必须将libvirt vm设置导出到xml,修复硬盘映像格式,然后将vm设置重新导入libvirt。

获取虚拟机名称: 代码:

virsh -c qemu:///session list --all

如果您的虚拟机位于系统帐户而非用户帐户中,则将qemu:/// session替换为qemu:/// system

导出虚拟机设置: 代码:

virsh -c qemu:///session dumpxml VMName > ~/Desktop/VMName.xml

更新xml文件中的硬盘驱动器格式:

代码:

From   
<devices>
    <emulator>/usr/bin/kvm</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw'/>
      <source file='/storage/vmimages/Windows7_x64-01/qcow2-60GB_HDD1.qcow2'/>
      <target dev='hda' bus='ide'/>
    </disk>
To
<devices>
    <emulator>/usr/bin/kvm</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2'/>
      <source file='/storage/vmimages/Windows7_x64-01/qcow2-60GB_HDD1.qcow2'/>
      <target dev='hda' bus='ide'/>
    </disk>

删除virt-manager中的旧虚拟机设置:

打开virt-manager并删除问题vm,但请确保保留硬盘驱动器映像

导入固定的xml文件:

代码:

virsh -c qemu:///session define ~/Desktop/VMName.xml

虚拟机将自动出现在virt-manager中。

虚拟机现在应该可以正常工作了。

其他说明: 我使用virt-manager加载到vm中的每个硬盘驱动器映像都会发生qcow2 / raw问题,因此每次都必须编辑并重新导入xml。

您也许可以关闭libvirt-bin和qemu-kvm服务,编辑〜/ .libvirt / qemu / VMNameHere.xml文件,然后以较短的方法重新启动,但我没有验证这是否可行。

希望这将节省一些搜索时间。