Xen
Установка Xen в ALT Linux
Пример на основе branch 4.0.
Моя конфигурация такова:
/dev/sda1 - root - 63G /dev/sda2 - swap - 4G
Ставим grub и устанавливаем его:
# apt-get install grub # grub-install /dev/sda
Примерный /boot/grub/menu.lst:
timeout 5 color black/cyan yellow/cyan default 0 title default kernel /boot/vmlinuz root=/dev/sda1 vga=normal initrd /boot/initrd.img
Проверим, что grub грузит текущее ядро:
# reboot
После успешной загрузки ставим ядро и необходимые для работы железа модули:
# apt-get install kernel-image-xen-dom0 kernel-modules-необходимые-xen-dom0 xen-hypervisor xen
Редактируем /boot/grub/menu.lst примерно до такого:
timeout 5 color black/cyan yellow/cyan default 0 title default kernel /boot/vmlinuz root=/dev/sda1 vga=normal initrd /boot/initrd.img title XEN kernel /boot/xen.gz dom0_mem=512M module /boot/vmlinuz-2.6.18-xen-dom0-alt6.M40.1 root=/dev/sda1 module /boot/initrd-2.6.18-xen-dom0-alt6.M40.1.img
Обратите внимание на двойную module -- это обязательно.
Перезагружаемся в XEN-ядро, далее:
# service xend start
Проверим, что все в порядке:
[root@wintermute ~]# xm info host : wintermute.tld release : 2.6.18-xen-dom0-alt6.M40.1 version : #1 SMP Tue Mar 4 22:42:44 MSK 2008 machine : i686 nr_cpus : 4 nr_nodes : 1 sockets_per_node : 2 cores_per_socket : 1 threads_per_core : 2 cpu_mhz : 2392 hw_caps : bfebfbff:00000000:00000000:00000080:00004400 total_memory : 4095 free_memory : 3540 xen_major : 3 xen_minor : 1 xen_extra : .2 xen_caps : xen-3.0-x86_32p xen_scheduler : credit xen_pagesize : 4096 platform_params : virt_start=0xf5800000 xen_changeset : unavailable cc_compiler : gcc version 4.1.1 20070105 (ALT Linux, build 4.1.1-alt11) cc_compile_by : builder cc_compile_domain : rio.altlinux.org cc_compile_date : Tue Mar 4 23:38:33 MSK 2008 xend_config_format : 4 [root@wintermute ~]# brctl show bridge name bridge id STP enabled interfaces xenbr0 8000.feffffffffff no vif0.0 peth0
Поставим xend в автозапуск:
# chkconfig --level 345 xend on
Ставим kernel-image-xen-domU:
# apt-get install kernel-image-xen-domU
Делаем образ машины. Я использовал один из собственноручно приготовленных openvz-темплейтов.
# mkdir -p /xen/alt # dd if=/dev/zero of=/xen/alt.img bs=1M seek=10240 count=0 -- создаем 10 ГБ "раздел" для машины # mkfs.ext3 /xen/alt.img # mount -o loop /xen/alt.img /xen/alt/ # cd /xen/alt && tar xf /altlinux-4.0.tar.gz
Поставим внутрь будущей виртуальной машины domU-ядро:
# chroot /xen/alt/ /bin/bash # vim /etc/resolv.conf -- установим нужный nameserver # vim /etc/apt/sources.list -- установим правильный репозиторий (можно пропустить, если устраивает тот, что преднастроен внутри контейнера) # apt-get update && apt-get install kernel-image-xen-domu
Поправим /etc/fstab в чруте, чтобы выглядело примерно так:
/dev/hda1 / ext3 defaults 0 1
Выходим из чрута:
# exit
Отмонтируем чрут: # umount /xen/alt
Ставим kernel-image-xen-domU в dom0-систему:
# apt-get install kernel-image-xen-domU
Пишем конфигурационный файл /etc/xen/alt:
kernel = "/boot/vmlinuz-2.6.18-xen-domU-alt6" memory = 256 name = "alt" root = "/dev/hda1 ro" extra = "xencons=tty" disk = [ 'file:/xen/alt.img,hda1,w' ]
Пробуем запустить: # xm create -c alt
В конце концов должен выдать приглашение на логин, куда собственно и нужно логиниться.
Для выхода из консоли нажать Ctrl-].