Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
Приложение B. Упражнение 2
Живая миграция
Цель: Настроить и выполнить живую миграцию между двумя узлами.
Необходимо: Две рабочие станции с системой Red Hat Enterprise Linux 5.0 Beta 2 с платформой виртуализации и установленный на одной из машин гость Xen Fedora Core 6.
В ходе данного упражнения вы выполните настройку и живую миграцию между двумя узлами.
Прежде чем начать
Вам понадобятся два узла виртуализации, которые мы обозначим
host1
и host2
, соединенные между собой через кабель UTP. Один из узлов экспортирует разделяемое хранилище через NFS. Для успешной миграции надо выполнить необходимую настройку узлов. Гостевая система Xen расположена в разделяемом хранилище, и на ней должен быть установлен потоковый сервер. Убедитесь, что потоковый сервер работает без каких-либо прерываний так, чтобы можно было осуществить живую миграцию.
Последовательность 1. Конфигурация xend (для обоих узлов).
В ходе данной последовательности вы выполните конфигурацию xend с целью его запуска в качестве HTTP-сервера и сервера перемещения. Демон xend не инициирует HTTP-сервер по умолчанию, а запускает сервер управления сокетами домена UNIX (для
xm
). Для активации живой миграции между двумя машинами надо настроить ее поддержку.
- Создайте резервную копию файла
xend-config.sxp
:cp -pr /etc/xen/xend-config.sxp /etc/xen/xend-config.sxp.default
- Внесите следующие изменения в файл
/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$')
- Перезапустите xend командой
service xend restart
.
Последовательность 2. Экспорт разделяемого хранилища через NFS.
В ходе данного упражнения вы настроите NFS и выполните экспорт разделяемого хранилища.
- Добавьте строку
/xen *(rw,sync,no_root_squash)/
в файл/etc/exports
. - Сохраните
/etc/exports
и перезапустите сервер NFS. Убедитесь, что запуск сервера NFS выполняется по умолчанию:service nfs start chkconfig nfs on
. - После старта сервера NFS на
host1
можно его подключить кhost2
:mount host1:/xen /xen
. - Запустите гостевую систему Xen на узле
host1
и выберитеfc6-pv1
(илиfc6-pv2
из первого упражнения):xm create -c fc6-pv1
Последовательность 3. Установка потокового сервера гостя Xen.
В ходе выполнения данной последовательности вы выполните установку потокового сервера gnump3d. gnump3 был выбран для демонстрации, поскольку он поддерживает файлы OGG vorbis. Кроме того, его легко установить и настроить.
- Загрузите архив
gnump3d-2.9.9.9.tar.bz2
сhttp://www.gnump3d.org/
. Распакуйте его вgnump3d-2.9.9.9/
, затем выполните компиляцию и установите gnump3d с помощью командыtar xvjf gnump3d-2.9.9.9.tar.bz2\ncd gnump3d-2.9.9.9/\nmake install
. - Create a
/home/mp3
directory and copy TruthHappens.ogg from Red Hat's Truth Happens page tomkdir /home/mp3wget -c http://www.redhat.com/v/ogg/TruthHappens.ogg
- Запустите потоковый сервер
command:gnump3d
- На любом узле Xen запустите проигрыватель Movie Player путем выбора «Приложения», «Звук и видео», «Movie Player».
- Нажмите «Movie», «Open Location» и введите http://guest:8888/TruthHappens.ogg
Последовательность 4. Выполнение живой миграции.
- Запустите файл
TruthHappens.ogg
на одном из Xen узлов. - Выполните живую миграцию с
host1
наhost2
:xm migrate –live fc6-pv1 host2
- Откройте несколько окон терминалов на обоих узлах:
watch -n1 xm list
- Понаблюдайте за процессом миграции. Обратите внимание, сколько времени это займет.
Дополнительная последовательность: Настройка сервера VNC из гостевой системы.
If time permits, from within the Xen guest, configure the VNC server to initiate when
gdm
starts up. Run VNC viewer and connect to the Xen guest. Play with the Xen guest when the live migration occurs. Attempt to pause/resume, and save/restore the Xen guest and observe what happens to the VNC viewer. If you connect to the VNC viewer via localhost:590x
, and do a live migration, you won't be able to connect to the VNC viewer again when it dies. This is a known bug.