从vmware的虚拟机迁移到opensatck,由于vmware虚拟机磁盘类型采用的是scsi,要迁移到opensatck平台运行,发现虚拟机无法起来,原因是vmware虚拟机没有安装virtio驱动,所以迁移之前要确保虚拟机支持virtio和安装了virtio驱动。
根据您服务器的操作系统,判断是否需要修复临时文件系统启用virtio驱动。
| 系统版本 | 说明 |
|---|---|
| CentOS 6/7/8及以上版本、Ubuntu 12/14/16/18/20及以上版本、 Debian 7/8/9/10及以上版本、SUSE 11/12/15及以上版本 |
如果服务器操作系统如左侧所示,在导入自定义镜像时,openstack将会自动处理virtio驱动。 默认已安装virtio驱动的系统,但有时openstack image注入hw_scsi_mode=virtio-scsi hw_disk_bus=scsi元数据不生效,需要注意步骤二: 修复临时文件系统。 |
通过检查,发现源服务器内核支持virtio驱动,但是临时文件系统initramfs或者initrd中没有包含virtio驱动时,需要修复临时文件系统。以CentOS等为例。
1、运行grep -i virtio /boot/config-$(uname -r)检查当前操作系统的内核是否支持virtio驱动。
$ grep -i virtio /boot/config-$(uname -r)
CONFIG_VIRTIO_BLK=m
CONFIG_SCSI_VIRTIO=m
CONFIG_VIRTIO_NET=m
CONFIG_VIRTIO_CONSOLE=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_VIRTIO=m
# Virtio drivers
CONFIG_VIRTIO_PCI=m
CONFIG_VIRTIO_BALLOON=m
# CONFIG_VIRTIO_MMIO is not set
请检查CONFIG_VIRTIO_BLK和CONFIG_VIRTIO_NET这两个参数。
| 检查结果 | 说明 |
|---|---|
| 没有这两个参数 |