Создание гостевого домена Xen

Материал из Xgu.ru

Перейти к: навигация, поиск
Короткий URL: xen/domains

Существует несколько способов подготовки образа гостевой системы.

  1. Инсталляция средствами базовой операционной системы;
  2. Использование инсталлятора гостевой ОС;
  3. Использование готового образа;
  4. Преобразование образа виртуальной машины из другой системы виртуализации;
  5. Использование диска реальной машины.

Содержание

[править] Инсталляция средствами базовой операционной системы

Этот способ является основным для Xen.

Подготовка образа для использования в качестве дискового раздела в домене domU состоит из двух этапов:

  1. Создание собственно файла/раздела образа и файловой системы внутри него
  2. Наполнение образа операционной системой

Создание собственно образа выполняется очень просто.

# dd if=/dev/zero of=domU-disk.img bs=1024k count=<размер_в_MB>
# mkfs.ext3 domU-disk.img

Или, если вы используете LVM:

%# lvcreate -L<размер_в_MB>M -n domU /dev/TURBO
%# mkfs.ext3 /dev/TURBO/domU

Здесь:

  • domU — имя логического тома;
  • /dev/TURBO — имя группы томов, где создаётся логический том (группа томов должна существовать, и на ней должно быть достаточно места, подробнее: LVM).

Затем этот образ монтируется и наполняется.

Вот, например, как это можно сделать в Debian GNU/Linux:

%# mount -o loop domU-disk.img /mnt
%# #для LVM: mount /dev/TURBO/domU /mnt
%# debootstrap etch /mnt

В результате, в каталоге /mnt будет установлена операционная система Debian GNU/Linux, дистрибутив etch.

Подробнее процедура инсталляции описана здесь.

[править] Использование инсталлятора гостевой операционной системы

Этот способ требует наличия возможностей аппаратной виртуализации у базовой системы или поддержки архитектуры Xen инсталлятором гостевой ОС. На сегодняшний день список инсталляторов ОС, готовых к использованию в паравиртуальном режиме Xen, пуст.

При инсталляции в режиме аппаратной виртуализации все выглядит так же, как и при инсталляции виртуальной машины в других системах.

Процесс подготовки нового домена состоит из трех этапов:

  1. Создание конфигурационного файла домена;
  2. Подготовка пустого образа для дискового раздела гостевого домена;
  3. Запуск виртуальной машины.

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

Когда она завершится, необходимо будет отредактировать конфигурационный файл домена: указать загрузку с диска вместо загрузки с CD.

Этот метод используется при подготовке гостевых доменов Windows.

[править] Использование готового образа

Если вы создаете не первый домен, вы можете взять образ существующего домена за основу. Можно подготовить образцовые домены разного предназначения и при необходимости копировать и дорабатывать их.

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

В этом случае подготовка дискового раздела сводится к простому выкачиванию файла из сети. После того как образ получен, нужно создать конфигурационный файл домена, в котором указать этот образ в качестве дискового раздела. Затем, стартануть новый домен.

Как правило, в комплекте с образом уже есть готовый к использованию конфигурационный файл домена. Можно использовать его, но только перед этим проверить и при необходимости изменить пути в именах файлов, в частности, в имени ядра, и параметры домена - память, сетевые интерфейсы и другие.

Этот способ может использоваться как для экспериментов, так и для создания полноценных гостевых доменов. Готовые образы поддаются доработке и расширению.

[править] Образы domU различных операционных систем

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

Для того чтобы использовать образ, необходимо:

  1. Настроить Xen в домене 0
  2. Получить желаемый образ domU
  3. Создать конфигурационный файл для новой виртуальной машины, указывающий на полученный образ domU
  4. Запустить новую виртуальную машину

Linux:

  • http://jailtime.org/
  • http://xen-get.org/ (не работает)
  • JumpBox — коммерческий проект, но (возможно, пока) образы для Xen они распространяют свободно. Большой выбор интересных виртуальных приспособ (virtual aplliance), заточенных и готовых к использованию.

FreeBSD:

NetBSD:

OpenSolaris:

HVM'

Также существуют репозитории образов, предназначенных для непосредственного исполнения процессором. Эти образы можно использовать в Xen в режиме аппаратной виртуализации.

  • Коллекция образов на Free OS Zoo (англ.) — здесь образы качаются только через BitTorrent
  • Stuff for QEMU (англ.) — некоторые образы для QEMU (можно запускать и в Xen) (больше не доступен, хостермонстер в 2009 году прописал бороду, мотивировав "Linux images are not web content" и что они занимают слишком много места, так что : No longer here - QEMU images :[ )

[править] Использование диска реальной машины

Изысканная конфигурация. В домене исполняется образ, который с помощью DRBD сейчас переливается с реальной машины внутрь виртуальной
Основная страница: Экспорт установленной системы в домен Xen

В качестве диска для гостевой системы, запускающейся как домен Xen, может использоваться жёсткий диск существующей машины.

Это можно сделать следующим образом:

  • побайтно скопировать дисковые разделы реальной машины в файлы или дисковые разделы Xen-системы;
  • физически переставить диск из реальной машины в Xen-систему;
  • при помощи протоколов iSCSI или AoE сделать диск реальной системы доступным внутри системы виртуализации удалённо.

Виртуальную машину можно запускать как в режиме аппаратной виртуализации, так и в режиме паравиртуального исполнения.

В последнем случае при загрузке нового домена нужно использовать не старое ядро системы, а ядро, подготовленное для Xen (за исключением случая, когда ядро гостевой системы поддерживает pv_ops). Поэтому, при необходимости, не забудьте скопировать модули нового ядра на диск гостевой системы:

%# mount /dev/hdb1 /mnt
%# cp -r /lib/modules/2.6.16-xenU /mnt/lib/modules

Здесь:

  • /dev/hdb1 - корневой дисковый раздел гостевой системы;
  • 2.6.16-xenU - точное название ядра, под управлением которого будет работать гостевой домен.

Этот способ, выполненный в обратном направлении, позволяет превращать виртуальные машины Xen в реальные. Для этого нужно:

  1. Подготовить виртуальную машину Xen на отдельном диске
  2. Проинсталлировать из реальной системы на диск домена загрузчик
  3. Установить в виртуальной системе реальное ядро
  4. Указать в конфигурационном файле загрузчика в виртуальной системе использовать реальное ядро
  5. Отредактировать /etc/fstab с учётом того, как диск будет виден в реальной системе
  6. Запустить реальную систему с нового раздела (после перезагрузки, на этой же машине; или переставив диск с разделом в другую машину).

[править] См. также

Xen
Xen

Виртуализация и паравиртуализация
Эмуляция | Виртуализация | Паравиртуализация | Рекурсивная виртуализация
Паравиртуальные драйверы | Виртуализация ввода/вывода

Общие вопросы по Xen
Аппаратные требования Xen | Поддержка Xen операционными системами | Поддерживаемые аппаратные архитектуры |
Примеры использования Xen | Сравнение виртуальных машин |
Хостинг на Xen
Альтернативы Xen

свободные: KVM | LXC | OpenVZ | VServer | QEMU | VirtualBox
проприетарные: Hyper-V | VMware ESX Server

Технические вопросы
Инсталляция Xen | Конфигурационный файл домена
ОС в Xen: Linux small icon.png Linux | Solaris small icon.png OpenSolaris | Freebsd small icon.png FreeBSD | Openbsd small icon.png OpenBSD | Netbsd small icon.png NetBSD | Windows xp small icon.png Windows XP | Windows vista small icon.png Windows Vista
Устройства: Блочные | USB | SCSI | Сеть | PV-драйверы для Linux | PV-драйверы для Windows | Консоль

Распределение ресурсов между доменами | Перенос системы внутрь Xen | HVM -> PV

Управление и кластеризация | Enomalism | Xen+DRBD | Ganeti | Convirt 2.0 | SkyCover Infrastructure