Обновление VMware ESXi из командной строки esxcli

В этой статье мы рассмотрим процесс ручной установки обновлений на хост VMware ESXi из командной строки, можно выполнить обновление внутри релиза, так и между версиями версии ESXi (например, выполнить апгрейд с VMware ESXi 6.7 до 7.0 или 8.0).

Ручное обновление ESXi из консоль esxcli можно использовать для обновления отдельно-стоящих хостов ESXI (или бесплатного VMware vSphere Hypervisor), небольших инсталляций или тестовых сред. Для обновления большой инфраструктуры на базе VMware vSphere vCenter/VCSA предпочтительнее использовать VMware Update Manager/VMware Lifecycle manager.

Определите установленную версию ESXi из веб интерфейса Host Client:

Узнать версию образа ESXi на сервере

Или из командной строки ESXi (предварительно нужно разрешить SSH доступ к хосту ESXi):

vmware -v

VMware ESXi 8.0.2 build-22380479

получить номер билда esxi

В нашем примере на хосте установлена версий ESXi 8.0 Update2.

Датe установки (обновления) образа ESXi можно узнать командой:

esxcli software vib list | grep 'Install\|esx-base'

esxcli дата обновления образа esxi

Вы можете получить обновлений для хоста VMware ESXi двумя способами:

  • Онлайн обновление – подойдет для случаев, если ваш ESXi может получить доступ к репозиторию VMware через интернет.
  • Оффлайн обновление — вы должны вручную скачать ZIP файл с установочным Offline Bundle образа ESXi на локальное хранилище

Онлайн установка обновления на хосте ESXi

Сначала рассмотрим онлайн обновление ESXi. Подключить к консоли ESXi и проверьте версию используемого профиля.

esxcli software profile get

В нашем примере используется кастомный дистрибутив ESXi 8.0.2 от HPE (HPE-Custom-AddOn_802.0.0.11.5.0-6).

esxcli узнать текущий профиль образа esxi

Разрешите ESXi хосту доступ в Интернет, открыв правило в файероле:

esxcli network firewall ruleset set -e true -r httpClient

Выведите список доступных образов в VMware online depot:

esxcli software sources profile list --depot=https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml

спосок обновлений в online depot vmware esxi

В данном случае последняя доступный образа для нашей версии ESXi — ESXi-8.0U2b-23305546-standard.

Переведите хост в режим обслуживания:

esxcli system maintenanceMode set --enable=true

Запустите онлайн обновление вашего образа ESXi до указанного билда:

esxcli software profile update -p ESXi-8.0U2b-23305546-standard -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml

В моем случае появилось предупреждение:

Hardware precheck of profile ESXi-8.0U2b-23305546-standard failed with warnings: <CPU_SUPPORT OVERRIDEWARNING: The CPUs on this host are not supported by ESXi 8.0.2. You can override and force install, but it is not officially supported nor recommended. Please refer to KB 82794 for more details.

esxcli обновления ошибка hardware The CPUs on this host are not supported

В данном случае версия CPU на хосте не поддерживается в новом билде. Чтобы игнорировать это предупреждение, нужно добавить параметр —no-hardware-warning в предыдущую команду.

После окончания обновления образа ESXi появится сообщение:

The update completed successfully, but the system needs to be rebooted for the changes to be effective.

А также список установленных пакетов VIB.

Отключите HTTP доступ в интернет:

esxcli network firewall ruleset set -e false -r httpClient

Перезагрузите ESXi сервер:

Reboot

Отключите режим обслуживания:

esxcli system maintenanceMode set --enable=false

Проверьте, что версия ESXi была обновлена:

esxcli software profile get

обрах esxi обновлен

Если онлайн обновление ESXi невозможно, или при обновлении из командной строки появляется ошибка Got no data from process: LANG=en_US.UTF-8, нужно выполнить офлайн установку обновления.

esxcli software sources: ошибка Got no data from process: LANG=en_US.UTF-8

Ручная офлайн установка обновления образа VMware ESXi

Для офлайн установки rollup обновления на ESXi:

  1. Авторизуйтесь в личном кабинете на сайте VMware и перейдите на https://my.vmware.com/group/vmware/patch
  2. Выберите продукт: ESXi (Embedded and Installable);
  3. Выберите свою версию ESXi и скачайте последний Offline Bundle (по Release Data). Если вы используете кастомный образ ESXi от вендора (например HPE Custom Image for ESXi 8.0U2), перейдите на вкладку Custom ISOs (https://customerconnect.vmware.com/downloads/info/slug/datacenter_cloud_infrastructure/vmware_vsphere/8_0#custom_iso ); Скачать обновления для vmware esxi
  4. Скачайте zip архив с обновлением;
  5. Воспользуйтесь DataStore Browser, чтобы скопировать архив на любое из доступных хосту хранилищ (это может быть локальный диск, NFS папка, VMFS LUN, подключенный по iSCSI или Fiber Channel, или внешний USB диск, подключенный к хосту ESXi). Если места на хранилище недостаточно, расширьте VMFS; загрузить обновление для esxi на esxi сервер
  6. Подключитесь к хосту ESXi через SSH и переведите хост в режим обслуживания: : vim-cmd /hostsvc/maintenance_mode_enter
  7. Выведите список доступных профилей в образе:
    esxcli software sources profile list --depot /vmfs/volumes/607eb5b4-c6e3e815-7b50-000c29808a13/update/ESXi670-202111001-depot.zip
  8. Для установки обновлений из локальной папки выполните команду: esxcli software vib update --depot /vmfs/volumes/607eb5b4-c6e3e815-7b50-000c29808a13/update/ESXi670-202111001.zip
    Чтобы выбрать конкретный профиль, добавьте параметр --profile=имя_профиля установка обновлений на esxi из командной строки

    Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
    Reboot Required: true
  9. Если при обновлении появятся ошибки зависимостей, можно проигнорировать их, добавив –f. Однако это может привести к непредвиденным проблемам в дальнейшем при эксплуатации ESXi. Лучше разобраться с зависимостями и добавить нужный драйвер в установочный образ ESXi.
    [DependencyError]VIB VMW_bootbank_vmkusb_0.1-4vmw.670.3.159.18828794 requires vmkapi_incompat_2_5_0_0, but the requirement cannot be satisfied within the ImageProfile.
  10. Перезагрузите хост ESXi: reboot -f
  11. Отключите режим обслуживания: vim-cmd /hostsvc/maintenance_mode_exit
  12. Убедитесь, что версия ОС обновилась: vmware –v версию esxi была обновлена
Вы также можете использовать PowerCLI для установки обновлений на ESXi:

Install-VMHostPatch -HostPath /vmfs/volumes/volume/esxi_patch.zip

Из командной строки вы можете не только установить патчи на текущий релиз ESXi, но и выполнить обновление до следующий версии. Например, с ESXi 6.7 до 8.0. Просто скачайте соответствующий офлайн образ и выполните обновлений согласно этому гайду.

  • При выполнении обновления между версиями ESXi убедитесь, что оборудование вашего сервера поддерживается в более новой версии ОС. Используйте VMware Compatibility Guide и VMware Product Interoperability Matrix.
  • Не обновляйте релиз ESXi, если хост подключен к vCenter до того, как вы обновите версию vCSA.


Предыдущая статья Следующая статья


Комментариев: 13 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)