Блог gigimon'а

Создание Linux виртуальной машины (domU) в Xen

После того, как установили dom0, можно приступить к установке в него виртуальных машин (domU). Для начала рассмотрим общую схему по установке, которую можно разделить на следующие этапы:

  1. Создание “жесткого диска”
  2. Написание конфига
  3. Установка туда ОС, либо использование готового темплейта.

Приступим к созданию виртуальной машины.

Для жесткого диска виртуальной машины, можно использовать либо файл, либо отдельный раздел. Я буду рассматривать на примере LVM раздела.

Для начала, создадим жесткий диск под нашу виртуальную машину:

lvcreate -L M -n Debian1 /dev/VolGroup00

mkfs.ext3 /dev/VolGroup00/Debian1

После этого, напишем конфиг нашей виртуальной машины debian1.cfg

kernel     = '/boot/xen.gz-2.6.18-164.el5'
memory     = 512
name       = 'Debian1'

vif        = ['vifname=vifxenv0,  mac=aa:00:7f:80:ca:01 ']

vnc        =  1

sdl = 0

vncpasswd = '1234567'

vncdisplay = 2
serial     = 'pty'
disk       = ['phy:/dev/VolGroup00/Debian1,sda1,w']

root = '/dev/sda1 ro'

Рассмотрим параметры:

kernel - указывает какое ядро надо использовать в виртуальной машине. Ядро должно быть модифицировано для работы в Xen окружении (в CentOs стандартное dom0 ядро поддерживает работу в domU)

memory - объем RAM в Мб

name - имя виртуальной машины, которое будет отображаться в xm list

vif - настройки сети. vifname - какой виртуальный интерфейс использовать в domU машине, mac - установить этот mac адрес

vnc - включить VNC (для удаленного доступа)

sdl - при включенном vnc не использовать библиотеку sdl, они взаимоисключают друг друга

vncpasswd - пароль на VNC

vncdisplay - на каком экране VNC будет эта виртуальная машина. Тут имеется ввиду порт на dom0 машине, который устанавливается 5900 + vncdisplay. В нашем случае этот порт будет 5902

disk - Параметры жесткого диска. phy: значит физический раздел, с полным путем к нему. В случае файла надо использовать file: Следующий параметр после запятой, это под каким именем подключать этот раздел в dom0 машину, следующий параметр, что можно с этим разделом w - означает возможность читать и писать на него.

root - параметр root передаваемый ядру при загрузке.

Теперь, нам надо либо установить ОС в виртуальную машину, либо использовать уже готовый темплейт, что мы и будем делать.

Достаточно много темплейтов, можно найти на этом сайте. Качаем Debian Lenny с этого сайта

wget http://stacklet.com/sites/default/files/debian/debian.5-0.x86.20090517.img.tar.bz2
tar -xfj debian.5-0.x86.20090517.img.tar.bz2

После этого, смонтируем наш “жесткий диск” для виртуальной машины и образ .img

mkdir /mnt/template
mkdir /mnt/fs<
mount -o loop debian.5-0.x86.20090517.img /mnt/template
mount /dev/VolGroup00/Debian1

Теперь скопируем все с образа на наш диск:

cp -R /mnt/template/* /mnt/fs

Отмонтируем:

umount /mnt/template
umount /mnt/fs

Все, наша domU машина готова, осталось только ее запустить

xm create /path/to/config/debian1.cfg -c

У нас откроется консоль с запуском виртуальной машины, если все хорошо, то перед нами будет диалог приветствия (шелл, с просьбой ввода логина и пароля). Стандартный пароль на эти темплейты password.

После этого, можно проверить и VNC доступ. На удаленной машине используем любой VNC клиент (я использую tightVNC)

vncviewer server_ip:5902

Должно будет появиться окно ввода пароля, после его ввода увидим шелл. Если все так и произошло, то поздравляю с первой виртуальной машиной в Xen :)

Ссылки: <http://xgu.ru/wiki/Linux_в_Xen> <http://stacklet.com/>

P.S.надеюсь это руководство вам помогло.

2008 — 2014