
Как обновить ESXi
Вопрос, как обновить ESXi, довольно просто решается, если в вашей инфраструктуре есть VCenter. Там обновление хостов и виртуальных машин осуществляется с помощью VUM(vsphere update manager). Однако, в небогатых небольших организациях или в тестовом окружении, VCenter, как правило отсутствует. Давайте рассмотрим, как в таком случае обновить хост(ы) ESXi.
Сейчас мой хост имеет следующую версию(посмотреть ее можно в клиенте на вкладке Help->About):
Как обновить ESXi
Для обновления хостов нам потребуется подключиться к хосту по SSH и воспользоваться командной строкой esxcli.
Сначала, выключите или переместите виртуальные машины с обновляемого хоста(не помешает сделать бэкап). Потом переведите хост в режим обслуживания, выполнив команду:
1 |
vim-cmd hostsvc/maintenance_mode_enter |
Мы будем рассматривать обновление из репозитория VMware, поэтому нам понадобится доступ в интернет и разрешающее правило файрвола:
1 |
esxcli network firewall ruleset set -e true -r httpClient |
Теперь давайте посмотрим список доступных образов ESXi, выполнив команду:
1 |
esxcli software sources profile list --depot=https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml |
Чтобы осуществить поиск только определенной версии нужно дописать в конце | grep -i ESXi-6.5
Через некоторое время команда выведет список доступных образов:
Выбираем нужный образ и выполняем команду обновления с параметром —dry-run. Этот параметр позволяет посмотреть какие пакеты будут установлены, а какие удалены. Если в списке удаляемых есть необходимые вам пакеты, будьте готовы их потом поставить вручную.
1 |
esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p ESXi-6.5.0-20190104001-standard --dry-run |
После этого запускаем непосредственно обновление:
1 |
esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p ESXi-6.5.0-20190104001-standard |
Через несколько минут, в случае удачного обновления вы должны увидеть следующее:
Вводим команду reboot и перезагружаемся.
После перезагрузки выводим хост из режима обслуживания:
1 |
vim-cmd hostsvc/maintenance_mode_exit |
Проверяем версию ESXi:
И видим, что мы справились с задачей обновления хоста ESXi.
Установить апдейты можно и, скачав их на локальное хранилище хоста, командой типа:
1 |
esxcli software vib update -d "/vmfs/volumes/datastore1/patch-directory/ESXi500-201111001.zip" |
Вместо команды update можно использовать команду install, но учтите, что она перезаписывает все пакеты, установленные в системе, в то время как update заменяет только более старые версии пакетов, а те, которые новее, чем содержащиеся в патче, оставляет без изменений.
Источники:
https://tinkertry.com/easy-update-to-esxi-67
https://kb.vmware.com/s/article/2008939
http://www.virtubytes.com/2017/05/04/patch-esxi-using-esxcli-commands/