前期准备:
NVIDIA-Linux-x86_64-440.53-vgpu-kvm-3.10.0-1062.12.1.el7.x86_64.run(需要向厂家索取下载地址) 内核升级安装包: kernel-3.10.0-1062.12.1.el7.x86_64.rpm kernel-headers-3.10.0-1062.12.1.el7.x86_64.rpm kernel-devel-3.10.0-1062.12.1.el7.x86_64.rpm (内核rpm包可在https://buildlogs.centos.org/c7.1908.u.x86_64/kernel/20200205213736/3.10.0-1062.12.1.el7.x86_64/进行下载) |
一、升级内核:
由于笔者使用centos7.7的内核版本较低,需要升级内核。
cat /etc/redhat-release CentOS Linux release 7.7.1908 (Core) uname -r 3.10.0-1062.4.1.el7.x86_64 |
升级内核:
yum localinstall kernel-devel-3.10.0-1062.12.1.el7.x86_64.rpm yum localinstall kernel-headers-3.10.0-1062.12.1.el7.x86_64.rpm yum localinstall kernel-3.10.0-1062.12.1.el7.x86_64.rpm |
设置新内核启动并重启系统
grub2-set-default 0 reboot |
二、安装vGPU驱动
卸载nouveau模块,并禁用此模块
modprobe -r nouveau cat > /etc/modprobe.d/nvidia-installer-disable-nouveau.conf <<EOF blacklist nouveau options nouveau modeset=0 EOF |
编辑/etc/default/grub文件,在GRUB_CMDLINE_LINUX行添加'intel_iommu=on'
以下红色部分为添加部分。
cat /etc/default/grub GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="crashkernel=auto spectre_v2=retpoline rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet intel_iommu=on" GRUB_DISABLE_RECOVERY="true" |
重新生成grub文件,并重启系统。
grub2-mkconfig -o /boot/grub2/grub.cfg dracut --regenerate-all --force reboot |
安装驱动:
bash ./NVIDIA-Linux-x86_64-440.53-vgpu-kvm-3.10.0-1062.12.1.el7.x86_64.run --silent |
运行nvidia管理工具
nvidia-vgpud nvidia-vgpu-mgr |
查看GPU信息,发现红色边框里面T4卡显示off
重启系统后,变成on可用。
三 openstack调度vGPU卡
参考文档
https://docs.openstack.org/nova/queens/admin/virtual-gpu.html#how-to-discover-a-gpu-type
在nova-compute配置文件nova.conf添加配置:
[devices] enabled_vgpu_types = nvidia-232 |
添加flavor类型
openstack flavor set m1.nano.v16.16g.100g.vgpu --property "resources:VGPU=1" |
创建虚拟机:
openstack server create vm0827vGPU --volume diskGPUtest1 --network netXR --flavor m1.nano.v32.32g.100g.vgpu --availability-zone nova:hz-compute3 |
驱动后查看vGPU分配情况: