Назад | Перейти на главную страницу

Устранение неполадок с зависанием оборудования ESXi с помощью сквозной передачи PCI

У меня есть плата Supermicro X9SCM с картой Atheros AR5008 PCI Express (D-LINK DWA-556, Device = 0024 & Vendor = 168C). Карту можно успешно пометить для сквозной передачи PCI в ESXi (я пробовал версии 4.1 и 5.0), хотя каждый раз, когда я запускаю виртуальную машину с подключенной картой Wi-Fi, весь хост зависает и требует жесткого сброса.

Есть большая вероятность, что эта карта просто несовместима по какой-то причине - хотя, похоже, по крайней мере один отчет Я мог обнаружить, что это «работает», или, по крайней мере, гость может загрузиться. Я действительно хотел бы понять, почему это не удается. Я попытался покопаться в некоторых файлах журналов и других ресурсах, чтобы узнать, могу ли я почерпнуть какие-либо знания о том, как лучше всего решить эту проблему, хотя я далек от эксперта с инструментами VMWare.

Вот что я до сих пор рассматривал:

Опять же, мой настоящий вопрос: как мне сделать понимание почему это устройство вызывает зависание гипервизора, когда оно назначено гостю?

Поймите, что этот вопрос может быть устаревшим, но все же стал одним из лучших результатов Google, когда я столкнулся с этой проблемой. Нашел здесь решение, поэтому решил, что поделюсь.

Мой env:

  • VMware ESXi 6.5
  • SuperMicro SYS-E300-8D
  • OPNsense (на базе FreeBSD) гость
  • Qualcomm Atheros AR9462

Предположения:

  • Вы физически установили карту.
  • Вы включили его для сквозной передачи в ESXi и перезагрузили
  • Вы добавили это PCI-устройство к виртуальной машине

Ответ:

Установите правильные параметры сквозной передачи в файле /etc/vmware/passthru.map, добавив такую ​​запись.

# passthrough attributes for devices
# file format: vendor-id device-id resetMethod fptShareable
# vendor/device id: xxxx (in hex) (ffff can be used for wildchar match)
# reset methods: flr, d3d0, link, bridge, default
# fptShareable: true/default, false

# Atheros Wireless
168c  0034  d3d0     false

Затем перезагрузите хост.

Примечание 1: первое и второе поля здесь относятся к поставщику и устройству, но я получил значения (уже в шестнадцатеричном формате) из веб-интерфейса ESXi в разделе Хост> Управление> Оборудование> Устройства PCI.

Примечание 2: в passthru.map уже есть другие полезные вещи, поэтому не просто перезаписывайте, а добавляйте.

Я также установил

pciPassthru0.msiEnabled=false

в файле .vmx для гостя, но до исправления passthru.map, поэтому я не уверен, что это необходимо.

Я не закончил настройку карты и не сделал ее полезной, но мой хост теперь продолжает работать, когда виртуальная машина запускается и гость обнаруживает ее.

Мне любопытно, каков ваш план. Вы пытаетесь выполнить сквозную передачу ESXi PCI беспроводной сетевой карты на гостевую виртуальную машину? Что такое гостевая ОС? Какова цель этой установки?

Не все устройства PCIe совместимы с VMDirectPath. Это может быть просто один из них.

Скорее всего, блокируется не гипервизор, а какое-то оборудование (например, коммутатор PCIe). Вам будет сложно отладить это без каких-либо Оборудование для отладки PCIe и целая куча специфических для PCIe знаний, так что, вероятно, им не стоит заниматься. В общем, сквозная передача PCI - это не то, что вам следует использовать без особого внимания.

Если вам нужен интерфейс с беспроводным подключением на виртуальной машине, рассмотрите возможность использования внешнего устройства (маршрутизатора / моста), соединяющего беспроводную сеть с проводной, и используя виртуальный интерфейс внутри вашей виртуальной машины, подключающейся к этой сети. Другой вариант - использовать USB-интерфейс вместе с Сетевой перенаправитель USB.