KVM 使用virtio驱动Windows server 虚拟机

KVM安装Windows默认使用的是qemu虚拟化IDE硬盘模式,在这种情况下,IO性能比较低,如果使用virtio的方式可以提高虚拟机IO性能。而virtio所驱动的网卡,也将原来的百兆扩展到千兆。这里就简单介绍下如何使用virtio驱动安装window server 2008. 其它windows版本操作相同,只需选择对应的驱动即可。

使用virtio安装window虚拟机

KVM安装Windows需要使用virtio的驱动:

https://fedoraproject.org/wiki/Windows_Virtio_Drivers#Direct_download

安装虚拟机步骤:

1、安装virtio驱动:

wget https://fedorapeople.org/groups/virt/virtio-win/virtio-win.repo -O /etc/yum.repos.d/virtio-win.repo
yum install virtio-win -y

2、查看virtio-win提供的驱动:

rpm -ql virtio-win | grep iso
/usr/share/virtio-win/virtio-win-0.1.126.iso
/usr/share/virtio-win/virtio-win.iso

3、安装windows:

创建一个虚拟机磁盘:

qemu-img  create -f qcow2 win-2c8g150g.img 150G

使用virtio驱动安装虚拟机:

virt-install -n win-2c8g150g --vcpus=2 --ram=8192 --os-type=windows --os-variant=win2k8 -c /vm/iso/cn_windows_server_2008_r2_sp1_x64.iso --disk path=/usr/share/virtio-win/virtio-win-0.1.126_amd64.vfd,device=floppy --disk path=/vm/win-2c8g150g.img,format=qcow2,bus=virtio --graphics vnc,listen=0.0.0.0 --noautoconsole

提示: 这里是使用的是软盘方式加载,如果镜像和驱动都使用cdrom的方式加载,在有些情况系统会找不到启动镜像,导致无法启动. 加载的驱动有x86和amd64两种类型,64位系统选择amd64. 32为系统选择x86.

4、 安装过程中,在选择磁盘界面会找不到磁盘,选择“加载驱动”,“浏览”,找到“软盘驱动器”,点开后选择 “server 2008”确定,驱动加载完成后,磁盘就出现了,继续安装即可。

5、安装完成后,在设备管理器中可以看到使用的是virtio:

在已安装的kvm虚拟机上添加virtio驱动

如果以传统的IDE硬盘模式安装可以使用如下命令:

virt-install  --virt-type kvm --name win-2c8g100g  --ram 8192  -vcpus=2 -s 100 -c /vm/iso/cn_windows_server_2008_r2_sp1_x64.iso --os-type=windows -f /vm/win-2c8g100g.img --graphics vnc,listen=0.0.0.0 --noautoconsole

安装之后要使用virtio驱动,可以选择加载virtio驱动的iso文件到虚拟机光驱:

virsh  attach-disk  win-2c8g100g /usr/share/virtio-win/virtio-win.iso  hdb  --type cdrom

或者使用如下命令:

virsh change-media win-2c8g100g hdb /usr/share/virtio-win/virtio-win.iso

参考链接:https://superuser.com/questions/239870/change-cd-rom-via-virsh

修改虚拟机的xml文件,使其能发现virtio类型的设备,否则驱动无法安装:

增加一块virtio驱动的硬盘:

qemu-img  create -f qcow2 test.img 1G

修改虚拟机的xml文件,在原有的"disk type"区域增加一个test磁盘的配置:

 <disk type=‘file‘ device=‘disk‘>
      <driver name=‘qemu‘ type=‘qcow2‘/>
      <source file=‘/vm/test.img‘/>
      <target dev=‘vdb‘ bus=‘virtio‘/>
    </disk>

修改网卡类型为 virtio, 在 interface type 区域,修改model type=‘virtio‘ :

 <interface type=‘bridge‘>
      <mac address=‘52:54:00:39:f9:60‘/>
      <source bridge=‘br0‘/>
      <model type=‘virtio‘/>

提示:如果不是使用vnc远程连接,需要新增一个网卡配置,在没有安装驱动前,使用上面的配置,虚拟机是断网状态。

修改完成之后,重启虚拟机:

virsh shutdown win-2c8g100g
virsh start win-2c8g100g

进入虚拟机,成功添加iso驱动程序后,进入虚拟机的设备管理器界面,在“系统设备”里面对相应的驱动进行更新:

更新驱动需要找到挂载的CD中 virtio-win.iso中的对应文件。驱动镜像中分别有四种驱动,他们对应关系为:

  • Balloon, the balloon driver, affects the PCI standard RAM Controller in the System devicesgroup.
  • vioserial, the serial driver, affects the PCI Simple Communication Controller in the System devices group.
  • NetKVM, the network driver, affects the Network adapters group. This driver is only available if a virtio NIC is configured. Configurable parameters for this driver are documented in Appendix A, NetKVM Driver Parameters.
  • viostor, the block driver, affects the Disk drives group. This driver is only available if a virtio disk is configured.

参考链接:

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Virtualization_Host_Configuration_and_Guest_Installation_Guide/form-Virtualization_Host_Configuration_and_Guest_Installation_Guide-Para_virtualized_drivers-Mounting_the_image_with_virt_manager.html

如果找不到英文说明中对应的设备,使用如下方式:

对未知设备添加virtio驱动即可,如图:

安装驱动之后:

对应的磁盘驱动成功安装:

此时virtio驱动添加完成,修改虚拟机的xml文件,删除test.img的虚拟磁盘配置,修改启动磁盘驱动类型:

    <disk type=‘file‘ device=‘disk‘>
      <driver name=‘qemu‘ type=‘qcow2‘/>
      <source file=‘/vm/win-2c8g100g.img‘/>
      <target dev=‘vda‘ bus=‘virtio‘/>
      <address type=‘pci‘ domain=‘0x0000‘ bus=‘0x00‘ slot=‘0x07‘ function=‘0x0‘/>
    </disk>

重启虚拟机即可。

参考链接:

https://access.redhat.com/solutions/17463

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Virtualization_Host_Configuration_and_Guest_Installation_Guide/form-Virtualization_Host_Configuration_and_Guest_Installation_Guide-Para_virtualized_drivers-Installing_with_a_virtualized_floppy_disk.html

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Virtualization_Host_Configuration_and_Guest_Installation_Guide/form-Virtualization_Host_Configuration_and_Guest_Installation_Guide-Para_virtualized_drivers-Mounting_the_image_with_virt_manager.html

http://blog.csdn.net/ks_is_fighting/article/details/38358793

时间: 2024-10-14 23:13:22

KVM 使用virtio驱动Windows server 虚拟机的相关文章

KVM 之 virtio 驱动安装Windows系统

请自行安装配置 KVM管理工具,这里不做介绍! OS: CentOS Linux release 7.2.1511 (Core) virtio 镜像: virtio-win-0.1.102.iso 下载地址:http://pan.baidu.com/s/1jI6PXp8 1.创建磁盘镜像: [[email protected] ~]# mkdir /var/kvm/images [[email protected] ~]# qemu-img create -f qcow2 windows7.im

制作Xen Windows Server 2008(2012)模板镜像

这段时间一直在研究如何制作一个适合Xen虚拟化的Windows Server 2008(2012)镜像,中间虽然遇到了一些阻挠,不过最终还是顺利解决,成功制作出了Xen Windows Server 2008(2012) 模板镜像.这里记录下整个制作过程: 1.首先要确保服务器的VT已经打开,可以通过如下命令来查看: [[email protected] ~]# cat /proc/cpuinfo | egrep '(vmx|svm)' 如果有输出,则说明该服务器的VT已经打开. 2.创建一个将

在Azure上部署Windows Server Core

作为服务器操作系统,图形界面真心有些多余了,这也是很多人喜欢Linux服务器的原因之一.从Windows Server 2008开始,微软提供了Server Core版本,其实就是一个没有图形界面的服务器版操作系统. 在中国版的Azure上,没有Server Core版本的镜像,但是我们完全可以自己动手了制作一个. 首先创建一个Windows Server虚拟机.远程桌面连接到虚拟机后,打开PowerShell,连续执行以下命令(第一条命令执行完成后不要重启,继续执行第二条命令): Remove

KVM下windows虚拟机使用virtio驱动

KVM下windows虚拟机默认disk使用的是Qemu IDE硬盘,网卡默认是rtl8139网卡.为了使kvm主机在相同的配置下,有更好的效率,可以将网卡和磁盘替换成virtio的驱动. windows的virtio驱动主要包括网卡以及磁盘的驱动,主要有三种方式,第一种是已有windows的操作系统,需要更新驱动,第二种是是安装时加载virtio驱动,第三种是直接制作virtio驱动的iso系统镜像. 一:更新virtio驱动 1.修改xml文件 原始xml文件 <disk type='fil

烂泥:KVM安装Windows Server 2008 R2使用virtio硬盘

本文首发于烂泥行天下. 在上一篇文章中,我们介绍了使用IDE硬盘来安装Windows Server 2008 R2,这篇文章我们来介绍使用virtio硬盘来安装Windows Server 2008 R2. 说明:KVM默认使用的硬盘格式为virtio. 使用virtio接口的硬盘,我们必须加载virtio硬盘驱动.如果不加载该驱动windows installer会无法找到虚拟磁盘,如下图: 现在安装虚拟机的安装步骤,首先创建虚拟机的硬盘,使用如下命令: qemu-img create -f

烂泥:KVM中安装Windows Server 2008 R2系统

本文首发于烂泥行天下. 在前一篇文章中,我介绍了有关在KVM中的安装Centos系统.接下来,就来介绍如何在KVM中安装Windows系统. 注意:在此我安装的是windows server 2008 R2,使用的硬盘格式一定要是IDE. 在KVM中安装操作系统一般是分为三步: 创建虚拟机所需要的硬盘,使用qemu-img命令 开始虚拟机,使用virt-install命令 按照正常安装系统,进行安装 现在开始第一步,创建虚拟机的硬盘.使用如下命令: qemu-img create -f qcow

使用kvm制作Eucalyptus镜像(Windows Server 2008为例)

1.前言 Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems (Eucalyptus) 是一种开源的软件基础结构,用来通过计算集群或工作站群实现弹性的.实用的云计算.它最初是美国加利福尼亚大学 Santa Barbara 计算机科学学院的一个研究项目,现在已经商业化,发展成为了 Eucalyptus Systems Inc.不过,Eucalyptus 仍然按开源项目那样维护和开发.

【转贴】Windows virtio 驱动

Windows virtio 驱动 https://blog.51cto.com/dangzhiqiang/1833615 去年去中建总部的时候用过. 发现很多搞openstack的人都不清楚这一块的驱动的处理. 党志强关注0人评论8298人阅读2016-08-02 17:06:14 Windows virtio 驱动 概述 该页面描述了如何为KVM里的windows虚机获取和安装virtio驱动,以及如何添加软件agent. Yum源 win virtio驱动提供yum源,安装rpm包后,vi

安装Windows Nano Server虚拟机

NanoServer是微软在Windows Server 2016新推出的一个极具精简的系统底层,为关键核心业务提供底层最精简的系统以减少系统占用空间,提高性能,减少补丁更新和重启的频率. NanoServer也是Windows Server 2016 中的新增安装选项,该远程管理方式类似于 Server Core,但部署规模要小很多.它从最基础的程序包安装开始,并且您只能向其中添加自定义映像所需的角色或功能.Nano Server 的服务模式是有效的 Current Branch for Bu