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 - достаточно нормально документированые утилиты.
На этом вроде как всё ![]()
2008-07-15 at 7.11 am
id wrote:
… шесдь. Для того, чтобы в виртуальных машинах была сеть, я использовал NAT - правильнее было бы использовать bridge, как везде и описано, но у меня он упорно отказывался работать …
Та же трабла была у меня в VMware (знаю что немного офтоп =) ).
З.Ы.: screen — чтоб в фон вешать а при надобности переключиться?
2008-07-17 at 2.53 am
С VmWare там всё предельно просто. У них есть хелп свой, и как правило если там по началу ничего не трогать - то всё должно заработать само. и там отлично всё работает мостом. Хотя и NAT’ом тоже. Тут же дело в том, что оно как-то хитро строит свой мост и непонятно, где читать доку о том, что ему надо для правильной работы.
screen - да, чтобы, если у тебя повис ssh, не умирал процесс. т.е. ты просто переподключешься по ссш и делаешь screen -rD. Для долгого чего-то типа бекапов - надо
2008-08-04 at 4.42 pm
интересная инфа, спасибо авторам!