问题产生背景:

使用CloudStack+ KVM组合进行资源池纳管工作,通过ISO镜像文件创建了两个模板:

RHEL6U3 64位系统以及WindowsServer2008 R2 SP1 64位系统。

然后通过模板创建实例,挂载外接存储,实例启动后,通过fdisk -l 查看RHEL系统以及通过计算机管理中

的存储管理查看Windows系统发现,RHEL系统可以显示挂载的第二块硬盘(卷),但是 Windows却始终

不能识别。

问题分析:

首先考虑是不是CloudStack的SSVM出现了问题,不能够执行诸如卷的挂载等操作,但是RHEL这样的Linux操作

系统不管再挂几块新磁盘或者卸载之类的操作均不会有任何问题,所以判断问题不是出在CloudStack上面,而是在于操作系统。

那么会不会是KVM不能够对 Windows虚拟机进行磁盘挂载操作呢?显然不可能,在没有 CloudStack或者Openstack这样的云管理平台之前,我们就是直接使用RHEL上面的KVM去创建虚拟机,不管是virsh之类的

命令也好,还是virt-manager这样的图形化控制台也好,都不存在说Windows虚拟机不能添加第二块硬盘,

在 CloudStack里面对应添加除系统卷之外的第二块卷。既然从CloudStack的管理界面看不出任何问题,那么

就登陆到KVM主机上面查看吧,打开 virt-manager图形化工具,点击RHEL与Windows虚拟机的Details查看

硬件,发现硬盘跟网卡的硬件类型均为virtio,然后通过手动添加硬盘的方式对RHEL跟Windows进行测试,发现

如果硬盘类型添加为IDE,则两个操作系统均可以显示出来,然而如果添加virtio类型的硬盘,只有RHEL可以显示,而Windows却不能显示。

那么virtio是个什么东东呢http://www.linux-kvm.org/page/Virtio , 所谓的半虚拟化驱动,而CloudStack调用KVM接口去创建虚拟机的时候,数据磁盘类型就是使用的virtio类型的,而在KVM上Windows虚拟机并不能支持,所以导致无法成功显示出数据磁盘。

解决步骤:

 

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第1张图片

图 通过界面添加一个新的数据盘

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第2张图片

图 点击附加磁盘

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第3张图片

图将磁盘挂载到windows2008上

 

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第4张图片

先取消ISO

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第5张图片

图 点击挂载ISO

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第6张图片

图 选择ISO

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第7张图片

图 重启实例

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第8张图片

图 重启实例后打开设备管理器查看SCSI控制器

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第9张图片

图 选择驱动位置

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第10张图片

图 选择驱动挂载盘

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第11张图片

图 安装驱动

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第12张图片

图 确认驱动安装是否成功

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第13张图片

图 成功显示数据盘

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第14张图片

图 初始化磁盘

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第15张图片

图 开始格式化

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第16张图片

图 开始分区

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第17张图片

图 格式化成功

让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘_第18张图片

图 大功告成

 

注意:

Windows server 2003的驱动:virtio-win-0.1-30.iso

Windows server2008 的驱动:virtio-win-0.1-65.iso

否则会造成蓝屏的!!!