ESX, как и любую операционную систему, нужно обновлять. И, как и в большинстве UNIX-систем, эти обновления нужно скачивать и ставить вручную. Конечно, обладатели VMware vCenter Update Manager могут делать это все через графический интерфейс, но если у вас standalone ESX, то лучше научиться ставить обновления ручками. Даже если вы решите никогда не мучаться с установкой мелких update packages, процедура может пригодится при установке больших обновлений (4.0 –> 4.0u1 –> 4.0u2) или переходе на следующую версию (4.1). Да и проблемы, из разряда пропадающих разделов могут сподвигнуть вас на установку обновлений.

Прежде чем начать ковыряться с обновлениями нужно знать, что с точки зрения ESX существует 2 фазы установки обновления: stage и update (remediate в vCenter Update Manager). Во время первой фазы ESX опеределяет, нужно ли ставить обновления, какие RPM-ы из его состава применимы к конкретному серверу и загружает файлы в специальную папку. Во время второй фазы выполняется установка загруженных RPM-ов, т.е. фактическая установка обновления. Полную информацию о том, как устроен процесс, а также обо всех извращениях можно получить в ESX 4 Patch Management Guide.

VMware предлагает загружать обновления сразу на ESX Server, где их и распаковывать перед установкой. По опыту могу сказать, что обновление содержит гораздо больеше RPM-ов и прочего мусора, который может быть неприменим к вашему серверу. Поэтому лучше завести для обновлений отдельный FTP-сервер, где и хранить распакованные обновления. В этом случае на фазе stage ESX будет загружать на сервер только те файлы, которые нужны, и сервер не будет захламляться мусором.

Итак, на подготовленном FTP сервере (кстати, лучше всего разрешить на нем анонимный доступ на чтение) создаем папку (например 4.0u1), загружаем и распаковываем в нее Update 1. В результате распаковки должна сохраниться структура папок обновления, а в корне папки 4.0u1 должен лежать файл metadata.zip. Как-то так:

Когда все нужные обновления загружены, переходим собственно к их установке. Для начала рекомендуется вручную остановить все виртуальные машины на сервере (если у вас VMware vCenter и работает vMotion – перенесите их на другой сервер). В принципе, перевод хоста ESX в maintenance mode приводит к миграции или остановке виртуалок, но лучше с этим не экспериментировать. Когда все подготовлено, переходим к установке обновлений (после // идет краткий комментарий, который вводить, ес-сно, не нужно):

vimsh -n -e /hostsvc/maintenance_mode_enter // включаем maintenance mode
esxcfg-firewall –allowOutgoing // разрешаем исходящие соединения на файрволе
esxupdate query // проверяем, не стоит ли уже требуемый апдейт
esxupdate stage -m ftp://адрес/xxxxx/metadata.zip // анализируем применимость апдейта к системе и скачиваем нужные файлики
esxupdate update -m ftp://адрес/xxxxx/metadata.zip // нахлобучиваем апдейт
// обычно здесь ESX пишет, что все ОК, но нужно перегрузиться
esxcfg-firewall –blockOutgoing // включаем обратно файрвол
reboot // перезагружаемся
vimsh -n -e /hostsvc/maintenance_mode_exit // после ребута выходим из maintenance mode

Можно устанавливать несколько обновлений за один присест, только для этого нужно сначала выполнить фазу stage для всех обновлений, а потом фазу update для всех обновлений. При установке нескольких обновлений лучше делать это в порядке выхода их в свет, дабы не проверять на своей шкуре как реализована проверка версий установленных файлов.

Вставить свои пять копеек

Чтобы оставить комментарий, Вам нужно идентифицировать себя.