FastNetMon

Showing posts with label Xen. Show all posts
Showing posts with label Xen. Show all posts

Sunday, 12 June 2011

Миграция виртуальных машин Xen на OpenVZ

Вот хороший мануал по сабжу: http://www.howtoforge.com/how-to-convert-physical-systems-and-xen-vms-into-openvz-containers-debian-etch

Но суть сводится к более простому - достаточно выключить udev на Xen домене, чтобы он корректно заработал под OpenVZ. Просто так удалить udev не получится (он утянет за собой половину системы), скорее всего, его придется отключать в init скрипте инициализации системы.

Sunday, 26 September 2010

Xen Dom0 постоянно неожиданно перезагружается на Debian 5 Lenny

Вот столкнулся с такой напастью - машина с Xen Dom0 на Debian 5 Lenny где-то раз несколько в месяц перезагружается без каких-либо ошибок в логах и продолжает работать корректно. И никак не могу понять, в чем причина. После недолгих поисков нашел, что Dom0 в случае ошибок Xen перезагружается автоматически. Как же его отучить это делать и научить оставаться в режиме "с кернел паником на экране"?

Очень просто, нужно для Xen прописать noreboot опцию ядра:
title Xen 3.1-1-i386 / Debian GNU/Linux, kernel 2.6.18-6-xen-686
root (hd0,0)
kernel /xen-3.1-1-i386.gz noreboot
module /vmlinuz-2.6.18-6-xen-686 root=/dev/foo ro console=tty0
module /initrd.img-2.6.18-6-xen-686

И после этого перезагрузиться для применения настроек. Обращаю внимание, что после обновления версий ядра Dom0 / гипервизора этот параметр потребуется добавить заново, т.к. он сбрасывается.

Источник: http://wiki.debian.org/Xen#dom0automaticreboots

Wednesday, 8 September 2010

Проблемы с убеганием времени в Xen DomU (CentOS 5)

Итак, есть Dom0 с нормальным временем, а есть DomU с убегающим за сутки на 10-20 минут временем. Как победить?

1. В Dom0 ставим опцию independent wallclock = 1
2. В DomU через 10-15 минут по CRON ставим синхронизацию времени командой: ntpdate pool.ntp.org

Saturday, 10 July 2010

Автозапуск Xen DomU на Debian Lenny / Etch

Допустим, у нас есть DomU (VPS) с именем vps1, которому соответствует конфиг-файл /etc/xen/vps1, чтобы обеспечить автозапуск этой машинки при загрузке необходимо создать симлинк на ее конфиг в папке /etc/xen/auto (которую стоит предварительно создать).

mkdir /etc/xen/auto
ln -s /etc/xen/vps1 /etc/xen/auto/vps1


Все, после указанных операций Xen DomU с именем vps1 будет запускаться автоматически при загрузке машины.

Thursday, 17 June 2010

Увеличение диска для Xen VPS с диском в файле

Допустим, у нас есть VPS с малым диском и мы хотим его увеличить. Самый безопасный путь следующий.

Создаем новый файл-фс большего размера:
dd if=/dev/zero of=/home/vps/domain-new-disk bs=1000000 count=20000
mkfs.ext3 domain-new-disk


Останавливаем VPS:
xm shutdown domain


Убежадемся, что VPS точно остановился:
xm list


Монтируем оба образа:

mkdir /mnt/domain
mkdir /mnt/domain-new
mount -o loop /home/vps/domain-disk /mnt/domain
mount -o loop /home/vps/domain-new-disk /mnt/domain-new


Переносим все файлы:
cp -a /mnt/domain/* /mnt/domain-new/


Убеждаемся в идентичности содержимого (визуально, по размеру):
du -sh /mnt/domain
du -sh /mnt/domain-new


Отмонтируем оба диска:
umount mnt/domain-new
umount mnt/domain


Теперь редактируем файл конфигурации домена, указываем там новый диск:
vi /etc/xen/domain.conf


Запускаем VPS:
xm create -c domain

Thursday, 8 April 2010

Релиз Xen 4, это прям праздник какой-то!

Фичи

Поддержка совместного использования страниц памяти между несколькими виртуальными окружениями. В ОЗУ теперь хранится только одна копия страниц памяти содержимое которых повторяется для разных виртуальных окружений;


и

Интеграция кода проекта Remus, позволяющего организовать синхронизацию виртуальных машин на нескольких серверах и запустить синхронизированные гостевые окружения одновременно на нескольких хостах с целью обеспечения горячего резервного копирования Xen-окружений, способных на лету перехватить работу в случае сбоя на первичном сервере;


просто намертво выносят мозг и взрывают воображение :) Хотеть!

Причем, ранее аналогичную Remus задачу решал проект Kemari, но ребята из Xen выбрали Remus для интеграции, о чем инфорамция продублирована на офсайте Remus:

2009-11-09: Remus has been applied to the official Xen repository, and is expected to be included with the next major release! Updated (simpler!) installation and usage instructions coming soon.

Friday, 2 April 2010

xen: как узнать, сколько памяти еще доступно для Xen DomU?

При добавлении памяти какому-либо домену в Xen необходимо знать, если свободная память вообще :)

В этом нам поможет вот такая команда:
xm info | grep memory
total_memory : 1982
free_memory : 768


Причем, она показывает реально свободную память за вычетом памяти Dom0 и памяти всех запущенных DomU.

Thursday, 7 January 2010

Установка Xen Dom0 на Debian 4 Etch / 5 Lenny

Ставим гипервизор на Etch:
apt-get install -y xen-hypervisor-3.0.3-1-i386 xen-linux-system-2.6.18-6-xen-686 bridge-utils


В случае Lenny 64 бита:

apt-get install -y xen-hypervisor-3.2-1-amd64 xen-linux-system-2.6.26-2-xen-amd64 bridge-utils


В случае Lenny 32 бита PAE:

apt-get install -y xen-hypervisor-3.2-1-i386 xen-linux-system-2.6.26-2-xen-686 bridge-utils


Увеличиваем число loop устройств:
vi /etc/modules


И заменяем там loop на:
loop max_loop=255

Bridged сеть

Открываем конфиг Xen:
vi /etc/xen/xend-config.sxp

Теперь вносим следующую коррективу (это настройка сети в режиме bridged, она рекомендуется стандартно):

#(network-script network-dummy)
(network-script network-bridge)

Routed сеть (мануал не работает! Прошу не использовать! )

Или если требуется (например, в FastVPS.ru это единственно возможный вариант) раутед сеть, то делаем следующее:
vi /etc/sysctl.conf

Добавляем следующее (включаем форвардинг пакетов):
net.ipv4.ip_forward = 1
net.ipv4.conf.all.proxy_arp = 1

Также открываем конфиг Xen:
vi /etc/xen/xend-config.sxp

И комментируем там строки:
#(vif-script vif-bridge)
#(network-script network-bridge)

И раскомментируем две другие строки (они рядом со 160й строкой):
(network-script network-route)
(vif-script vif-route)

Перезагружаемся:
shutdown -r now


Убеждаемся, что работаем на Xen ядре:
uname -a
Linux e82-103-142-170s 2.6.18-6-xen-686 #1 SMP Thu Nov 5 19:54:42 UTC 2009 i686 GNU/Linux

Вот и все :)

Источник информации по routed: http://www.devco.net/archives/2007/10/18/xen_bridging_and_hetzner.php

Thursday, 30 April 2009

Генерация UUID и MAC для Xen DomU

Сабж. В конфиг файлах Xen есть два параметра, которые я не совсем понимал как генерировать.

uuid = "31714e2e-4433-4163-d9e9-9480d1a619c9"
vif = [ "mac=00:16:3e:60:ce:6d,bridge=xenbr0" ]


Из документации по Xen выяснилось, что uuid генерируется программой uuidgen.
А вот как сгенерировать уникальный в пределах системы Mac ? Для этого есть спецовый скрипт: http://www.easyvmx.com/software/easymac.sh запускаем так: ./easymac.sh xen и на выходе получаем МАК адрес :)

Saturday, 25 April 2009

Кратенькая шпаргалка по установке Centos 53 в DomU через virt-install

Вот примерно так :)
virt-install
Would you like a fully virtualized guest (yes or no)? This will allow you to run unmodified operating systems. no
What is the name of your virtual machine? isp_primary_dns
How much RAM should be allocated (in megabytes)? 512
What would you like to use as the disk (file path)? /dev/hosting_vps_disks/isp_primary_dns
Would you like to enable graphics support? (yes or no) no
What is the install location? http://mirror.yandex.ru/centos/5.3/os/x86_64/


Starting install...

Friday, 24 April 2009

Xen, диски и надежность

Вот недавно писал мануал, как ставить Xen DomU через virt-install и предлагал ставить в LVM раздел как в блочное устройство (т.е. создавать таблицу разделов, там создавать разделы и прочее), а не как в обычный раздел. Как бэ проблема-то фигня, но сразу возникает ряд косяков -- очень неудобно монтировать, когда в дамп сунут целый диск, а не раздел (да, да, надо считать offset и так криво монтировать) + неудобство проверки тулзами типа fsck + неудобство копирования, нельзя просто легко примонтировать бэкап раздел и слить файлы, надо юзать dd и перетаскивать весь диск.

Т.о. сейчас у меня две машинки пойдут в реинсталл "как правильно", дада, за тупость и недальновидность мышления надо платить рутиной.

Да, кстати, вот обалденный мануал: http://wiki.centos.org/HowTos/Xen/InstallingCentOSDomU но он тоже "не как надо" :(

Tuesday, 3 March 2009

Установка XEN на Centos 5.2 x86_64: Dom0

Установка гипервизора XEN на Centos 5.2 x86_64.

Установим ядро, способное работать в Dom0, и сам гипервизор:
yum install xen kernel-xen

Проследим, какие изменения происходят в конфиге GRUB.

/boot/grub/menu.lst до установки:

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You do not have a /boot partition. This means that
# all kernel and initrd paths are relative to /, eg.
# root (hd0,0)
# kernel /boot/vmlinuz-version ro root=/dev/sda1
# initrd /boot/initrd-version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-92.1.22.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-92.1.22.el5 ro root=LABEL=/
initrd /boot/initrd-2.6.18-92.1.22.el5.img
title CentOS (2.6.18-92.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-92.el5 ro root=LABEL=/
initrd /boot/initrd-2.6.18-92.el5.img



/boot/grub/menu.lst после установки:

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You do not have a /boot partition. This means that
# all kernel and initrd paths are relative to /, eg.
# root (hd0,0)
# kernel /boot/vmlinuz-version ro root=/dev/sda1
# initrd /boot/initrd-version.img
#boot=/dev/sda
default=1
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-92.1.22.el5xen)
root (hd0,0)
kernel /boot/xen.gz-2.6.18-92.1.22.el5
module /boot/vmlinuz-2.6.18-92.1.22.el5xen ro root=LABEL=/
module /boot/initrd-2.6.18-92.1.22.el5xen.img
title CentOS (2.6.18-92.1.22.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-92.1.22.el5 ro root=LABEL=/
initrd /boot/initrd-2.6.18-92.1.22.el5.img
title CentOS (2.6.18-92.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-92.el5 ro root=LABEL=/
initrd /boot/initrd-2.6.18-92.el5.img



Как видим, xen не был выбран стандартным для загрузки, стандартным осталось обычное ядро. Нам нужно default 1 исправить на default 0 и ребутнуца: shutdown -r now


После ребута, мы должны увидеть нечто вот такое:
uname -r
2.6.18-92.1.22.el5xen
, это означает, что гипервизор запустился нормально и наше Dom0 ядро под ним также отлично работает.

Ну что, можно уже использовать консоль управления XEN, пока в ней лишь наше Dom0 ядро:
xm list
Name ID Mem(MiB) VCPUs State Time(s)
Domain-0 0 7931 4 r----- 16.6

Также стоит проверить, запустился ли служебный демон XENа -- /etc/init.d/xend status
Ну вот, с установкой гипервизора закончено, установку ОС в DomU рассмотрим в последующих статьях.