Один из моих клиентов выполнял обновление своего сервера виртуализации с версии ESXi 4.0 Update 2 до ESXi 4.1 при помощи “VMware vSphere Host Update Utility” (про нее я уже писал в посте про так как патчить отдельностоящий ESX), был скачан файл “ESXi 4.1 (upgrade ZIP from ESXi 4.0)” и был выбран соответствующий пакет для обновления хоста. После проверки пакета обновления я увидел такую ошибку:
Failed to read the upgrade package metadata: Could not find file metadata.xml
Я порекомендовал проверить контрольную сумму MD5 скачанного пакета, … она оказалась правильной. На всякий случай он попробовал еще раз скачать с сайта VMware это архив, но и новый архив с обновлениями выдавал ту же ошибку.
Решение:
С помощью клиента VI подключитесь к хранилищу (datastore) и загрузите на него скачанный с сайта VMware архив с обновлением, для этих целей я создал новую папку “upgrade” и поместил архив в нее.
— Переведите свой сервер ESXi в режим обслуживания (maintenance mode)
Все мы помним, что ESXi официально не поддерживает доступ по SSH, однако существуют «трюк», который мы все знаем, позволяющий включить удаленный доступ по SSH к интерфейсу командной строки сервера ESX.
— Подключитесь к своему серверу по ssh и перейдите в каталог /vmfs/volumes/[datastore01]/upgrade/
– Выполните команду “esxupdate update –m metadata.zip”, в результате чего будет выполнено обновление с ESXi 4.0 Update 2 до ESXi 4.1. После чего не забудьте перезагрузить свой хост ESXi.
В итоге сервер ESXi4.0 U2 был успешно обновлен вручную до ESXi 4.1