Меню Рубрики

Запуск linux под xen

ИТ База знаний

Полезно

— Узнать IP — адрес компьютера в интернете

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Калькулятор инсталляции IP — АТС Asterisk

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Навигация

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

Популярное и похожее

Как включить Hyper-V в Windows

Гайд по продуктам VMware

Передача файлов на виртуальную машину Hyper-V

Как включить Hyper-V в Windows

Обзор аппаратного обеспечения VMware: обновление и совместимость

Гайд по продуктам VMware

Оптимизация гипервизора Hyper-V

Openvox DGW-1004

Еженедельный дайджест

Начало работы с виртуализацией Xen в CentOS

Добро пожаловать в статью, посвященную началу работы с виртуализацией Xen на CentOS. Xen — это гипервизор с открытым исходным кодом, позволяющий параллельно запускать различные операционные системы на одной хост-машине. Этот тип гипервизора обычно называют гипервизором №1 в мире виртуализации.

Xen используется в качестве основы для виртуализации серверов, виртуализации настольных ПК, инфраструктуры как услуги (IaaS) и встраиваемых/аппаратных устройств. Возможность работы нескольких гостевых виртуальных машин на физическом хосте может значительно повысить эффективность использования основного оборудования.

Передовые возможности Xen гипервизора

  1. Xen не зависит от операционной системы – основным стеком управления (который называется domain 0 (домен 0)) может быть Linux, NetBSD, OpenSolaris и так далее.
  2. Возможность изоляции драйвера — Xen может разрешить основному системному драйверу устройства работать внутри виртуальной машины. Виртуальная машина может быть перезагружена в случае отказа или сбоя драйвера без воздействия на остальную часть системы.
  3. Поддержка паравиртуализации (Paravirtualization — это тип виртуализации, в котором гостевая операционная система перекомпилируется, устанавливается внутри виртуальной машины и управляется поверх программы гипервизора, работающей на ОС хоста.): это позволяет полностью паравиртуализированным хостам работать гораздо быстрее по сравнению с полностью виртуализированным гостем, использующим аппаратные расширения виртуализации (HVM).
  4. Небольшие размеры и интерфейс. В гипервизоре Xen используется микроядерное устройство, размер которого составляет около 1 МБ. Этот небольшой объем памяти и ограниченный интерфейс гостя делают Xen более надежным и безопасным, чем другие гипервизоры.

Пакеты Xen Project

Пакеты Xen Project состоят из:

  • Ядро Linux с поддержкой Xen Project
  • Сам гипервизор Xen
  • Модифицированная версия QEMU — поддержка HVM
  • Набор пользовательских инструментов

Компоненты Xen

Гипервизор Xen Project отвечает за обработку процессора, памяти и прерываний, поскольку он работает непосредственно на оборудовании. Он запускается сразу после выхода из загрузчика. Домен/гость — это запущенный экземпляр виртуальной машины.

Ниже приведен список компонентов Xen Project:

  1. Гипервизор Xen Project работает непосредственно на оборудовании. Гипервизор отвечает за управление памятью, процессором и прерываниями. Он не знает о функциях ввода-вывода, таких как работа в сети и хранение.
  2. Область контроля (Домен 0): Domain0 — специальная область, которая содержит драйверы для всех устройств в хост-системе и стеке контроля. Драйверы управляют жизненным циклом виртуальной машины — созданием, разрушением и конфигурацией.
  3. Гостевые домены/виртуальные машины — гостевая операционная система, работающая в виртуализированной среде. Существует два режима виртуализации, поддерживаемых гипервизором Xen:
    • Паравиртуализация (PV)
    • Аппаратная поддержка или полная виртуализация (HVM)
  4. Toolstack и консоль: Toolstack — это стек управления, в котором Domain 0 позволяет пользователю управлять созданием, конфигурацией и уничтожением виртуальных машин. Он предоставляет интерфейс, который можно использовать в консоли командной строки. На графическом интерфейсе или с помощью стека облачной оркестрации, такого как OpenStack или CloudStack. Консоль — это интерфейс к внешнему миру.

PV против HVM

Паравиртуализация (PV — Paravirtualization )

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

Функции, реализованные в системе Paravirtualization, включают:

  • Сигнал прерывания и таймеры
  • Драйверы дисков и сетевые драйверы
  • Эмулированная системная плата и наследуемый вариант загрузки (Legacy Boot)
  • Привилегированные инструкции и таблицы страниц

Аппаратная виртуализация (HVM — Hardware-assisted virtualization ) — полная виртуализация

  • Использует расширения виртуальной машины ЦП от ЦП хоста для обработки гостевых запросов.
  • Требуются аппаратные расширения Intel VT или AMD-V.
  • Полностью виртуализированные гости не требуют поддержки ядра. Следовательно, операционные системы Windows могут использоваться в качестве гостя Xen Project HVM.
  • Программное обеспечение Xen Project использует Qemu для эмуляции аппаратного обеспечения ПК, включая BIOS, контроллер диска IDE, графический адаптер VGA, контроллер USB, сетевой адаптер и так далее
  • Производительность эмуляции повышается за счет использования аппаратных расширений.
  • С точки зрения производительности, полностью виртуализированные гости обычно медленнее, чем паравиртуализированные гости, из-за необходимой эмуляции.
  • Обратите внимание, что можно использовать PV драйверы для ввода-вывода, чтобы ускорить гостевой HVM

Драйверы PVHVM — PV-on-HVM

  1. Режим PVH сочетает в себе лучшие элементы HVM и PV
  2. Позволяет виртуализированным аппаратным гостям использовать PV диск и драйверы ввода-вывода
  3. Никаких изменений в гостевой ОС
  4. Гости HVM используют оптимизированные драйверы PV для повышения производительности — обходят эмуляцию дискового и сетевого ввода-вывода, что приводит к повышению производительности в системах HVM.
  5. Оптимальная производительность на гостевых операционных системах, таких как Windows.
  6. Драйверы PVHVM требуются только для гостевых виртуальных машин HVM (полностью виртуализированных).

Установка Xen в CentOS 7.x

Чтобы установить среду Xen Hypervisor, выполните следующие действия.

1) Включите репозиторий CentOS Xen

2) Обновите ядро и установите Xen:

sudo yum -y update kernel && sudo yum -y install xen

3) Настройте GRUB для запуска Xen Project.

Поскольку гипервизор запускается перед запуском ОС, необходимо изменить способ настройки процесса загрузки системы:

Измените объем памяти для Domain0, чтобы он соответствовал выделенной памяти.

4) Запустите скрипт grub-bootxen.sh , чтобы убедиться, что grub обновлен /boot/grub2/grub.cfg

Подтвердите изменение значений:

grep dom0_mem /boot/grub2/grub.cfg

5) Перезагрузите свой сервер

6) После перезагрузки убедитесь, что новое ядро работает:

7) Убедитесь, что Xen работает:

Развертывание первой виртуальной машины

На этом этапе вы должны быть готовы к началу работы с первой виртуальной машиной. В этой демонстрации мы используем virt-install для развертывания виртуальной машины на Xen.

Установка HostOS в Xen называется Dom0. Виртуальные машины, работающие через Xen, называются DomU.

Если вы хотите управлять виртуальными машинами DomU с помощью графического приложения, попробуйте установить virt-manage r

Было полезно?

Почему?

😪 Мы тщательно прорабатываем каждый фидбек и отвечаем по итогам анализа. Напишите, пожалуйста, как мы сможем улучшить эту статью.

😍 Полезные IT – статьи от экспертов раз в неделю у вас в почте. Укажите свою дату рождения и мы не забудем поздравить вас.

Источник

Linux в Xen

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

На этой странице описана процедура подготовки гостевой системы под управлением Linux для работы в качестве пользовательского домена Xen (domain U).

Содержание

[править] Начальные требования

Для выполнение описанных ниже действий необходимо наличие проинсталлированной и настроенной хост-системы Xen (домена 0). Как это сделать описано на странице Инсталляция Xen.

Предполагается, что в домене 0 установлен Debian GNU/Linux. Для других дистрибутивов некоторые действия будут выполняться иначе.

[править] Подготовка образа гостевой системы

[править] Подготовка дисковых разделов для использования в качестве дисков виртуальной машины

Для того чтобы разделы виртуальной машины соответствовали дисковым разделам реальной машины, используйте следующие шаги:

В том случае, если в виртуальной машине должно быть несколько дисковых разделов, подготовьте их. Например, для /usr:

Если вам необходимо пространство подкачки (swap) в виртуальной машине, подготовьте его с помощью команды mkswap:

[править] Подготовка файлов для использования в качестве диска виртуальной машины

Создайте файл для использования в качестве основного диска виртуальной машины.

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

(группа томов TURBO или группа с другим названием, которое вы используете, должна существовать и иметь достаточно места; подробнее: LVM).

В том случае, если в виртуальной машине должно быть несколько дисковых разделов, подготовьте их. Например, для /usr:

Если вам необходимо пространство подкачки (swap) в виртуальной машине, подготовьте его с помощью команды mkswap:

[править] Подготовка виртуальной системы под управлением Debian GNU/Linux

Здесь описывается как подготовить образ гостевого домена Xen,в котором будет работать Debian GNU/Linux. Обязательно стоит прочитать ещё Xen Debian Wiki.

[править] Инсталляция ОС Debian GNU/Linux

Этот этап может быть выполнен проще, если использовать xen-tools. Ниже показано, как провести инсталляцию системы вручную.

Запустите debootstrap для инсталляция базы системы:

Скопируйте пакет ядром для работы с Xen, который был подготовлен ранее, в новую виртуальную машину:

Сделайте новую файловую систему корневой (с помощью chroot):

Проинсталлируйте пакет с ранее подготовленным ядро Xen:

Измените запись, соответствующую корневой системе в файле /etc/fstab:

Если используется несколько дисковых разделов в виртуальной машине, перечислите их:

Запустите программу base-config для установки базовой системы Debian.

Измените конфигурацию сети в виртуальной машине:

Отключите использование TLS, в противном случае работа системы может сильно замедлиться.

В том случае, если используется дистрибутив Etch, проинсталлируйте libc6-xen.

Отключите лишние терминалы getty, а первый терминал направьте на файл /dev/console вместо /dev/tty1: (файл /etc/inittab)

Если в виртуальной машине будут загружаться модули ядра, установить пакет module-init-tools (обязательно для ядер 2.6 domU).

На этом инсталляция ОС в виртуальной машине завершена, и можно завершить работу оболочки с изменённой корневой системой (chrooted shell).

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

После чего размонтируйте корневую файловую систему виртуальной машины.

[править] Конфигурирование виртуальной машины

Необходимо создать конфигурационный файл виртуальной машины. Пусть виртуальная машина называется debian-vm0.

В том случае, если использует физический дисковый раздел:

В том случае, если используется несколько разделов:

Если вместо раздела используется файл, конфигурация дисковой подсистемы выглядит так:

В том случае, если используется несколько файлов, строка должна выглядеть так:

Обратите внимание на то, чтобы записи о дисках в конфигурации виртуальной машины соответствовали файлу /etc/fstab операционной системы этой машины.

[править] Инсталляция и настройка Fedora Core в domU

Здесь описывается как подготовить образ гостевого домена Xen,в котором будет работать Fedora Core 6.

При условии, что домен 0 работает под управлением Debian GNU/Linux, а образ гостевой системы подмонтирован в каталог /mnt, процедура инсталляции выглядит следующим образом:

Пример конфигурационного файла yum-xen.conf (вы можете использовать другой репозиторий и другой уровень отладки):

Если при инсталляции вы получаете ошибку

то модифицируйте код yum следующим образом:

Установленную систему можно доработать.

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

Настроить сетевые интерфейсы.

Скопировать модули ядра

Установить пароль root’а

Отключить сообщения об ошибках ядра на консоль (не обязательно)

Для загрузки ядра вы можете использовть ядро, которое используется в хост-системе, или воспользоваться ядром предлагаемым в дистрибутиве гостевой системы. Если использовать ядро Fedora (CentOS/RHEL), может понадобиться выполнить пересборку initrd:

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

(здесь fc это конфигурационный файл домена).

[править] Инсталляция и настройка других дистрибутивов Linux в domU

  • Centos5 — описание процедуры подготовки domU для Centos5
  • http://www.gitco.de/repo/xen3.3.1/ — подборка пакетов, имеющих отношение к Xen, для CentOS

[править] Инсталляция Debian из-под других дистрибутивов Linux

После этого инсталляция с помощью ./debootstrap выполняется как обычно.

[править] Запуск виртуальной машины

Данная команда запустит новую виртуальную машину и создаст подключенную к ней консоль (ключ -c). Можно войти в систему от имени пользователя root и настроить сетевой интерфейс eth0.

Обратите внимание на то, что на консоли (/dev/console) по умолчанию комбинация клавиш Ctrl-C не настроена для прерывания процессов.

Отключиться от консоли виртуальной машины вернуться в терминал, из которого выполнялось подключение/запуск, можно с помощью комбинации Ctrl-].

Вернуться на отключенную консоль можно с помощью команды:

Остановить домен можно командой:

Выключить домен (как будто бы вырубить виртуальную машину по питанию), можно с помощью команды:

Для получения полного списка команд, таких как shutdown, destroy и т.д. введите:

Для того чтобы виртуальная машина (domU) загружалась автоматически, когда загружает основная система (dom0), необходимо сделать ссылку на конфигурационный файл виртуальной машины:

[править] Дополнительные вопросы

[править] Сборка ядра Linux под Xen в Debian

Ядро Linux, с поддержкой Xen, находящееся в репозитории Debian GNU/Linux собрано с поддержкой PAE. С другой стороны, большое количество систем (NetBSD, Plan 9 и др.), работающих как гостевые системы в паравиртуальном домене Xen не поддерживают PAE (FreeBSD может быть собрано с поддержкой PAE). В этом случае потребуется пересобрать ядро домена 0 без поддержки PAE. Пересборка ядра может потребоваться и в других случаях.

[править] Использование домена с paravirt_ops

  • При подготовке ядра создать модули (или включить в ядро) с драйверами блочных устройств frontend, работающие через paravirt_ops
  • В конфигурационном файле домена добавить строчку
  • В конфигурационном файле нужно перейти на использование дисков типа xvda. Для этого нужно изменить название корневой файловой системы (сделать /dev/xvda1), изменить параметр disk в конфигурационном файле домена чтобы в нём использовались имена xvda и изменить /etc/fstab внутри самого домена

Пример конфигурационного файла домена:

Фрагменты файлов внутри домена:

В Ubuntu вмест правки /etc/inittab нужно создать /etc/init/hvc0.conf с таким содержимым:

Для ядер в районе 2.6.34 может пригодиться патч [2] (подробнее: [3]).

[править] Ядро с paravirt_ops в домене 0

Если вы используете ядро с paravirt_ops в домене 0.

[править] Возможные проблемы при подготовке и запуске

Множество проблем, с которыми можно столкнуться при подготовке и запуске гостевой системы Xen, описано на странице Xen FAQ.

[править] Возможные проблемы с udev

При старте домена может возникнуть такая проблема: домен не стартует, на экран выдаётся сообщение об ошибке:

Номер устройства (768) может отличаться.

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

Убедитесь, что udev достаточно новый. Последние версии udev находятся здесь: http://kernel.org/pub/linux/utils/kernel/hotplug/

Проверьте, есть ли в конфигурации udev правила xen.

Если нет, нужно их добавить. Нужно создать файл xen-backend.rules в каталоге /etc/udev/rules.d следующего содержания:

Если такой файл xen-backend.rules уже есть, можно переименовать его или создать символическую ссылку, содержащую номер в названии. Правило должно грузиться предпоследним.

После этого нужно перезапустить udev и попробовать стартануть домен снова.

Ещё возможный вариант (например, на Debian Lenny) — отсутствие бита исполнения на скриптах Xen, исправляется простым

и неправильный в них шебанг #!/bin/sh, либо его отсутствие, исправляется ручным добавлением #!/bin/bash в начало каждого скрипта.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Запуск linux без графической оболочки
  • Запуск linux debian с флешки без установки в windows 10
  • Запуск lineage 2 в linux
  • Запуск kali linux с флешки с помощью командной строки
  • Запуск kali linux с флешки без установки