Добавляем драйвера в установочный образ VMware ESXi
В этой статье мы разберемся, как добавить (интегрировать) драйвера в установочный ISO образ VMware ESXi. Установочный образ ESXi поддерживает (сертифицирован) большинство популярных моделей серверов. Но при установке на некоторое нестандартное оборудование, или на десктопный компьютер, скорее всего вы столкнетесь с тем, что в установочном ISO образе ESXi отсутствуют драйвера для каких-то устройств (RAID контроллера, сетевой карты, видеоадаптеры и т.д.).
Чаще всего при попытке установить ESXi с оригинального установочного образа на домашний компьютер, вы увидите ошибку:
No Network Adapters. No network adapters were detected. Either no network adapters are physically connected to the system, or a suitable driver could not be located. A third party driver may be required. Ensure that the is at least one network adapter physically connected to the system before attempting installation. If the problem persists, consult the VMware Knowledge Base.
Стандартный ISO образ ESXi не поддерживает большинство дестопных сетевых карт. Чтобы установить ESXi на таком компьютере вам придется интегрировать драйвера вашей сетевой карты в установочный образ.
Рассмотрим, как самостоятельно добавить драйвер в установочный ISO образ VMware ESXi 6.x и 7.0. В этом примере мы покажем, как интегрировать в образ ESXi драйвера для сетевой карты Realtek.
Официально VMware рекомендует использовать для кастомизации образов ESXi собственную утилиту vSphere ESXi Image Builder, но она требует развернутого vCenter Server Appliance (vCSA). Большинство системных администраторов используют неофициальную утилиту ESXi-Customizer.
Где скачать драйвера для VMWare ESXi?
Прежде всего вам нужно скачать драйвера под ESXi для вашего оборудования. Их можно найти:
- на сайте VMWare в разделе VMware Compatibility Guide;
Вы можете скачать комьюнити драйвера для ESXi:
Community Networking Driver for ESXi (https://flings.vmware.com/community-networking-driver-for-esxi) – набор ESXi драйверов от VMware Community, позволяющий использовать большинство современных сетевых адаптеров (отсутствующих в VMware HCL), подключенных через PCIe.
USB Network Native Driver for ESXi (https://flings.vmware.com/usb-network-native-driver-for-esxi) – дайвера для поддержки популярных сетевых карт с интерфейсом USB (ASIX USB 2.0 — ASIX88178a, ASIX USB 3.0 — ASIX88179, Realtek USB 3.0 — RTL8152/RTL8153, and Aquantia AQC111U. - на сайте производителя оборудования;
- на сайте автора утилиты ESXi-Customizer (https://vibsdepot.v-front.de/wiki/index.php/List_of_currently_available_ESXi_packages). Именно здесь я скачал драйвер для сетевой карты Realtek (net55-r8168);
- с помощью google-поиска (что-то вроде “Realtek NIC for ESXi”).
Обратите внимание, что вам нужен драйвер в формате vib, tgz или zip (offline bundle).
Вы так же можете найти драйвера по VID устройства. Загрузите ваш компьютер с Linux LiveCD и выясните VID и PID устройства, например, выполнив команду:
# lspci -nn
С помощью полученных идентификаторов вы сможете поискать в сети vib драйвера.
Интеграция драйверов с помощью PowerShell скрипта ESXi-Customizer-PS
PowerShell скрипт ESXi-Customizer-PS (https://www.v-front.de/p/esxi-customizer-ps.html) можно использовать для интеграции драйверов и обновления установочного образа ESXi версий начиная с 5.0, и заканчивая 6.7 и 7.0. Для использования этого скрипта на вашем компьютер должен быт установлен модуль VMware PowerCLI 5.1 или выше.
Скачайте текущую версию (2.8.2) файла ESXi-Customizer-PS.ps1 с GitHub (https://github.com/VFrontDe/ESXi-Customizer-PS/releases), разблокируйте скачанный из интернета PS1 файл, поставив галку Разблокировать в его свойствах ) и запустите PowerCLI.
Выполните команду для изменения настроек PowerShell Execution Policy:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
Справку по параметрам скрипта можно вывести так:
ESXi-Customizer-PS.ps1 –help
An unexpected error occured: The VMware.ImageBuilder module is not currently supported on the Core edition of PowerShell
Это означает, что вы пытаетесь запустить PS1 скрипт из новой версии PowerShell Core (
pwsh.exe
), который не поддерживается в текущей версии ESXi-Customizer-PS. Используйте консоль Windows PowerShell (
powershell.exe
).
Вывести список доступных образов ESXi:
.ESXi-Customizer-PS.ps1 –sip
Чтобы скачать версию ISO дистрибутива ESXi 6.7 с последними обновлениями с сайта VMware Online Depot, выполните команду:
.ESXi-Customizer-PS.ps1 -v67
Аналогичным образом можно скачать другие версии ESXI (-v70| -v67 | -v65 | -v60 | -v55 | -v51 | -v50).
- Создать установочный образ ISO или Offline Bundle напрямую из хранилища VMware Online depot (режим по-умолчанию);
- Создать установочный образ ISO из скачанного Offline Bundle (параметр -izip);
- Обновить локальный ESXi Offline Bundle из хранилища VMware Online depot (параметры -izip -update).
Чтобы сгенерировать ISO образ ESXi и сразу интегрировать в него все офлайн-бандлы и VIB-пакеты драйверов из папки C:distresxidriver, выполните:
.ESXi-Customizer-PS.ps1 -v67 -pkgDir C:distresxidriver
Через 15-20 минут в указанном каталоге появится установочный ISO образ ESXi.
Если вы хотите получить образ Offline bundle вместо установочного ISO образа, используйте параметр —ozip.
Вы можете модифицировать офлайн бандл (это zip архив с установочными файлами ESXi), добавив в него все VIB драйвера из указанного каталога:.ESXi-Customizer-PS.ps1 -izip .VMware-ESXi-6.7.0-9484548-HPE-Gen9plus-670.10.3.5.6-Sep2018.zip -pkgDir C:distresxidriver
С помощью следующей команды вы можете создать ISO-образ ESXi из офлайн-бандла:
.ESXi-Customizer-PS.ps1 -izip .VMware-ESXi-6.7.0-HPE-Gen9plus.zip
В онлайн хранилище V-Front есть довольно большая библиотека vib драйверов. Вы можете интегрировать в образ ESXi конкретные драйвера из этого хранилища так:
.ESXi-Customizer-PS.ps1 -v67 -vft -load sata-xahci,net55-r8168,net-e1000e,esx-ui
В этом примере мы интегрируем в дистрибутив ESXi следующие драйвера:
- net-e1000e – сетевой драйвер для Intel I21782579LM/82574L;
- net51-r8169 – сетевой драйвер Realtek 8168/8111/8411/8118 (его убрали из ESXi 5.1 и выше);
- esx-ui — ESXi Embedded Host Client — удобный web интерфейс для хоста;
- sata-xahci — driver map для корректного определения некоторых SATA-контроллеров.
Как правило, для большинства компьютеров достаточно интегрировать в образ ESXi следующие драйвера:
-v60 -sip -vft -load net-e1000e,net51-r8169,net55-r8168,esx-ui,sata-xahci,net51-sky2,esxcli-shell
Чтобы обновить Offline bundle последними патчами из репозитария VMware, выполните:
.ESXi-Customizer-PS.ps1 -v67 -izip .VMware-ESXi-6.7.0-HPE-Gen9plus.zip -update
Если при экспорте образа появляется ошибка
An unexpected error occured: Could not find trusted signer
, нужно отключить проверку подписей драйверов с помощью параметра —nsc (-noSignatureCheck). Также попробуйте указать этот параметр, если появляется ошибка:
[WinError 10054] An existing connection was forcibly closed by the remote host.
Интеграция драйвера в ESXi с помощью графической утилиты ESXi-Customizer
ESXi-Customizer – это графическая утилита с простым интерфейсом, которая позволяет автоматизировать процесс интеграции драйверов и vib файлов в ISO образ ESXi.
На данный момент скрипт не обновляется с 2016 года. Разработчик сообщает, что поддерживаются только версии ESXi 4.1, 5.0, 5.1 и 5.5. Однако ниже указано, как можно использовать для более новых версий ESXi (6.5, 6.7 и 7.0).
Скачайте ESXi-Customizer-v2.7.2.exe (https://www.v-front.de/p/esxi-customizer.html), распакуйте архив и запустите утилиту (ESXi-Customizer.cmd). Утилита ESXi-Customizer официально поддерживает современные версии Windows, поэтому при запуске в Windows 10/11 появляется ошибка:
---------------------------
ESXi-Customizer v2.7.2 - Message
---------------------------
FATAL ERROR: Unsupported Windows Version: 10.0. At least Windows XP is required!
Чтобы исправить эту ошибку, достаточно отредактировать файл ESXi-Customizer.cmd и закомментировать строку (добавить в начале REM):
if "!WinVer!" LSS "5.1" call :earlyFatal Unsupported Windows Version: !WinVer!. At least Windows XP is required & exit /b 1
Сохраните файл ESXi-Customizer.cmd и запустите его. В открывшемся окне нужно указать путь к оригинальному ISO образу ESXi, файл с драйвером (формата VIB или архив с драйверами TGZ) и каталог, в который нужно сохранить полученный образ с интегрированным драйвером. Галку с проверкой обновлений лучше снять.
Нажмите кнопку Run и через несколько минут в целевом каталоге появится новый ISO образ ESXi, который можно установить на ваше железо.
Если вы пытаетесь интегрировать драйвера в ISO образ с ESXi 6.7 или 7.0, появится ошибка:
FATAL ERROR:
Error un-taring IMGDB.tar!
Чтобы исправить ошибку, нужно вручную модифицировать образ ESXi:
- Распакуйте ваш установочный ISO образ VMware ESXi в каталог на диске;
- Установите на компьютер архиватор 7zip (быстрее всего установить его с помощью пакетного менеджера winget:
winget install 7zip.7zip
); - Откройте файл IMGDB.TGZ с помощью 7ZIP и переименуйте файл внутри на IMGDB.tar;
- Теперь нужно собрать ISO образ. Можно воспользоваться программой IsoCreator (скачайте IsoCreator.msi, откройте файл с помощью 7ZIP и запустите
IsoCreator.exe
); - Укажите каталог с установочными файлами ESXi и имя ISO файл;
- Теперь вы можете использовать полученный ISO в ESXi-Customizer. Ошибка при добавлении драйверов исчезнет.
Теперь можете использовать ваш ISO образ для установки ESXi.
Добавляем драйвера с помощью Image Builder в vCenter Server
В vCenter Server вы можете использовать встроенный Image Builder для модификации установочных образов ESXi. По умолчанию эта служба отключена. Включите ее через vCenter -> Auto Deploy -> Enable Image Builder.
Теперь нужно создать Software Depot и импортировать в него ваш ISO образ, vib (zip) файлы с драйверами и необходимые обновления ESXi.
Теперь клонируйте ваш образ. При клонировании вы можете выбрать какие пакеты (драйвера) нужно добавить в этот дистрибутив ESXi.
После этого нажмите кнопку Export и вы скачаете ваш установочный ISO образ ESXi с интегрированными сторонними драйверами.
VMware
Добавляем драйвера в установочный образ VMware ESXi