The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Виртуализация с Xen. Живая миграция (linux redhat fedora centos xen migration virtual)


<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>
Ключевые слова: linux, redhat, fedora, centos, xen, migration, virtual,  (найти похожие документы)
From: Lynz <http://red-hat-moscow-times.blogspot.com>; Date: Mon, 14 Jan 2007 14:31:37 +0000 (UTC) Subject: Виртуализация с Xen. Живая миграция Оригинал: http://red-hat-moscow-times.blogspot.com/2007/08/xen.html После конференции 26 марта 2007 мы получили достаточно много вопросов касательно живых демонстраций. Поэтому мы решили рассказать о том, на каких технологиях он были основаны, как организованы, и как их можно повторить. Для демонстрации использовались 2 сервера и 2 клиента. Виртуальная машина, с которой велась трансляция, мигрировала между серверами. Один клиент использовался в качестве управляющей станции, со второго собственно демонстрировалась трансляция. Клиентов, в принципе, можно объединить в одного. Соединены все машины были через обычный 100 Mbit Ethernet. Далее используются следующие имена машин: xen_host_1 - первый физический сервер xen_host_2 - второй физический сервер virt_server - виртуальный сервер Подготовка демонстрации 1. Установите на xen_host_1 и xen_host_2 Red Hat Enterprise Linux 5 с поддержкой виртуализации. 2. Установите на xen_host_1 в виртуальную машину virt_server паравиртуализованный Red Hat Enterprise Linux 5. 3. После установки отредактируйте /etc/xen/virt_server, приведите его к следующему вид: #vnc=1 #vncunused=1 sdl=1 Это необходимо, чтобы можно было осуществить живую миграцию данной виртуальной машины. 4. Теперь необходимо настроить xen на xen_host_1 и xen_host_2 таким образом, чтобы он позволял осуществить миграцию между двумя физическими серверами. Для этого внесите следующие изменения в /etc/xen/xend-config.sxp на обоих машинах: #(xend-unix-server yes) (xend-relocation-server yes) (xend-relocation-port 8002) (xend-relocation-address '') (xend-relocation-hosts-allow '') #(xend-relocation-hosts-allow '^localhost$ ^localhost\\.localdomain$') После этого перезапустите xen service xend restart 5. Теперь нам необходимо, чтобы оба физические сервера видели общее хранилище, на котором находятся данные виртуальной машины. Кроме того, необходимо, чтобы оно было смонтировано по одинаковому пути. Это требуется потому, что при миграции виртуальной машины ее файловая система не копируется, так как это требовало бы слишком много времени даже в случае быстрой сети. В нашем распоряжении не было внешнего накопителя, но это не стало препятствием. Мы использовали NFS. На xen_host_1 (на котором установлен virt_server) в /etc/exports добавьте строку: /xen *(rw,sync,no_root_squash) После этого перезапустите NFS и убедитесь, что сервис стартует автоматически: service nfs restart chkconfig nfs on 6. Смонтируйте созданную папку на xen_host_2: mount xen_host_1:/xen /xen 7. Запустите виртуальный сервер на xen_host_1 xm create -c virt_server 8. Установите сервер потокового видео на virt_server. Мы использовали gnump3d. Для установки скачайте с http://www.gnump3d.org/ архив gnump3d-2.9.9.9.tar.bz2 (620k), распакуйте и скомпилируйте его. tar xjvf gnump3d-2.9.9.9.tar.bz2 cd gnump3d-2.9.9.9/ make install 9. Включите трансляцию. По умолчанию сервер настроен на трансляцию содержимого директории /home/mp3/. mkdir /home/mp3 cd /home/mp3 wget -c [10]http://www.redhat.com/v/ogg/TruthHappens.ogg gnump3d & Теперь все готово к демонстрации. На клиентской машине нам потребуется любой видеоплеер, поддерживающий http. Мы использовали totem. Демонстрация 1. Запустите просмотр трансляции на клиенте. В случае totem для этого нажмите 'Movie', затем 'Open Location' и введите http://virt_server:8888/TruthHappens.ogg 2. Остановите виртуальный сервер. Для этого на xen_host_1 выполните xm pause virt_server В течение некоторого времени после остановки виртуальной машины (как правило, нескольких секунд) клиент будет продолжать показывать ролик из буфера плеера. После того, как буфер закончится, трансляция прервется. Теперь Вы знаете размер буфера в секундах. :) 3. Снимите виртуальный сервер с паузы. Для этого на xen_host_1 выполните xm unpause virt_server 4. Вновь запустите трансляцию на клиенте. 5. Выполните живую миграцию сервера без остановки трансляции. Для этого на xen_host_1 выполните xm migrate -l virt_server xen_host_2 Процесс занимает несколько десятков секунд. Следить за миграцией можно с помощью команды xm list на обоих физических серверах. Трансляция при миграции не рвется. Клиент никак не замечает, что виртуальная машина переносится на другой физический сервер. Так как Вы только что измерили размер буфера плеера, можете быть уверены, что все честно. :)

<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру