当前位置:首页 > 虚拟化 > 正文

kvm显卡虚拟化(kvm完全虚拟化)


一、KVM虚拟化win10显卡直通一例联想SR6502x5218,64G,3x1.2TSAHDD,显卡RTX2080
由于系统要求必须是windows,windows系统没有显卡驱动,win10也没有兼容的硬件驱动。尝试安装windows10并使用windowsserver2019驱动。系统安装完成后,问题是系统控制器导致蓝屏、重启、无法正常使用
只能使用数百+kvm。将win10从虚拟机部署到虚拟机。
拉丁文安装,virt-manager会显示中文图形界面,并带有插值
centos版本:CentOS-7.8-x86_64-DVD-2003
使用自动分区,但需要手动分区更加合适。
2.1设置名称为br0的网络连接到eno1并更改为br0
yum-yinstallbridge-utilities
配置网络参数br0并与您的进行比较自己的网络,你的ip
模式网络参数eno1
重启网络
systemctlrestartnetwork
2.2安装kvm
安装kvm版本,需要升级kvm才能以UEFI模式运行windows
2.3更新qemu-kvm
查看更新的更新。kvm版本
2.4安装OVMF
OVMF“旨在支持UEFI的虚拟机”。
2.5安装win10
使用图形界面安装,xshell工具xmanager
virt-manager
2.5.1选择模式,不配置显卡尚未透传
2.5.2如果硬件或光驱报错不支持IDE模式,请更换为SATA模式
2.5。连接配置,选择vncserver,否则看不到灵泉虚拟机画面。客户端vnc配置为raw模式,否则比较卡
2.6显卡透传2.6.1Iommu
IOMMU(i/o内存管理单元)。iommu主要有两大功能:将设备地址映射到body的dma地址(dmar),以及中断重映射(intremap)(可选)
确认内核是否支持iommu
cat/proc/cmdline|grepiommu有正常输出
如果没有输出,添加intel_iommu=startup蠕虫文件
蠕虫文件:
vim/etc/default/bitinggrub
重新生成内核
grub2-mkconfig-o/boot/efi/EFI/centos/
为什么不重启内核iommu
正常输出
检查VT是否-Dcan
dmesg|grep-eDMAR-eIOMMU
2.6.2禁用服务器上的RTX2080显卡驱动
<禁用服务器上的显卡设备
vi/etc/modprobe.d/
添加
vim/usr/lib/modprobe.d/
添加行optionsnouveaumodeset=0
initramfsnouveauimageinitramfsnouveauimage
mv/boot/initramfs-$(uname-r).img/boot/initramfs-$(uname-r)
新imageinitramfsimage
dracut/boot/initramfs-$(uname-r).img$(uname-r)
2.6.3加载显卡vfio驱动
加载vfio模块
从服务器卸载4个显卡设备
验证显卡设备加载vfio-pci驱动,加载成功
2.6.4添加NVDIA显卡赢得虚拟机
可以同时添加通过服务器的USB设备
ps:需要额外配置,添加链接
接下来关闭并重启
安装显卡驱动需要更改虚拟机win10的配置文件
否则会在自动检查时报错ERRORCODE43显卡驱动的安装过程,不允许安装驱动。虚拟机的。
重启安装驱动
AID64测试


二、虚拟化技术KVM和XEN的区别虚拟化类型
全虚拟化(FullVirtualization)
全虚拟化也成为最初的虚拟化技术。该模型使用虚拟机来协调来宾操作系统和原始硬件。VMM为了协调来宾操作系统和裸硬件,虚拟机管理程序必须捕获并处理一些受保护的指令。
图1全虚拟化模型
全虚拟化运行速度比硬件模拟快,但性能不如裸机,因为hypervisor需要占用一些资源
半虚拟化(ParaVirtualization)
半虚拟化是另一种类似于全虚拟化的技术。它使用虚拟机管理程序共享对底层硬件的访问,但其客户操作系统集成了Received虚拟化代码。这种方法不需要重新编译或陷阱,因为操作系统本身可以很好地与虚拟进程配合使用。
图2半虚拟化模型
半虚拟化需要客户操作系统进行一些修改,使客户操作系统意识到自己处于虚拟化环境中,但是半虚拟化提供了性能与原始操作系统类似。
虚拟化技术
KVM(Kernel-basedVirtualMachine)基于内核的虚拟机
KVM是集成到Linux内核中的Hypervisor,是X86架构针对Linux的完整虚拟化解决方案,其硬件支持虚拟化技术(IntelVT或AMD-V)。它是Linux的一个小模块,利用Linux来做很多事情,比如任务调度、内存管理、硬件设备交互等。
图3KVM虚拟化平台架构
Xen
Xen是第一种运行在裸机上的虚拟化管理程序(Hypervisor)。它支持全虚拟化和半虚拟化,Xen支持虚拟机管理程序和虚拟机相互通信,并在所有Linux版本上提供免费产品,包括RedHatEnterpriseLinux和SUSELinuxEnterpriseServer。Xen最重要的优势是半虚拟化。另外,未经修改的操作系统也可以直接运行在xen上(例如Windows),使得虚拟机无需仿真即可有效运行,因此虚拟机无需仿真虚拟硬件即可连接到hypervisor,从而实现高性能。
图4Xen虚拟化平台架构
QEMU
QEMU是一套由FabriceBellard编写的模拟处理器的免费软件。它与Bochs和PearPC类似,但它具有后两者所不具备的一些特性,例如高速和跨平台特性。通过开源加速器kqemu,QEMU可以模拟接近真实计算机的速度。
KVM与QEMU的关系
准确的说,KVM是Linux
内核的一个模块。您可以使用命令modprobe加载KVM模块。加载模块后,您可以通过其他工具进一步创建虚拟机。但光有KVM模块是不够的,因为用户无法直接控制内核模块做事。您还必须有一个在用户空间中运行的工具。对于这个用户空间工具,kvm开发人员选择了已经成熟的开源虚拟化软件QEMU。说起来,QEMU也是一个虚拟化软件。它的特点是可以虚拟不同的CPU。例如,PowerCPU可以在x86CPU上虚拟化,并且可以用来编译可以在Power上运行的程序。KVM使用了QEMU的一部分并稍作修改,成为一个可以控制KVM破坏的用户空间工具。所以你会看到官方的KVM下载有两个部分(qemu和kvm)和三个文件(KVM模块、QEMU工具和两者的集合)。也就是说,您可以只升级KVM模块或只升级QEMU工具。这就是KVM和QEMU的关系。
图5KVM与QEMU关系