Назад | Перейти на главную страницу

Сервер загрузки PXE на гостевой системе xen PV?

Я установил гипервизор Xen на ubuntu 14.04 и гостевой PV также на ubuntu 14.04. Я хочу, чтобы этот PV-гость был загрузочным сервером PXE. Но когда я смотрю на /boot папка вижу, что она пуста.

Я новичок в виртуализации. Итак, где я должен:

  1. взять ядро?
  2. бегать mkinitramfs подготовить initrd к сетевой загрузке?

ОБНОВИТЬ Дорогие коллеги. Мне действительно нужен совет относительно рабочего процесса делаем кастомный initrd.img на гостевом PV. Я знаю все, что касается настройки загрузочного сервера PXE на хост-машине. Я просто хочу понять, где я могу взять образ ядра на гостевом PV и что происходит с гостевым PV, когда ядро ​​обновляется через apt-get.

Спасибо.

Я нашел решение. Это ПВГРУБ. Этот учебник охватывает все мои вопросы http://wiki.xen.org/wiki/PvGrub

Если вы хотите загружать систему по сети, вам понадобятся 3 вещи:

  • сервер dhcp (например isc dhcp)
  • tftp сервер
  • место, где вы можете скачать файл пресида

DHCP

Сервер DHCP должен предложить клиенту IP-адрес и сервер загрузки.

Пример конфигурации для isc dhcp выглядит так:

subnet 10.1.20.0 netmask 255.255.252.0 {
   option routers 10.1.20.1;

   next-server 10.1.22.150;
   filename "/pxelinux.0";

   on commit {
        set clip = binary-to-ascii(10, 8, ".", leased-address);
        set clhw = binary-to-ascii(16, 8, ":", substring(hardware, 1, 6));
        execute("/srv/rexio/middleware/bin/rex_io_pxe_dhcpevent", "commit", clip, clhw);
   }
}

Директива "next-server" сообщает клиенту, где он находит tftp-сервер. Как вы видите в примере, вы также можете определить скрипт, который запускается, когда клиент запрашивает IP. В этом примере он вызывает сценарий, который динамически создает файл команд загрузки pxe.

TFTP

Для этого вы можете использовать hpa tftpd. Вы должны поместить ядро ​​и initrd (и файл команд загрузки pxe) в папку tftp.

Вы можете найти необходимые для этого файлы (для ubuntu 14.04, 64bit) здесь: http://archive.ubuntu.com/ubuntu/dists/trusty/main/installer-amd64/current/images/netboot/

Просто скачайте эти файлы и поместите их в корневую папку tftp (я думаю, что в ubuntu это / var / lib / tftpboot).

файл предварительной настройки

Чтобы действительно автоматизировать вашу установку, вам понадобится файл предварительной загрузки. Пример для ubuntu можно найти здесь: https://help.ubuntu.com/10.04/installation-guide/example-preseed.txt (это для 10.04, но я думаю, что это не сильно изменится для 14.04)

Вы можете разместить этот файл на веб-сервере http и указать на него установку (через параметр ядра)

preseed/url=http://ip.of.your.server/preseed.cfg