A l’occasion de la mise en oeuvre d’un nouveau cluster VXRail contenant des cartes accélératrices vGPU, nous avons été confronté à la fameuse limite de place sur le bootbank d’ESXi pré-7.0. Voici les optimisations proposées par Dell EMC qui nous ont permis de rajouter tous les VIB dont nous avions besoin.
Je ne vais pas vous faire un cours sur la gestion des drivers ESXi, d’autant que je suis loin d’être expert dans ce domaine, mais vous savez sans doute que ESXi 6.x charge ses drivers au démarrage depuis un espace disque contraint, le fameux “bootbank”, limité à 250 Mo. Autant dire que quand vous avez de nombreux drivers hardware, les vib de base, VSAN, NSX-T/V et que vous devez en rajouter pour d’autres fonctions (comme, au hasard, l’accélération vGPU nVidia), la place vient vite à manquer.
C’est donc exactement ce qui nous est arrivé récemment sur un tout nouvel environnement VXRail, fraîchement installé. Nous avions besoin d’ajouter un vib spécifique nVidia pour disposer de l’accélération vGPU sur ce cluster (les noeuds étant équipés de cartes Tesla V100). En plus des drivers intégrés fournis dans les images VXRail, nous avions déjà rajouté la couche NSX-T. Tout cela ne pouvait pas rentrer dans les anémiques 250 Mo disponibles.
Nous avons donc contacté Dell EMC pour avoir des pistes d’économie en matière de driver VXRail, sans casser ni le fonctionnement ni la gestion automatisée du cycle de vie intégré à la solution. La réponse du support a été rapide et efficace. On nous a très vite fourni la liste des drivers inutiles sur VXrail mais pré-installé (à partir de l’image standard VMware sans doute). Voici la listes des vib que vous pouvez envisager de supprimer sans risque :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
bnxtnet - Broadcom NetXtreme-E VMKAPI network driver, removable if no Broadcom NICs bnxtroce - Broadcom NetXtreme-E ROCE Driver, removable if no Broadcom NICs lpfc - Emulex FC Driver, removable if no Emulex LPe31002 FC HBA i40en - Network driver for Intel(R) X710/XL710/XXV710/X722 Adapters, removable if no Intel X710 NICs igbn - Network driver for Intel(R) 1 Gigabit Server NIC, removable if no Intel I350 NICs ixgben - Network driver for Intel(R) 10 Gigabit NIC, removable if no Intel X520/X540/X550 NICs nmlx5-core - Mellanox Technologies ConnectX4 Native Core Driver, removable if no Mellanox NICs nmlx5-rdma - Mellanox Technologies ConnectX-4 Native RDMA Driver, removable if no Mellanox NICs qedentv - QLogic QL45xxx network driver, removal able if no QLogic NICs qedi - QLogic FastLinQ QL45xxx/QL41xxxx Series 10/25/40/50/100 GbE Controller (iSCSI), removable if no QLogic NICs qedrntv - QLogic QL45xxx RoCE driver, removable if no QLogic NICs qlnativefc - Qlogic Native FC driver, removable if no QLogic QLE2692 FC HBA scsi-aacraid - aacraid: scsi driver for VMware ESX scsi-adp94xx - adp94xx: scsi driver for VMware ESX scsi-aic79xx - aic79xx: scsi driver for VMware ESX scsi-fnic - fnic: scsi driver for VMware ESX scsi-hpsa - hpsa: scsi driver for VMware ESX scsi-ips - ips: scsi driver for VMware ESX nfnic - Cisco UCS VIC Native fNIC driver |
Pour le SCSI, sauf exception exceptionnelle, vous pouvez sans problème supprimer tous ces vib (VSAN ne les utilise pas). Pour les cartes réseau, faites d’abord un tour via la commande esxfg suivante pour voir quel driver vous utilisez effectivement :
1 2 3 4 5 6 7 8 |
[root@mongroserveur-esx16:~] esxcfg-nics -l Name PCI Driver Link Speed Duplex MAC Address MTU Description vmnic0 0000:1a:00.0 ixgben Up 10000Mbps Full 24:6e:96:9b:6f:00 1500 Intel(R) Ethernet Controller X550 vmnic1 0000:1a:00.1 ixgben Up 10000Mbps Full 24:6e:96:9b:6f:01 1500 Intel(R) Ethernet Controller X550 vmnic2 0000:1b:00.0 ixgben Up 10000Mbps Full 24:6e:96:9b:6f:02 9000 Intel(R) Ethernet Controller X550 vmnic3 0000:1b:00.1 ixgben Up 10000Mbps Full 24:6e:96:9b:6f:03 9000 Intel(R) Ethernet Controller X550 vusb0 Pseudo cdce Up 100Mbps Full 58:8a:5a:ed:b9:71 1500 DellTM iDRAC Virtual NIC USB Device [root@mongroserveur-esx16:~] |
Ensuite, supprimez sans état d’âme tout le reste. Ici nous utilisons de l’Intel piloté via le driver ixgben. Cela nous a permis de retrouver la place nécessaire pour installer NSX-T et le VIB NVidia. Vivement ESXi 7.0 et l’extension de cet espace qui devient de plus en plus critique ;)
Pour rappel, voici les deux commandes pour retrouver la liste des drivers installé sur vos ESXi et les supprimer (n’oubliez pas de rebooter ensuite ^^)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
[root@mongroserveur-esx16:~] esxcli software vib list Name Version Vendor Acceptance Level Install Date ----------------------------- ------------------------------------ ------ ---------------- ------------ bnxtnet 216.0.42.4-1OEM.670.0.0.8169922 BCM VMwareCertified 2020-06-25 bnxtroce 216.0.52.2-1OEM.670.0.0.8169922 BCM VMwareCertified 2020-06-25 dellptagent 1.9.6-37 DEL VMwareAccepted 2020-06-25 dcism 3.5.1.ESXi6-1949 Dell VMwareAccepted 2020-06-25 i40en 1.9.5-1OEM.670.0.0.8169922 INT VMwareCertified 2020-06-25 igbn 1.4.10-1OEM.670.0.0.8169922 INT VMwareCertified 2020-06-25 ixgben 1.7.20-1OEM.670.0.0.8169922 INT VMwareCertified 2020-06-25 (...) vsan 6.7.0-3.104.15985001 VMware VMwareCertified 2020-06-25 vsanhealth 6.7.0-3.104.15984994 VMware VMwareCertified 2020-06-25 vsipfwlib 2.5.1.0.0-6.7.15314343 VMware VMwareCertified 2020-02-12 tools-light 11.0.5.15389592-15999342 VMware VMwareCertified 2020-06-25 platform-service 4.7.510-16222977 VxRail VMwareCertified 2020-06-25 [root@mongroserveur-esx16:~] esxcli software vib remove -n lpfc Removal Result Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective. Reboot Required: true VIBs Installed: VIBs Removed: VMW_bootbank_lpfc_11.4.33.26-14vmw.670.3.104.16075168 VIBs Skipped: [root@mongroserveur-esx16:~] |
Enfin, je ne peux que trop vous conseiller de lire ce billet VMware qui rentre en détail sur le partitionnement comparé de ESXi 6.x et ESXi 7.0.