命令记不住

登陆

KVM 安装 windows 并进行调优

1.创建WIN7虚拟机

1.准备Win7 ISO镜像


![12]


2.创建虚拟机磁盘

[root@kvm-node1 ~]# qemu-img create -f qcow2 win7-node1.qcow2

3.virt-install命令创建Win7虚拟机, 也可以使用virt-manager创建Win7虚拟机

[root@kvm-node1 ~]# virt-install --name win7-node1 \
--virt-type kvm \
--ram 2048 \
--cdrom=/data/win7.iso \
--disk path=/data/win7-node1.qcow2 \
--network bridge=br0 \
--graphics vnc,listen=0.0.0.0 \
--noautoconsole

4.Win7安装过程, 内存与磁盘不够会导致安装慢或失败

![13]
![14]
![15]

2.虚拟机性能优化

在生产环境中,特别是Windows虚拟机需要对一些参数进行调整以便优化虚拟机性能。

1、 Windows虚拟机驱动安装

KVM新的版本对Windows虚拟机支持已经大大提升,但还是存在一些驱动不能识别安装问题。

第1步,使用vnc viewer工具连接到虚拟机win2012虚拟机,在设备管理器中可以看到PCI设备存在感叹号。



第2步,访问https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.160-1/下载virtio驱动,解压后如图4-3-9所示,其中Balloon是内存气球驱动,NetKVM是网络驱动,vioserial是控制台驱动,viostor是存储相关驱动。



第3步,更新感叹号设备驱动。



第4步,系统提示找到驱动VirtIO Balloon Driver属于内存气球驱动,如图4-3-11所示,单击“安装”。



第5步,成功安装virtio驱动,查看虚拟机win2012设备管理器,已经没有未安装驱动的硬件

2、 调整虚拟机默认网卡

KVM环境下安装虚拟机,默认使用的是RTL8139网卡,该网卡速率为100M,在生产环境中需要进行调整。
第1步,使用vnc viewer工具连接到虚拟机win2012虚拟机,查看默认安装的RTL8139网卡信息,其速度为100M。

第2步,KVM内核可以直接支持E1000类型,因此修改虚拟机配置文件即可,使用命令“virsh edit win2012”修改配置文件,将原model type修改为e1000。

root@kvm-server:/home/admin# virsh edit win2012
<interface type='bridge'>
   <mac address='52:54:00:73:2e:d3'/>
   <source bridge='virbr0'/>
   <model type='e1000'/>  #修改网卡类型为e1000
   <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
 </interface>

第3步,使用vnc viewer工具连接到虚拟机win2012虚拟机,网络适配器已从RTL8139变为Intel PRO 100/1000MT,其速度为1000M。

3、 调整虚拟机使用virtio网卡

将虚拟机默认网卡从RTL8139调整为E1000可以实现100M到1000M的升级,但在生产环境中,10G网络已经大量使用,KVM环境下已经可以支持,使用virtio网卡可以支持10G网络。

第1步,使用命令“virsh edit win7-02”修改配置文件,将原model type修改为virtio。

root@kvm-server:/home/admin# virsh edit win7-02
 <interface type='bridge'>
   <mac address='52:54:00:3c:37:19'/>
   <source bridge='virbr0'/>
   <model type='virtio'/>
   <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
 </interface>

第2步,关闭电源重新开启虚拟机,系统会找到未安装驱动的以太网控制器,如图所示。



第3步,安装以太网控制驱动,如图所示。



第4步,以太网驱动使用的是Red Hat VirtIO Ethernet Adapter驱动,如图所示。



第19步,在设备管理中可以看到新安装网络适配器,查看新的以太网控制器属性。

4、 调整Windows虚拟机存储控制器

对于Windows虚拟机来说,在初始安装时如果没有指定存储控制器参数默认会使用IDE设备,IDE设备属于比较旧的设备,其传输效率相对较低,推荐在安装Windows 7以后的操作系统使用virtio设备。

第1步,使用命令“virt-install”新部署虚拟机win2012-viroio,注意bus参数使用virtio。

root@kvm-server:/vm-iso# virt-install  --name win2012-virtio --vcpus 2 --ram 4096 --boot cdrom --cdrom=/vm-iso/cn_windows_server_2012_r2.iso --disk path=/vm-win/win2012-virtio.qcow2,size=20,format=qcow2,bus=virtio  --network bridge=virbr0 --os-type=windows  --vnc --vncport=5906 --vnclisten=0.0.0.0 --noautoconsole --force   
Starting install...
Allocating 'win2012-virtio.qcow2'                        |  20 GB  00:00:00   
Domain installation still in progress. You can reconnect to 
the console to complete the installation process.
root@kvm-server:/vm-iso#

第2步,使用vnc viewer工具连接到虚拟机win2012-virtio,安装操作系统,使用virtio存储控制器Windows 2012 R2系统不能直接识别硬盘信息,单击“加载驱动程序”按钮。通过浏览的方式添加驱动,单击“浏览”按钮。

第3步,已经将virtio驱动集成进操作系统安装镜像,直接选择使用,如图所示。



第4步,成功加载virtio驱动,如图所示,单击“下一步”按钮。



第5步,加载virtio驱动后操作系统识别到硬盘,如图所示,单击“下一步”按钮进行安装。



第6步,开始安装Windows 2012 R2操作系统,安装完成后查看设备管理存储控制器类型,类型为Red Hat VirtIO SCSI Disk Device。

至此,Windows虚拟机使用Red Hat VirtIO SCSI Disk Device驱动完成,其传输速度相对IDE类型得到提升。对于已安装操作系统的Windows操作系统如果已经使用IDE类型的驱动,不太建议进行替换,在生产环境测试通过替换的方式可能造成Windows操作系统不稳定或者是运行过程中出现蓝屏情况。

[1] https://opsxdev.com

[2] https://opsxdev.com/opsxdevcom/kvm_pci_01.png

[3] https://opsxdev.com/opsxdevcom/kvm_pci_02.png

[4] https://opsxdev.com/opsxdevcom/kvm_pci_03.png

[5] https://opsxdev.com/opsxdevcom/kvm_pci_04.png

[6] https://opsxdev.com/opsxdevcom/virtio_01.png

[7] https://opsxdev.com/opsxdevcom/virtio_02.png

[8] https://opsxdev.com/opsxdevcom/virtio_03.png

[9] https://opsxdev.com/opsxdevcom/disk_virtio_01.png

[10] https://opsxdev.com/opsxdevcom/disk_virtio_02.png

[11] https://opsxdev.com/opsxdevcom/disk_virtio_03.png

推荐阅读