1 votes

Dépannage du gel du matériel ESXi avec PCI Passthrough

J'ai une carte Supermicro X9SCM avec une carte PCI Express Atheros AR5008 (D-LINK DWA-556, Device=0024&Vendor=168C). La carte peut être marquée avec succès pour le PCI passthrough dans ESXi (j'ai essayé les versions 4.1 et 5.0) mais à chaque fois que je démarre une VM avec la carte Wifi associée - l'hôte entier se fige et nécessite un hard reset.

Il y a de fortes chances que cette carte ne soit pas compatible pour une raison ou une autre - bien qu'il semble qu'il y ait au moins un problème de compatibilité. un rapport J'ai pu constater que cela "fonctionnait", ou au moins que l'invité pouvait démarrer. Mais j'aimerais vraiment comprendre pourquoi il échoue. J'ai essayé de creuser dans certains fichiers journaux et d'autres ressources pour voir si je peux glaner des connaissances sur la meilleure façon de résoudre ce problème, bien que je sois loin d'être un expert des outils VMWare.

Voici ce que j'ai examiné jusqu'à présent :

  • BIOS, j'ai essayé la dernière version (1.1a) et une version plus ancienne (1.0c).
  • Le BIOS a un journal qui rapporte "PCI ERR" ou "PCI ERR - Asserted" chaque fois que cet événement de gel se produit.
  • J'ai récupéré les différents journaux de /var/log sur l'hôte ESXi, bien que je n'aie pas encore été en mesure de voir quelque chose de trop utile. Peut-être que je ne sais pas où chercher.
  • J'ai essayé d'ajouter la carte PCI au fichier passthru.map pour voir si je pouvais peut-être indiquer à ESXi comment il devrait se comporter, sans succès. (Note : Je n'ai pas encore essayé toutes les combinaisons de méthode de réinitialisation / fpt shareable)
  • J'ai lu qu'il pouvait y avoir une différence avec les cartes PCI Express "actives". Je pense que cela fait référence à Gestion de l'alimentation à l'état actif mais je ne suis pas sûr de savoir comment vérifier cela.
  • J'ai contacté le support Supermicro pour voir s'il y a un problème connu avec le BIOS / matériel mais je n'ai pas eu de réponse. J'ai également essayé d'accéder aux communautés VMWare et de poster sur leurs forums, mais je n'ai pas pu activer mon compte pour une raison étrange.

Encore une fois, ma vraie question est : comment faire pour comprendre pourquoi ce périphérique provoque le blocage de l'hyperviseur lorsqu'il est assigné à un invité ?

2voto

Sean Morgan Points 21

Je me rends compte que cette question date peut-être d'un certain temps, mais elle est toujours apparue en tête des résultats de Google lorsque j'ai rencontré ce problème. J'ai trouvé une solution ici et j'ai pensé que je devais la partager.

Mon env :

  • VMware ESXi 6.5
  • SuperMicro SYS-E300-8D
  • Invité OPNsense (basé sur FreeBSD)
  • Qualcomm Atheros AR9462

Hypothèses :

  • Vous avez installé physiquement la carte.
  • Vous l'avez activé pour le passage dans ESXi et redémarré.
  • Vous avez ajouté ce périphérique PCI à une VM.

Réponse :

Définissez les paramètres de passthrough corrects dans le fichier /etc/vmware/passthru.map en ajoutant une entrée comme celle-ci.

# 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

Puis redémarrez l'hôte.

Note 1 : Le premier et le deuxième champs sont spécifiques au fournisseur et au dispositif mais j'ai obtenu les valeurs (déjà en hex) à partir de l'interface web ESXi sous Host>Manage>Hardware>PCI Devices.

Note 2 : Il y a déjà d'autres choses utiles dans le passthru.map, donc ne vous contentez pas d'écraser, ajoutez.

J'ai aussi mis

pciPassthru0.msiEnabled=false

dans le fichier .vmx pour l'invité mais avant d'avoir corrigé le passthru.map donc je ne suis pas sûr que ce soit nécessaire.

Je n'ai pas fini de configurer la carte ou de la rendre utile mais mon hôte reste maintenant en marche lorsque la VM démarre et que l'invité la détecte.

1voto

ewwhite Points 193555

Je suis curieux de savoir quel est votre plan ici. Vous essayez d'exécuter ESXi PCI passthrough d'une NIC sans fil à une machine virtuelle invitée ? Quel est le système d'exploitation invité ? Quel est l'objectif de cette configuration ?

Tous les périphériques PCIe ne sont pas compatibles avec VMDirectPath. Il se peut que ce soit simplement l'un d'entre eux.

1voto

the-wabbit Points 40039

Il est probable que ce ne soit pas l'hyperviseur qui se bloque, mais une sorte de matériel (comme le commutateur PCIe). Vous aurez du mal à déboguer ce problème sans aucune sorte d'information. Matériel de débogage PCIe et tout un tas de connaissances spécifiques à PCIe, donc cela ne vaut probablement pas la peine de poursuivre. En général, le PCI passthrough n'est pas ce que vous devriez utiliser sans beaucoup de considération.

Si vous avez besoin d'une interface connectée sans fil sur la machine virtuelle, envisagez d'utiliser un périphérique externe (routeur/pont) qui relie le réseau sans fil à un réseau câblé et d'utiliser une interface virtuelle à partir de votre machine virtuelle qui se connecte à ce réseau. Une autre option serait d'utiliser une interface branchée sur USB ainsi qu'une interface Redirecteur de réseau USB .

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X