Xen and ubuntu 8.04.1

UPD:незнаю, то ли я его готовить не умею, толи таки оно ещё неживое, но пока не рекомендовал бы пользоватся Xen. из каропки не работает 100%

Ага, в ubuntu 8.04.1 отключили поддержку vserver из коробки, оставили xen, появился openvz и ещё чёто осталась, qemu чтоли. Ну по кр. мере я не нашёл vserver-ного ядра или плохо искал, не суть важно. Начал ставить Xen. “Чьорт побьери!” (с) около 10 часов я возился с офигенно подробной докой и не менее крутыми HOWTO к старым версиям debian/ubuntu, но зато установилось. Единственное, чего недопёр пока(да и не очень пытался) - как внутри одной виртуальной машины сделать больше одной сетевухи. Итак, теперь то, ради чего затеял пост - описание процесса установки.

  • адын. Установить
    ubuntu-xen-server.
  • дфа. Reboot.
  • тры. Редактируем
    /etc/xen/xend-config.sxp

    , включаем:

    ((network-script network-bridge)
    (vif-script     vif-nat)
  • чэтырэ.
    /etc/init.d/xend restart

    Если необходимо(смотрим в /var/log/xend.log), делаем

    brctl add xenbr0

    и ещё раз рестарт.

  • пядь. Редактируем
    /etc/xen/xen-tools.conf

    , приводим к приблизительно такому виду:

    ddir = /mnt/xen
    install-method = debootstrap
    size   = 15Gb     # Disk image size.
    memory = 512Mb    # Memory size
    swap   = 1024Mb    # Swap size
    fs     = ext3     # use the EXT3 filesystem for the disk image.
    dist   = hardy    # Default distribution to install.
    image  = sparse   # Specify sparse vs. full disk images.
    gateway   = 192.168.0.160
    netmask   = 255.255.255.0
    passwd = 1
    kernel      = /boot/vmlinuz-`uname -r`
    initrd      = /boot/initrd.img-`uname -r`
    arch=i386
    mirror = http://archive.ubuntu.com/ubuntu/
    ext3_options   = noatime,nodiratime,errors=remount-ro
    ext2_options   = noatime,nodiratime,errors=remount-ro
    xfs_options    = defaults
    reiser_options = defaults
    disk_device = xvda  #default

    Я использовал файлы .img как образы дисков виртуальных машин Xen и ext3, потому что 1.5Т дискового простарнства олени из датацентра отформатировали в одну партицию с фс ext3. Вообще, рекомендуется использовать lvm, что некоторое время назад мы и делали.

  • шесдь. Для того, чтобы в виртуальных машинах была сеть, я использовал NAT - правильнее было бы использовать bridge, как везде и описано, но у меня он упорно отказывался работать + в некотором плане для меня NAT оптимальнее в данном конкретном случае. Поэтому, допустим что на самом сервере есть eth1 с ip=192.168.0.1. Тогда, чтобы создать виртуальную машиину, говорим:
    aapt-get install screen
    screen
    xen-create-image --hostanme=vm1 --ip=192.168.0.2 --force

    Ждём пока создадутся и отформатируются диски, а на них установится ubuntu 8.04.1. После этого редактируем

    /etc/xen/vm1.cfg

    , меняя file: на tap:aio:(я так понимаю это не понадобится, если используется lvm). Если используем NAT - добавляем правила iptables, а-ля:

    iiptables -t nat -A POSTROUTING -s 192.168.0.101/32 -j SNAT --to-source внешний ип
    iptables -t nat -A POSTROUTING -s 192.168.0.2/32 -j SNAT --to-source external_ip
    iptables -t nat -A PREROUTING -p tcp -d external_ip/32 --dport 22 -j DNAT --to-destination 192.168.0.2:22
  • ноль. Что делать дальше?
    xxm create /etc/xen/vm1.cfg #запускаем виртуальную машишну
    xm list #показывает запущенные vm
    xm console vm1 #открывает консоль на vm1, выход из консоли - Ctrl+]
    xm reboot vm1 #перезагрузить vm1
    xm shutdown vm1 #выключить vm1 нормально
    xm destroy vm1 #выключить vm1 как будто выключилось питание
    xm delete vm1 #удаляет виртуальную машину, настройки и т.п.

    А вообще, xm –help и xen-create-image - достаточно нормально документированые утилиты.

На этом вроде как всё :-)

3 Responses to “Xen and ubuntu 8.04.1”

  1. poloniumv Says:

    id wrote:
    … шесдь. Для того, чтобы в виртуальных машинах была сеть, я использовал NAT - правильнее было бы использовать bridge, как везде и описано, но у меня он упорно отказывался работать …

    Та же трабла была у меня в VMware (знаю что немного офтоп =) ).

    З.Ы.: screen — чтоб в фон вешать а при надобности переключиться?

  2. idid Says:

    С VmWare там всё предельно просто. У них есть хелп свой, и как правило если там по началу ничего не трогать - то всё должно заработать само. и там отлично всё работает мостом. Хотя и NAT’ом тоже. Тут же дело в том, что оно как-то хитро строит свой мост и непонятно, где читать доку о том, что ему надо для правильной работы.
    screen - да, чтобы, если у тебя повис ssh, не умирал процесс. т.е. ты просто переподключешься по ссш и делаешь screen -rD. Для долгого чего-то типа бекапов - надо

  3. himichka Says:

    интересная инфа, спасибо авторам!

Leave a Reply