7 июн. 2011 г.

Установка Trixbox 2.8 в Citrix XenServer 6.5 FP1

Итак, опишу подробное хау-ту как же все таки заставить ненативный ксенсерверу триксбокс заставить работать в нативном (паравиртуализационном) режиме.

1. Скачиваем установочный образ с сайта trixbox.org;

2. В Citrix XenCenter создаем новую виртуальную машину типа "Other install Media" и проводим установку стандартным способом с образа скачанного в пункте 1;

3. После успешной установки, с помощью Citrix XenCenter делаем загрузку по умолчанию с виртуального жесткого диска, входим в систему под пользователем root, настраиваем сеть командой system-config-network, перезагружаем сервер командой reboot;

4. Для удобства работы устанавливаем Midnight Commander командой yum install mc;

5.  Локализуем систему. Для этого комментируем содержимое файла /etc/sysconfig/i18n и добавляем туда следующее:

LANG="ru_RU.UTF-8"
SUPPORTED="ru_RU.UTF-8:ru_RU:ru"
SYSFONT="latarcyrheb-sun16"

Разлогиниваемся и залогиниваемся по новой чтобы ощутить эффект.
6. Изменяем конфигурационный файл загрузчика /etc/grub.conf и делаем ядро Xen загружаемое по умолчанию приводя строку default=1 к виду default=0. Также модифицируем параметры загрузки ядра приводя строки:

title trixbox (2.6.18-164.11.1.el5xen)
root (hd0,0)
kernel /xen.gz-2.6.18-164.11.1.el5
module /vmlinuz-2.6.18-164.11.1.el5xen ro root=LABEL=/
module /initrd-2.6.18-164.11.1.el5xen.img

К виду:

title trixbox (2.6.18-164.11.1.el5xen)
root (hd0,0)
kernel /vmlinuz-2.6.18-164.11.1.el5xen ro root=LABEL=/ console=xvc0
initrd /initrd-2.6.18-164.11.1.el5xen.img

Примечание: Если при установке использовался LVM, то запись должна выглядеть так:
kernel /vmlinuz-2.6.18-164.11.1.el5xen ro root=/dev/VolGroup00/LogVol00 console=xvc0
                                                           
7. Пересобираем initrd для ядра Xen:
rm -f /boot/initrd-2.6.18-164.11.1.el5xen.img
mkinitrd --with=xenblk --with=xennet /boot/initrd-2.6.18-164.11.1.el5xen.img 2.6.18-164.11.1.el5xen

8. Отключаем сервис автоопределения оборудования Kudzu
chkconfig --del kudzu

9. Устанавливаем версии драйверов Dahdi для ядра Xen
yum install -y kmod-dahdi-linux-xen

10. Конфигурируем доступ к консолям, для этого приводим секцию файла /etc/inittab с вида:

# Run gettys in standard runlevels
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6

к виду:

# Run gettys in standard runlevels
co:2345:respawn:/sbin/agetty xvc0 9600 vt100-nav
#1:2345:respawn:/sbin/mingetty tty1
#2:2345:respawn:/sbin/mingetty tty2
#3:2345:respawn:/sbin/mingetty tty3
#4:2345:respawn:/sbin/mingetty tty4
#5:2345:respawn:/sbin/mingetty tty5
#6:2345:respawn:/sbin/mingetty tty6

11. Разрешаем пользователю root подключаться к консоли xvc0 для этого выполняем команду:

echo xvc0 >> /etc/securetty

12. Переводим виртуальную машину из режима полной виртуализации в режим паравиртуализации. Для этого сначала выключите виртуальную машину, а затем в консоли XenServer хоста, на котором она была запущена выполняем следующие команды (в качестве примера виртуальная машина называется trixbox):
vm=$(xe vm-list name-label=trixbox --minimal)
xe vm-param-set uuid=$vm PV-bootloader=pygrub HVM-boot-policy=
xe vm-param-set uuid=$vm PV-args=utf8
vbd=$(xe vm-disk-list uuid=$vm vdi-params=none --minimal)
xe vbd-param-set uuid=$vbd bootable=true

Закройте и снова откройте XenCenter. Это необходимо для того чтобы мышь начала корректно работать.

13. Запускаем виртуальную машину и обновляем XenTools, предварительно установив образ в виртуальный привод, после чего выполняем команды:

mount /dev/xvdd /mnt
/mnt/Linux/install.sh -k
reboot

Все. Теперь можно полноценно управлять этой виртуальной машиной.

Отправить комментарий