Citrix XenServer
Материал из ALT Linux Wiki
(→Citrix XenServer) |
|||
(4 промежуточные версии не показаны) | |||
Строка 6: | Строка 6: | ||
Так как продуктов ALT Linux нет в списке доступных шаблонов, то в качестве шаблона выбираем «Other install media». | Так как продуктов ALT Linux нет в списке доступных шаблонов, то в качестве шаблона выбираем «Other install media». | ||
Далее следуем указаниям мастера и завершаем создание ВМ. | Далее следуем указаниям мастера и завершаем создание ВМ. | ||
- | Запускается | + | Запускается установщик ОС. Тут тоже все стандартно. Я выбирал автоматическое разбиение диска, |
поэтому корневая файловая система у меня на sda2, а на sda1 — swap. | поэтому корневая файловая система у меня на sda2, а на sda1 — swap. | ||
Тип устанавливаемой системы был выбран «сервер», поэтому было установлено ядро el-smp | Тип устанавливаемой системы был выбран «сервер», поэтому было установлено ядро el-smp | ||
Строка 12: | Строка 12: | ||
Примечание: данное ядро устанавливалось в бета-версии дистрибутива. Не знаю какое ядро будет устанавливаться в финальной версии. Если по умолчанию будет установлено другое ядро, то возможно надо будет установить ядро el-smp вручную. | Примечание: данное ядро устанавливалось в бета-версии дистрибутива. Не знаю какое ядро будет устанавливаться в финальной версии. Если по умолчанию будет установлено другое ядро, то возможно надо будет установить ядро el-smp вручную. | ||
- | После того как система успешно установилась, она работает в режиме HVM (из-за того, что при создании ВМ был выбран шаблон «Other install media»). Работа в режиме HVM имеет следующие недостаки: некоторое снижение производительности, невозможность использования LiveMigration, отсутствует | + | После того как система успешно установилась, она работает в режиме HVM (из-за того, что при создании ВМ был выбран шаблон «Other install media»). Работа в режиме HVM имеет следующие недостаки: некоторое снижение производительности, невозможность использования LiveMigration, отсутствует возможность мониторинга в XenCenter памяти, используемой ВМ. Чтобы исправить это, на необходимо переключить ВМ в режим PV. |
- | возможность мониторинга в XenCenter памяти, используемой ВМ. Чтобы исправить это, на необходимо переключить ВМ в режим PV. | + | |
- | Чтобы после перезапуска ВМ смогла нормально запуститься нужно сгенерировать новый initrd. | + | Чтобы после перезапуска ВМ смогла нормально запуститься нужно сгенерировать новый initrd. Сначала добавим нужные модули в initrd, добавив в файл <tt>/etc/initrd.mk</tt> следующую строку: |
- | + | <pre> | |
+ | MODULES_ADD += xenblk xennet | ||
+ | </pre> | ||
- | + | Теперь сгенерируем новый initrd командой <tt>make-initrd</tt>. Причем, если дефолтным ядром являлось не el-smp, то команде <tt>make-initrd</tt> при помощи ключа <tt>-k</tt> потребуется указать версию ядра, для которой генерируется initrd. | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
Следующий шаг — подготовка консоли, чтобы в XenCenter во вкладке Console, относящейся к нашей ВМ все работало корректно. | Следующий шаг — подготовка консоли, чтобы в XenCenter во вкладке Console, относящейся к нашей ВМ все работало корректно. | ||
- | В | + | Добавляем hvc0 в файл <tt>/etc/securetty</tt>. В файл <tt>/etc/inittab</tt> добавляем строчку: |
- | + | <pre> | |
- | + | co:2345:respawn:/sbin/mingetty --noclear hvc0 | |
+ | </pre> | ||
- | + | Поскольку *getty на виртуальных консолях мы все равно не увидим, то можно их отключить, закомментировав соответствующие строки в <tt>/etc/inittab</tt>. | |
Выключаем VM. | Выключаем VM. | ||
Строка 44: | Строка 39: | ||
Для этого идем в консоль хоста в XenServer или подключаемся к нему через SSH. | Для этого идем в консоль хоста в XenServer или подключаемся к нему через SSH. | ||
- | В консоли вводим: | + | В консоли вводим: <tt>xe vm-list</tt> |
- | + | ||
- | Запоминаем UUID нашей ВМ. | + | Запоминаем UUID нашей ВМ. Далее вводим: |
- | + | <pre> | |
+ | # Переключаем 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" | ||
+ | </pre> | ||
- | + | <VM-UUID> заменяем на свой, полученный на предыдущем шаге. Причем его не обязательно вводить вручную. Достаточно ввести несколько первых символов и на жать TAB, сработает автодополнение. | |
- | + | Примечание: /dev/xvda2 в PV-args соответствует /dev/sda2 до смены режима. Если у вас корень установлен не в /dev/sda2, то необходимо подставить соответствующее устройство. | |
- | Если | + | Если вдруг понадобится переключится обратно в режим HVM, то это можно будет сделать следующими командами: |
+ | <pre> | ||
+ | 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="" | ||
+ | </pre> | ||
- | |||
- | + | Далее нужно сделать диск виртуальной машины загрузочным. Получаем список дисковых устройств нашей VM: | |
+ | <pre> | ||
+ | xe vm-disk-list uuid=<VM-UUID> | ||
+ | </pre> | ||
+ | Запоминаем uuid у диска 0 VBD и выполняем: | ||
+ | <pre> | ||
+ | xe vbd-param-set uuid=<VBD-UUID> bootable=true | ||
+ | </pre> | ||
- | + | где <VBD-UUID> равен uuid VBD диска, полученному на предыдущем шаге. | |
- | + | В свойствах ВМ в разделе загрузки выбираем загрузку с HD | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | В свойствах ВМ в разделе загрузки выбираем HD | + | |
Запускаем ВМ | Запускаем ВМ | ||
После запуска, консоль ВМ, которая доступна через XenCenter не будет реагировать на клавиатуру. | После запуска, консоль ВМ, которая доступна через XenCenter не будет реагировать на клавиатуру. | ||
Для исправления необходимо перезапустить XenCenter. | Для исправления необходимо перезапустить XenCenter. | ||
- | |||
- | |||
В XenCenter подключаем DVD-drive xs-tools.iso | В XenCenter подключаем DVD-drive xs-tools.iso | ||
- | |||
- | + | Смотрим в вывод <tt>ls /dev/xvd*</tt> и пытаемся понять, кто из них - DVD-драйв. Обычно это xvdd, но в моем случае это был xvdb. | |
+ | |||
+ | В <tt>/etc/fstab</tt> редактируем строчку для /media/cdrom, меняем /dev/sr0 на соответствующее устройство. | ||
+ | |||
+ | В косоли ВМ выполняем: | ||
+ | |||
+ | <pre> | ||
+ | mount /media/cdrom | ||
+ | cd /media/cdrom/Linux | ||
- | + | # прикидываемся RHEL 6 версии | |
+ | sh install.sh -d rhel -m 6 | ||
+ | </pre> | ||
- | + | Перезагружаемся. | |
- | + | Также необходимо поправить файл <tt>/etc/sysconfig/grub2</tt> | |
- | Также необходимо поправить файл / | + | |
- | В парамете GRUB_AUTOUPDATE_DEVICE указать устройство '/dev/xvda' | + | В парамете <tt>GRUB_AUTOUPDATE_DEVICE</tt> нужно указать устройство '/dev/xvda' |
Для того, чтобы на закладке Networking в XenCenter выводился IP-адрес нужно поставить пакет net-tools (нужен ifconfig). | Для того, чтобы на закладке Networking в XenCenter выводился IP-адрес нужно поставить пакет net-tools (нужен ifconfig). | ||
- | + | {{Category navigation|title=ПО уровня предприятия|category=Enterprise Software|sortkey={{SUBPAGENAME}}}} | |
- | + | {{Category navigation|title=Xen|category=Xen|sortkey={{SUBPAGENAME}}}} |
Текущая версия на 11:34, 2 июля 2015
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).