直通配置要核对什么
虚拟化直通在交付前需要逐项核对:BIOS 中 VT-d 或 IOMMU 已启用、设备所在的 IOMMU 分组满足直通要求、直通设备的驱动与固件版本在平台兼容清单内。配置不当的典型表现是虚机启动失败或运行中不稳定,而现象往往先出现在业务侧,排查成本很高,所以交付前核对比事后救火划算得多。
基本信息
| 前提条件 | BIOS 中已启用 VT-d 或 IOMMU |
|---|---|
| 分组要求 | 设备所在 IOMMU 分组满足单独直通的条件 |
| 驱动要求 | 直通设备的驱动与固件版本在平台兼容清单内 |
| 验证方式 | 虚机启动 + 压力测试,确认稳定 |
| 风险等级 | 高风险配置,先在测试机验证再复制到生产 |
典型使用场景
- GPU 直通:AI 推理与图形工作负载需要接近物理机性能
- 网卡直通与 SR-IOV:低延迟网络场景下的性能保障
- 存储控制器直通:软栈需要直接管理物理盘
- 授权绑定物理设备:部分软件按硬件特征授权,必须直通
- 合规或安全隔离:要求虚机独占某类设备
系统侧核对(Linux KVM 示例)
系统侧核对(Linux KVM 示例)
dmesg | grep -iE "DMAR|IOMMU" | head # 确认 IOMMU 已启用并识别分组
dmesg | grep -i DMAR | grep -i group | head # 查看设备分组情况
lspci -nn | grep -iE "raid|ethernet|vga" | head # 列出候选直通设备及其 ID
ls /sys/kernel/iommu_groups/ 2>/dev/null | head # 分组目录一览
# 随后在虚拟化平台中创建测试虚机、挂载设备并做压力验证核对项与异常表现
| 核对项 | 查看方式 | 异常表现 |
|---|---|---|
| IOMMU 启用 | BIOS 设置与 dmesg 输出 | 设备无法识别或无法直通 |
| IOMMU 分组 | 平台文档与系统工具 | 设备与同组其他设备无法分割 |
| 驱动匹配 | 平台兼容清单 | 虚机启动失败或运行不稳定 |
| 固件版本 | 厂商资料与设备信息 | 直通后功能不可用 |
| 宿主配置 | 虚拟化平台管理界面 | 宿主与虚机争用同一设备 |
直通属于高风险配置:先在测试机完成分组与驱动验证,再把参数复制到生产环境,比在生产上边试边改安全得多。
直通设备不要在宿主与虚机之间混用:同一设备被两侧同时驱动,会表现为随机断链或虚机异常重启。