среда, 8 апреля 2009 г.

PXE загрузка ESXi

В ESXi 3.5 Update 4 была заявлена экспериментальная поддержка PXE загрузки.

Я заинтересовался, попробовал - и у меня получилось.

Что я делал:

1) В качестве сервера загрузки по сети я использовал готовое виртуальное решение - UDA, Ultimate Deployment Appliance. Про нее я не раз писал, и даже когда то налабал инструкцию.

  • Скачал(я использовал версию под Workstation)
  • Запустил.
  • Дал ей нужный IP адрес.

    Для этого надо залогиниться в локальную командную строку - root/test.
    Открыть конфиг

    nano -w /etc/sysconfig/network-scripts/ifcfg-eth0

    поправить IP

    После этого:

    /etc/sysconfig/network-scripts/ifdown eth0

    /etc/sysconfig/network-scripts/ifup eth0
(кстати, запоздалое спасибо Денису Березовскому)

  • Теперь зашел на этот IP браузером, залогинился в веб интерфейс - admin/admin.

    В веб интерфейсе необходимо настроить DHCP сервер(если нас не устраивают настройки по умолчанию) .

2) Качаем ESXi 3.5 Update 4 и syslinux.
Из исошника ESXi распаковываем файлы
# mboot.c32
# binmod.tgz
# boot.cfg
# cim.tgz
# environ.tgz
# license.tgz
# oem.tgz
# vmkernel.tgz
Я пользовался сначала winrar - для распаковки .dd(как описано тут), потом .dd открывал шароварным winImage и извлекал файлы из списка.

из дистрибутива syslinux распаковываем файлы(выбираем .zip вариант для скачивания)

com32\menu\menu.c32
core\pxelinux.0



3) Теперь надо распакованные файлы закинуть внутрь UDA'ы.
Я пользовался WinSCP.

Все полученное в п.2 копируем в папку /var/public/tftproot
Обратите внимание, что pxelinux.0 там уже есть - его надо перезаписать.



Теперь, в папке /var/public/tftproot/pxelinux.cfg редактируем файл default(создаем если его нет) - его содержимое заменяем на следующее:

default menu.c32
menu title PXE Boot VMware ESXi
timeout 100

label ESXi
menu label Boot VMware ESXi
kernel mboot.c32
append vmkernel.gz --- binmod.tgz --- environ.tgz --- cim.tgz
ipappend 2

label Hard
menu label Boot from local drive
localboot 0


4) запускаем целевую машину(у меня это была виртуалка) - и загружаем ее по сети. Видим вот такую картинку



5) В общем то, все:

так как я делал это из простого интереса, что тут надо доделать для реального использования:

  • Настроить DHCP на выдачу конкретного IP каждому ESXi по мак адресу. По маку его управляющего интерфейса, который виртуальный.
  • Сделать подгрузку конфига, уникального для каждого ESXi.
    Что примерно для этого надо:

    1) создать в pxelinux.cfg файл с именем = мак адрес уже физической сетевушки ESXi, через которую идет загрузка

    2) Забекапить конфиг для каждого ESXi, можно попробовать вот такой командой

    vicfg-cfgbackup --server esxihost2.local.com -s /tmp/host2 --username root


    Это команда RCLI, который надо будет скачать - ссылка на RCLI.

    3) В файлике /tmp/host2 должен оказаться бекап конфигa ESXi.
    Скопируем его в корень tftp - у нас это /var/public/tftproot и п.3
    Переименуем его в configBundle.tgz

    Теперь конфиг в pxelinux.cfg поменяем на такой:

    ..
    label ESXi
    menu label Boot VMware ESXi
    kernel mboot.c32
    append vmkernel.gz --- binmod.tgz --- environ.tgz --- cim.tgz --- configBundle.tgz
    ..



Т.е. должно получиться. что в tftproot у нас лежит конфиг для каждого ESXi, а в tftproot/pxelinux.cfg - файл загрузки по сети с именем = мак адресу каждого ESXi сервера, в которых прописана подгрузка соответствующих конфигов.

Я это не тестировал, так что может и не заработать влет.

7 комментариев:

  1. > 2) Качаем ESXi 3.5 Update 4...
    Где взять? На офсайте во FreeDownload доступен только Update 3 :-(

    ОтветитьУдалить
  2. есть там все
    https://www.vmware.com/tryvmware/?p=esxi

    ОтветитьУдалить
  3. я сам качал его не как фришный ESXi, а как часть VMware Infrustructure - там уже U4 выложен.

    ОтветитьУдалить
  4. на офсайте U3
    можно ли как то обновить USB флеш файлами с закладки патчи ?

    ОтветитьУдалить
  5. нашел на
    http://www.vmware.com/downloads/download.do?downloadGroup=ESX_3I_INSTALLABLEU4

    ОтветитьУдалить
  6. Не... млинн!!! Ну вот же злодеи! Ещё вчера небыло :-(
    PS: сори за офтопик. утомился ждать :-)

    ОтветитьУдалить
  7. Готовый образ загрузочной ''Флэшки''; Дополнительно содержит: инструкции и утилиты, для создания загрузочной флешки, и загрузки по сети...
    http://rutracker.org/forum/viewtopic.php?t=2998021

    VMware ESXi BootUSBFLASH&NETwork
    http://rutracker.org/forum/viewtopic.php?t=2998021

    ОтветитьУдалить

Примечание. Отправлять комментарии могут только участники этого блога.