ESXi 6.5 虚拟机直通K80显卡并安装NVIDIA显卡驱动: |
您所在的位置:网站首页 › WIN10虚拟机怎么安装显卡 › ESXi 6.5 虚拟机直通K80显卡并安装NVIDIA显卡驱动: |
本地环境:
Dell PowerEdge R720 2680v2 *2 ddr3 1333MHz 32G ESXi 6.5 U2 Dell定制版 CentOS 7虚拟机 WIn10 虚拟机 K80显卡 同时还插着AMD显卡 安装驱动前的必备操作:参考博客: https://blog.51cto.com/5001660/2483307 按照这个设置, 能完成一大半的操作 但是还有些必备操作, 否则虚拟机开机会出问题 以下全部是我遇到的问题 虚拟机加载到42%, 然后报打开模块DevicePowerOn电源失败, 导致虚拟机无法开机 解决方法是参考这个: VMware 官方kb: https://kb.vmware.com/s/article/2142307 其他博客中也有提到这个方法: https://blog.csdn.net/u012149181/article/details/112345831 这里直接在虚拟机的高级编辑参数里添加, 无需使用ssh连接 进虚拟机安装驱动卡住, 或无法成功安装驱动 具体的表现为, win10中安装驱动读条的时候卡住不动, 设备管理器显示没有为该设备安装的驱动, 之后无法关机, 强制关机后无法开机 Linux系统(ubuntu / CentOS)能安装完成驱动, 但是nvidia-smi无法找到设备, 也就是驱动安装未成功 问题原因: 虚拟机系统的引导方式必须是UEFI 由于ESXi系统默认的虚拟机引导方式是BIOS, 在没有修改系统引导方式的前提下安装系统就是BIOS引导方式 这个是导致后续新虚拟机无法安装驱动的原因 之后创建的3个虚拟机(win10 , Ubuntu, CentOS) 均无法安装驱动(驱动安装失败)就是这个原因导致的 解决方案 将虚拟机系统的引导方式修改成UEFI, 非重装系统的方法比较复杂, 这里具体操作不细谈了, 我直接重装了win10和CentOS虚拟机 之后就能正常安装驱动了 成功安装驱动后的虚拟机在直通显卡后无法开机 我也不知道之前系统设置有问题的情况下是怎么成功安装驱动的 具体表现为, 直通显卡后打开虚拟机电源, 连vmware开机画面都不会出现, 虚拟控制台一直在转圈圈 解决方案 需要进入主板BIOS打开SR-IOV以及其他相关的虚拟化选项 详细可参考这里: https://communities.vmware.com/t5/ESXi-Discussions/NVIDIA-Tesla-K80-Pass-Through/m-p/2731719 由于本人使用的是Dell R720服务器, BIOS中并没有找到ASPM选项, 所以仅仅打开了SR-IOV 打开之后重启系统, 之后已经成功安装驱动的虚拟机就能成功开机了 CentOS安装最后一步报错, 提示: Error:Unable to load the 'nvidia-drm' kernel module .这个是由于系统采用UEFI引导后, 却打开了Security BOOT选项 这个选项在Win10中是没问题的, 我在打开Security BOOT之后仍能正常安装驱动, 但在CentOS中国遇到了问题 解决方案 需要在虚拟机引导方式中将安全引导关闭, 直接进入虚拟机BIOS中是没有这个设置选项的 Unable to determine the device handle for GPU 0000:0B:00.0: Unknown Error CentOS中安装驱动完成, 使用nvidia-smi出现这个 解决方案: 虚拟机参数中添加老生常谈的hypervisor.cpuid.v0="FALSE" 不需要进SSH修改vmx文件, 直接在虚拟机高级参数中添加一个这个就行: 然后注意, 要重启物理机, 单单重启虚拟机无法解决问题 重启之后, nvidia-smi就能正常显示了 win10安装驱动:这个相比于上头的疑难杂症, 就简单的很了 直接到官网下载相应的驱动, 安装就对了, 都是图形化界面, 简单易懂 官网驱动下载地址: https://www.nvidia.cn/Download/index.aspx?lang=cn CentOS安装驱动:先准备一个官网下载的驱动: https://www.nvidia.cn/Download/index.aspx?lang=cn 这玩意的具体操作网上很多, 但有些不完整, 我多方整合汇总了一下 参考博客: https://blog.csdn.net/tony_vip/article/details/104531383 系统切换到命令行模式:查看当前模式: systemctl get-default如果是graphical.targe, 则是图形界面模式 设置为命令行模式: systemctl set-default multi-user.target设置为图形界面模式: systemctl set-default graphical.target设置模式之后需要重启 安装基础依赖环境 yum -y install gcc kernel-devel kernel-headers 查看内核和源码版本是否一致:查看内核版本: [root@localhost 10:37:03 src]# ls /boot | grep vmlinu #内核版本 vmlinuz-0-rescue-628d97dc7b994787ae886db591ab8146 vmlinuz-3.10.0-957.el7.x86_64查看源码包版本 [root@localhost 10:37:41 src]# rpm -aq |grep kernel-devel kernel-devel-3.10.0-1062.12.1.el7.x86_64这里我遇到的问题是: /usr/src/kernels目录为空 参考博客: https://blog.csdn.net/qq_43479432/article/details/104742566 Linux系统中默认不安装内核源码, 需要的话得手动安装: 运行下头的命令即可: yum install kernel-devel-内核版本 -y有几个内核src可选: 安装完成之后在/usr/src/kernels下既有内核src文件了: 这里与ubuntu有些许类似: 查看nouveau是否运行: lsmod | grep nouveau可以看到nouveau正在运行 安装显卡驱动的时候就需要禁用 在/etc/modprobe.d/blacklist.conf 添加:blacklist nouveau 这一步和ubuntu相似 vim /usr/lib/modprobe.d/dist-blacklist.conf # 或 vim /lib/modprobe.d/dist-blacklist.conf在最后加上: blacklist nouveau options nouveau modeset=0备份原来的 initramfs nouveau image镜像 mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r)-nouveau.img创建新的 initramfs image镜像 dracut /boot/initramfs-$(uname -r).img $(uname -r)此操作会进行压缩, 响应较久 完成之后重启机器, 再次检测nouveau驱动 lsmod | grep nouveau可以看到此时nouveau已经被禁用: 进入到驱动所在目录, 执行安装命令; # cd /to/your/directory/ ; 跳转到驱动所在的目录 # ./驱动文件名称 --kernel-source-path=你的内核源代码路径 -k $(uname -r)例: # ./NVIDIA-Linux-x86_64-384.81.run --kernel-source-path=/usr/src/kernels/3.10.0-693.5.2.el7.x86_64 -k $(uname -r)注意, 这里后头带的一大串参数必须要, 其必须制定内核源代码路径, 不然驱动无法正常安装 许可证 -accept 直接上: nvidia-smi正常情况下会出现显卡信息: $ nvidia-smi Tue Apr 27 19:27:37 2021 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 460.32.03 Driver Version: 460.32.03 CUDA Version: 11.2 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |===============================+======================+======================| | 0 Tesla K80 Off | 00000000:04:00.0 Off | 0 | | N/A 49C P0 74W / 149W | 0MiB / 11441MiB | 0% Default | | | | N/A | +-------------------------------+----------------------+----------------------+ | 1 Tesla K80 Off | 00000000:1B:00.0 Off | 0 | | N/A 66C P0 61W / 149W | 0MiB / 11441MiB | 98% Default | | | | N/A | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=============================================================================| | No running processes found | +-----------------------------------------------------------------------------+如果没有成功显示, 则可以往上头看看是否和我遇到了相同的报错 其他的报错百度解决方案也挺多, 我就爱莫能助了 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |