Citrix XenServer
Citrix XenServer
Описание процесса запуска ALT Linux 6.0 Centaurus Beta x86_64 в PV-mode на Citrix XenServer
Для начала, создаем новую виртуальную машину (ВМ). Так как продуктов ALT Linux нет в списке доступных шаблонов, то в качестве шаблона выбираем «Other install media». Далее следуем указаниям мастера и завершаем создание ВМ. Запускается установщик ОС. Тут тоже все стандартно. Я выбирал автоматическое разбиение диска, поэтому корневая файловая система у меня на sda2, а на sda1 — swap. Тип устанавливаемой системы был выбран «сервер», поэтому было установлено ядро el-smp
Примечание: данное ядро устанавливалось в бета-версии дистрибутива. Не знаю какое ядро будет устанавливаться в финальной версии. Если по умолчанию будет установлено другое ядро, то возможно надо будет установить ядро el-smp вручную.
После того как система успешно установилась, она работает в режиме HVM (из-за того, что при создании ВМ был выбран шаблон «Other install media»). Работа в режиме HVM имеет следующие недостаки: некоторое снижение производительности, невозможность использования LiveMigration, отсутствует возможность мониторинга в XenCenter памяти, используемой ВМ. Чтобы исправить это, на необходимо переключить ВМ в режим PV.
Чтобы после перезапуска ВМ смогла нормально запуститься нужно сгенерировать новый initrd. Сначала добавим нужные модули в initrd, добавив в файл /etc/initrd.mk следующую строку:
MODULES_ADD += xenblk xennet
Теперь сгенерируем новый initrd командой make-initrd. Причем, если дефолтным ядром являлось не el-smp, то команде make-initrd при помощи ключа -k потребуется указать версию ядра, для которой генерируется initrd.
Следующий шаг — подготовка консоли, чтобы в XenCenter во вкладке Console, относящейся к нашей ВМ все работало корректно.
Добавляем hvc0 в файл /etc/securetty. В файл /etc/inittab добавляем строчку:
co:2345:respawn:/sbin/mingetty --noclear hvc0
Поскольку *getty на виртуальных консолях мы все равно не увидим, то можно их отключить, закомментировав соответствующие строки в /etc/inittab.
Выключаем VM.
В XenCenter переходим на вкладку Storage, относящейся к нашей ВМ. У меня почему-то SR создавался с «Device Position» 1. В свойствах SR меняем «Device Position» на 0
Далее необходимо переключить режим ВМ из HVM в PV. Для этого идем в консоль хоста в XenServer или подключаемся к нему через SSH.
В консоли вводим: xe vm-list
Запоминаем UUID нашей ВМ. Далее вводим:
# Переключаем VM в режим PV xe vm-param-set uuid=<VM-UUID> HVM-boot-policy="" xe vm-param-set uuid=<VM-UUID> PV-bootloader=pygrub # Передаем загрузчику и ВМ дополнительные параметры: xe vm-param-set uuid=<VM-UUID> PV-bootloader-args="--kernel /boot/vmlinuz --ramdisk /boot/initrd.img" xe vm-param-set uuid=<VM-UUID> PV-args="root=/dev/xvda2 console=hvc0 quiet"
<VM-UUID> заменяем на свой, полученный на предыдущем шаге. Причем его не обязательно вводить вручную. Достаточно ввести несколько первых символов и на жать TAB, сработает автодополнение.
Примечание: /dev/xvda2 в PV-args соответствует /dev/sda2 до смены режима. Если у вас корень установлен не в /dev/sda2, то необходимо подставить соответствующее устройство.
Если вдруг понадобится переключится обратно в режим HVM, то это можно будет сделать следующими командами:
xe vm-param-set uuid=c22179cb-cb92-0a66-d382-1def050ceb4b HVM-boot-policy="BIOS order" # Эту команду вводить не обязательно. Первой должно быть достаточно xe vm-param-set uuid=c22179cb-cb92-0a66-d382-1def050ceb4b PV-bootloader=""
Далее нужно сделать диск виртуальной машины загрузочным. Получаем список дисковых устройств нашей VM:
xe vm-disk-list uuid=<VM-UUID>
Запоминаем uuid у диска 0 VBD и выполняем:
xe vbd-param-set uuid=<VBD-UUID> bootable=true
где <VBD-UUID> равен uuid VBD диска, полученному на предыдущем шаге.
В свойствах ВМ в разделе загрузки выбираем загрузку с HD
Запускаем ВМ После запуска, консоль ВМ, которая доступна через XenCenter не будет реагировать на клавиатуру. Для исправления необходимо перезапустить XenCenter.
В XenCenter подключаем DVD-drive xs-tools.iso
Смотрим в вывод ls /dev/xvd* и пытаемся понять, кто из них - DVD-драйв. Обычно это xvdd, но в моем случае это был xvdb.
В /etc/fstab редактируем строчку для /media/cdrom, меняем /dev/sr0 на соответствующее устройство.
В косоли ВМ выполняем:
mount /media/cdrom cd /media/cdrom/Linux # прикидываемся RHEL 6 версии sh install.sh -d rhel -m 6
Перезагружаемся.
Также необходимо поправить файл /etc/sysconfig/grub2
В парамете GRUB_AUTOUPDATE_DEVICE нужно указать устройство '/dev/xvda'
Для того, чтобы на закладке Networking в XenCenter выводился IP-адрес нужно поставить пакет net-tools (нужен ifconfig).