Linux: Виртуализация Xen с человеческим лицом в CentOS 5
Мне очень понравилось как организована виртуализация на базе Xen в CentOS 5. В этом топике я вкрадце расскажу о настройке минималистичного CentOS с виртуализацией Xen. Хост желательно должен поддерживать 64 битные инструкции, аппаратную виртуализацию и т.п. В моем случае использовался процессор Intel Core 2 Quad 9500.
Скачиваем и устанавливаем CentOS 5.5. Список зеркал здесь (64 битная версия необходима для того, чтобы запускать 64 битные гостевые ОС):
isoredirect.centos.org/centos/5/isos/x86_64/
Чтобы не скачивать целый DVD, скачаем isoшник вида CentOS-5.5-x86_64-bin-1of8.iso. Возможно понадобится еще один из дисков — имеем это ввиду.
При установке снимаем все галочки с предлагаемых наборов пакетов. Все что нам нужно скачаем позже с помощью менеджера пакетов yum:
![](/uploads/images/2/1/7/c/4/a6d5a8a3a2.png)
![](/uploads/images/6/7/a/d/4/12e2b23926.png)
Несмотря на то, что устанавливаем абсолютный минимум, ребята из CentOS усудрились размазать базовые пакеты по нескольким дискам. Докачиваем еще один диск:
![](/uploads/images/7/0/f/e/4/8b59397424.png)
![](/uploads/images/e/7/b/2/4/a084967f18.png)
Система установлена. Перезагружаемся, заходим в консоль:
Будут установлены ядро с поддержкой xen, bridge-utils для работы с сетью.
Устанавливаем X сервер:
Нам не помешает графическая утилита для работы с lvm, так как использовать lvm разделы для виртуальных машин быстрее и удобнее, чем хранить образы жестких дисков в файлах:
Перезагружаемся. При загрузке выбираем ядро с суффиксом xen.
Запускаем X сервер:
Запускаем менеджер lvm в xterm:
![](/uploads/images/e/d/5/7/4/10c0ed8620.png)
Я создал 1 lvm раздел gate объемом 10 Гб. Этот раздел будет использоваться как жесткий диск нашей виртуальной машины:
![](/uploads/images/a/3/1/0/4/d442dfa140.png)
Запускаем virt-manager:
Как видно, мы не подключены к гипервизору Xen:
![](/uploads/images/f/2/f/3/4/9542bdc558.png)
Подключаемся с помощью File->Add Connection:
![](/uploads/images/4/4/4/5/4/327b2f7b44.png)
Теперь мы видим наш Domain-0:
![](/uploads/images/8/6/6/0/4/1c2908f11a.png)
Создаем виртуальную машину (выбираем в списке localhost и жмем на кнопку New):
![](/uploads/images/2/f/8/9/4/671ffff926.png)
![](/uploads/images/6/8/6/3/4/48b6084d1d.png)
Т.к. процессор поддерживает виртуализацию, выбираем полную виртуализацию и архитектуру гостевой ОС:
![](/uploads/images/8/4/0/a/4/fdc8c1f119.png)
Выбираем источник для установки ОС. В моем случае использовался iso образ:
![](/uploads/images/0/2/3/1/4/8a2e394eb3.png)
![](/uploads/images/4/a/8/3/4/c500219778.png)
Указываем путь к lvm разделу:
![](/uploads/images/2/b/6/6/4/08e53a2205.png)
Используем нашу сетевую карту в режиме моста:
![](/uploads/images/e/1/f/b/4/5fb2c5d9b9.png)
Выделяем ресурсы:
![](/uploads/images/e/6/6/f/4/9e0e28e9da.png)
После создания виртуальной машины, она будет запущена:
![](/uploads/images/4/9/a/4/4/9ca4df943b.png)
![](/uploads/images/e/7/d/c/4/5189f3bb4d.png)
![](/uploads/images/a/4/f/f/4/d21961b222.png)
Вот так просто!
upd:
Заметил: если у виртуальной машины включить старт при запуске сервера — после перезагрузки сервера она все равно не стартует. Необходимо создать символическую ссылку /etc/xen/название-виртуальной-машины в /etc/xen/auto/название-виртуальной-машины
Скачиваем и устанавливаем CentOS 5.5. Список зеркал здесь (64 битная версия необходима для того, чтобы запускать 64 битные гостевые ОС):
isoredirect.centos.org/centos/5/isos/x86_64/
Чтобы не скачивать целый DVD, скачаем isoшник вида CentOS-5.5-x86_64-bin-1of8.iso. Возможно понадобится еще один из дисков — имеем это ввиду.
При установке снимаем все галочки с предлагаемых наборов пакетов. Все что нам нужно скачаем позже с помощью менеджера пакетов yum:
![](/uploads/images/2/1/7/c/4/a6d5a8a3a2.png)
![](/uploads/images/6/7/a/d/4/12e2b23926.png)
Несмотря на то, что устанавливаем абсолютный минимум, ребята из CentOS усудрились размазать базовые пакеты по нескольким дискам. Докачиваем еще один диск:
![](/uploads/images/7/0/f/e/4/8b59397424.png)
![](/uploads/images/e/7/b/2/4/a084967f18.png)
Система установлена. Перезагружаемся, заходим в консоль:
yum install virt-manager xen
Будут установлены ядро с поддержкой xen, bridge-utils для работы с сетью.
Устанавливаем X сервер:
yum groupinstall "X Window System"
Нам не помешает графическая утилита для работы с lvm, так как использовать lvm разделы для виртуальных машин быстрее и удобнее, чем хранить образы жестких дисков в файлах:
yum install system-config-lvm
Перезагружаемся. При загрузке выбираем ядро с суффиксом xen.
Запускаем X сервер:
startx
Запускаем менеджер lvm в xterm:
system-config-lvm
![](/uploads/images/e/d/5/7/4/10c0ed8620.png)
Я создал 1 lvm раздел gate объемом 10 Гб. Этот раздел будет использоваться как жесткий диск нашей виртуальной машины:
![](/uploads/images/a/3/1/0/4/d442dfa140.png)
Запускаем virt-manager:
virt-manager
Как видно, мы не подключены к гипервизору Xen:
![](/uploads/images/f/2/f/3/4/9542bdc558.png)
Подключаемся с помощью File->Add Connection:
![](/uploads/images/4/4/4/5/4/327b2f7b44.png)
Теперь мы видим наш Domain-0:
![](/uploads/images/8/6/6/0/4/1c2908f11a.png)
Создаем виртуальную машину (выбираем в списке localhost и жмем на кнопку New):
![](/uploads/images/2/f/8/9/4/671ffff926.png)
![](/uploads/images/6/8/6/3/4/48b6084d1d.png)
Т.к. процессор поддерживает виртуализацию, выбираем полную виртуализацию и архитектуру гостевой ОС:
![](/uploads/images/8/4/0/a/4/fdc8c1f119.png)
Выбираем источник для установки ОС. В моем случае использовался iso образ:
![](/uploads/images/0/2/3/1/4/8a2e394eb3.png)
![](/uploads/images/4/a/8/3/4/c500219778.png)
Указываем путь к lvm разделу:
![](/uploads/images/2/b/6/6/4/08e53a2205.png)
Используем нашу сетевую карту в режиме моста:
![](/uploads/images/e/1/f/b/4/5fb2c5d9b9.png)
Выделяем ресурсы:
![](/uploads/images/e/6/6/f/4/9e0e28e9da.png)
После создания виртуальной машины, она будет запущена:
![](/uploads/images/4/9/a/4/4/9ca4df943b.png)
![](/uploads/images/e/7/d/c/4/5189f3bb4d.png)
![](/uploads/images/a/4/f/f/4/d21961b222.png)
Вот так просто!
upd:
Заметил: если у виртуальной машины включить старт при запуске сервера — после перезагрузки сервера она все равно не стартует. Необходимо создать символическую ссылку /etc/xen/название-виртуальной-машины в /etc/xen/auto/название-виртуальной-машины
Комментарии (4)
RSS свернуть / развернутьДавно пора было этой технологии (xen) обзавестись человеческим лицом.
yababay
Но я ко всему подхожу с позиции практики — мне нужно чтобы работало
а модно это или нет — все равно)
Sergei_T
akam
смотреть рабочий стол виртуальных машин и тп
они потребляют не много
думаю при нынешних мощностях + 100Мб памяти ничего не решат
Sergei_T
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.