xg-scale
diff xen.tex @ 4:253d66dd74bb
Добавлено подробное описание управления памятью домена и выделением устройств домену
author | Igor Chubin <igor@chub.in> |
---|---|
date | Sun Jul 06 23:27:46 2008 +0300 (2008-07-06) |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/xen.tex Sun Jul 06 23:27:46 2008 +0300 1.3 @@ -0,0 +1,612 @@ 1.4 +\section{Xen} 1.5 + 1.6 + 1.7 +\textbf{Xen} — это монитор виртуальных машин (VMM, Virtual Machine Monitor) или гипервизор (hypervisor) с поддержкой паравиртуализации (para-virtualization) для процессоров x86 архитектуры, распространяющийся с открытым исходным кодом (opensource). Xen может организовать совместное безопасное исполнение нескольких виртуальных машин на одной физической системе с производительностью близкой к непосредственной (native). 1.8 + 1.9 +Xen обладает функциональностью ПО корпоративного уровня; в нём, в частности, обеспечивается: 1.10 +\begin{itemize} 1.11 +\item Производительность виртуальных машин близкая к производительности при непосредственном исполнении на железе; 1.12 +\item Возможность живой миграции работающих виртуальных машин между хостами; 1.13 +\item Поддержка до 32 виртуальных процессоров на одну гостевую машину с возможностью горячего добавления (hotplug) процессоров; 1.14 +\item Поддержка платформ x86/32, x86/32 с PAE и x86/64; 1.15 +\item Поддержка аппаратной виртуализации для запуска немодифицированных операционных систем (включая Microsoft Windows); 1.16 +\item Отличная поддержка оборудования (поддерживаются практически все драйверы устройств Linux). 1.17 +\end{itemize} 1.18 + 1.19 +\subsection{Что это} 1.20 +\subsubsection{Что может виртуализация} 1.21 +\begin{enumerate} 1.22 +\item Запуск множества операционных систем одновременно 1.23 +\item Гарантированная изоляция ОС друг от друга 1.24 +\item Возможность гибкого разделения ресурсов между машинами 1.25 +\end{enumerate} 1.26 + 1.27 +\subsubsection{Зачем это надо} 1.28 + 1.29 +\subsubsection{Примеры использования} 1.30 +Список примеров не полный. 1.31 + 1.32 +Консолидация серверов хостинг-провайдеров: 1.33 +\begin{itemize} 1.34 +\item Одна виртуальная машина на пользователя; 1.35 +\item Динамическое создание виртуальных машин; 1.36 +\item Миграция VM в пределах кластера; 1.37 +\item Плавный апгрейд критических серверов. 1.38 +\end{itemize} 1.39 + 1.40 +\subsection{Виртуализация и паравиртуализация} 1.41 +Принципы действия виртуальных машин/эмуляторов/сред ограниченного исполнения: 1.42 + 1.43 +\begin{itemize} 1.44 +\item \textbf{интерпретация} и \textbf{динамическая рекомпиляция} -- Bochs -- PearPC -- QEMU -- VirtualPC for MAC; 1.45 +\item \textbf{виртуализация на уровне ОС} -- Jail -- Linux-VServer -- OpenVZ -- Virtuozzo -- Zones; 1.46 +\item \textbf{виртуализация} -- VMware -- VirtualPC -- Virtual Server 2005 -- QEMU с модулем kqemu; 1.47 +\item \textbf{паравиртуализация} и \textbf{портирование} -- Xen -- UML . 1.48 +\end{itemize} 1.49 + 1.50 +Идеальная виртуальная среда абсолютно прозрачна 1.51 +для гостевых систем. 1.52 +Ключевые особенности виртуализации: 1.53 +\begin{itemize} 1.54 +\item Общие принципы построения мейнфреймов 1.55 +\item Практически невозможно для процессоров семейства i386 1.56 +\item Запуск немодифицированных ОС выполняется сложно 1.57 +\begin{itemize} 1.58 +\item Перехват привилегированных вызовов 1.59 +\item Динамическое изменение кода 1.60 +\end{itemize} 1.61 +\item В результате в некоторых случаях производительность страдает. 1.62 +\end{itemize} 1.63 + 1.64 +Xen не скрывает себя от гостевых ОС. 1.65 +Наоборот, они должны быть подготовлены к работе с этой системой. 1.66 +Для этого выполняется: 1.67 +\begin{itemize} 1.68 +\item Портирование операционной системы для работы с Xen 1.69 +\item Гостевым операционным система даётся возможность использования драйверов хост-системы, но только под её присмотром. 1.70 +\end{itemize} 1.71 + 1.72 +В настоящий момент модифицированный код гостевых ОС 1.73 +доступен для Linux и NetBSD. Ведётся работа по портированию 1.74 +FreeBSD, OpenSolaris и Plan9. 1.75 + 1.76 +Xen полностью интегрирован с Linux: 1.77 +\begin{itemize} 1.78 +\item Существует отдельная архитектура ядра (ARCH=xen) 1.79 +\item Xen работает как гипервизор 1.80 +\item Ядро обращается к гипервизору для получения ресурсов 1.81 +\item Гипервизор использует драйверы Linux. 1.82 +\end{itemize} 1.83 + 1.84 +\subsubsection{Дополнительная информация} 1.85 +\begin{itemize} 1.86 +\item http://en.wikipedia.org/wiki/Virtualization 1.87 +\item http://en.wikipedia.org/wiki/X86\_virtualization 1.88 +\item Технологии виртуализации: вчера, сегодня, завтра -- статья Сергея Озерова и Александра Карабуто в журнале \dq{}Экспресс Электроника\dq{} 1.89 +\item http://www.xensource.com/xen/xen/index.html 1.90 +\item http://en.wikipedia.org/wiki/Xen 1.91 +\item Paravirtualization is a Dead-End Approach -- критика паравиртуализации в блоге VirtualIron 1.92 +\end{itemize} 1.93 + 1.94 +\subsection{Сравнение с другими виртуальными машинами} 1.95 +Сравнение виртуальных машин, сред ограниченного исполнения 1.96 +и эмуляторов производится на странице \textit{Сравнение виртуальных машин}. 1.97 + 1.98 +\subsection{Производительность} 1.99 +<dl><dd> \textit{Основная страница: \textbf{Производительность Xen}} 1.100 +</dd></dl> 1.101 + 1.102 +Портирование ОС на Xen позволяет добиться большей эффективности 1.103 +в сравнении с виртуализацией, основанной на перехвате 1.104 +несработавших инструкций, или тем более использовании интерпретатора 1.105 +или JIT-компилятора кода гостевой ОС. 1.106 +Минусом этого подхода является необходимость в портировании ОС, 1.107 +но опыт показал, что это можно сделать довольно быстро. 1.108 + 1.109 +Операционные системы, работающие в Xen, исполняются 1.110 +с уровнем привилегий 1 вместо 0, который зарезервирован для Xen. 1.111 +В результате гостевые ОС не могут использовать привилегированные 1.112 +инструкции для запрета/разрешения прерываний, изменения таблиц адресов 1.113 +и т.д. Вместо этого они должны выполнять соответствующее обращение (hypercall) 1.114 +к гипервизору Xen с просьбой выполнить необходимую операцию. 1.115 +При правильной разработке интерфейса между виртуальными машинами и гипервизором, 1.116 +накладные расходы на выполнение операций малы. 1.117 + 1.118 +Вместо того чтобы пытаться эмулировать существующее аппаратное обеспечение, 1.119 +Xen предоставляет специально подготовленные блочные устройства 1.120 +и сетевые интерфейсы гостевых операционным системам, и требуя 1.121 +соответствующий драйвер. 1.122 +Преимущество такого подхода заключается в том, что производительность 1.123 +гостевой ОС практически не страдает: 1.124 +например, скорость передачи данных по Gigabit Ethernet каналу 1.125 +из машины, работающей под Xen, такая же как и у родной операционной системы. 1.126 + 1.127 +Группа разработчиков Xen провела исследование производительности этой системы. 1.128 +Для этого система с ядром Linux 2.4.22 была запущена в различных режимах 1.129 +и в ней выполнялся ряд тестов. 1.130 +Проводилось сравнение системы работающей на реальной машине, 1.131 +с работой в виртуальных машинах с такими системами виртуализации: 1.132 +\begin{itemize} 1.133 +\item VMware workstation 3.2; 1.134 +\item User Mode Linux (UML). 1.135 +\end{itemize} 1.136 + 1.137 + 1.138 +Тесты, на которых проводилось сравнение: 1.139 +\begin{itemize} 1.140 +\item Набор тестов SPEC CPU2000 Integer; 1.141 +\item Полная сборка Linux 2.4.22 в конфигурации по умолчанию на локальном диске; 1.142 +\item PostgreSQL выполняющая тест OSDB Information Retrieval (IR); 1.143 +\item PostgreSQL выполняющая тест OSDB On-Line Transaction Processing (OLTP); 1.144 +\item Однопользовательский тест файловой системы dbench 2.0; 1.145 +\item Тест SPWCWeb99 для Web-сервера Apache 1.3.27 с модулем `mod\_specweb99\rq{} для динамического создания контента. 1.146 +\end{itemize} 1.147 + 1.148 +На рисунке изображены уровни производительности 1.149 +для Linux (L), Xen/Linux (X), VMware Workstation 3.2 (V) 1.150 +и User Mode Linux (U). 1.151 + 1.152 +Тест SPEC INT2000 наиболее требователен к процессору CPU, но практически не выполняет 1.153 +ввода/вывода и требует минимум работы от самой операционной системы, 1.154 +и вследствие этого все три техники виртуализации показали практически одинаковые 1.155 +хорошие результаты. 1.156 + 1.157 +В других тестах, наоборот, требуется большее участие ОС, больше переключений контекста 1.158 +и больше операций по созданию процессов. 1.159 +Производительность Linux внутри Xen практически не отличается 1.160 +от производительности Linux, работающего непосредственно на железе. 1.161 +В наихудшем случае, при выполнении теста OSDB-IR, отставание составило 8\%. 1.162 +При использовании других техник виртуализации, 1.163 +результаты не были настолько хорошими. В некоторых случаях 1.164 +замедление составило до 88\%. 1.165 +В работе \url{http://www.cl.cam.ac.uk/netos/papers/2003-xensosp.pdf} 1.166 +приведены дополнительные результаты, в частности касающиеся одновременного 1.167 +запуска большого количества виртуальных машин. 1.168 + 1.169 +Представленные выше результаты были проверены и подтверждены 1.170 +независимой группой Кларксоновского Университета (Clarkson University). 1.171 +С результатами исследования, проведённого этой группой, можно ознакомиться 1.172 +в работе \dq{}Xen and the Art of Repeated Research\dq{}, 1.173 +которая также включает результаты сравнения производительности Xen 1.174 +и машины IBM zServer. 1.175 + 1.176 +\subsubsection{Дополнительная информация} 1.177 +\begin{itemize} 1.178 +\item Xen Performance -- статья группы разработчиков Xen, сравнивающая производительность Linux, Xen, UML, VMWare 1.179 +\item Xen and the Art of Virtualization -- статья группы разработчиков Xen, в которой описывается архитектура Xen 1.180 +\item Xen and the Art of Repeated Research -- результаты исследования производительности, выполненного независимой группой Кларксоновского Университета 1.181 +\end{itemize} 1.182 + 1.183 +\subsection{Новые возможности Xen} 1.184 +<dl><dd> \textit{Основная страница: \textbf{Новости Xen}} 1.185 +</dd></dl> 1.186 + 1.187 +Текущяя версия: \textit{Xen 3.2.0}, релиз сделан 16 января 2008 года. 1.188 + 1.189 +\subsubsection{Возможности Xen 3} 1.190 +Xen 3 значительно отличается от своего предшественника Xen 2. 1.191 +Повышены устойчивость к сбоям, безопасность, производительность. 1.192 +Появился ряд принципиально новых возможностей. 1.193 + 1.194 +Наиболее значимые изменения: 1.195 +\begin{itemize} 1.196 +\item Intel (Physical Addressing Extensions) PAE для поддержки 32битных серверов с >4G ОЗУ 1.197 +\item Поддержка x86/64 (Intel EM64T, AMD Opteron) 1.198 +\item Поддержка Intel VT-x для запуска немодифицированных гостевых ОС (Windows XP/2003, немодифицированный Linux) 1.199 +\item Усовершенствованные инструменты управления 1.200 +\item Улучшенная поддержка ACPI 1.201 +\item AGP/DRM графика 1.202 +\end{itemize} 1.203 + 1.204 +Начиная с версии 3.1 появились следующие возможности: 1.205 +\begin{itemize} 1.206 +\item Поддержка XenAPI 1.0 1.207 +\begin{itemize} 1.208 +\item Конфигурационные файлы виртуальных машин в XML; 1.209 +\item Управление жизненным циклом виртуальных машин; 1.210 +\item Безопасная привязка XML-RPC для многих языков 1.211 +\end{itemize} 1.212 +\item Предварительная поддержка save/restore/migrate для HVM-доменов (в частности, Windows); 1.213 +\item Динамическое управление памятью для HVM-доменов; 1.214 +\item Поддержка 32-на-64 паравиртуальных гостевых систем (запуск паравиртуальных систем PAE на 64-битном Xen); 1.215 +\item Поддержка copy-on-write для дисковых устройств blktap. 1.216 +\end{itemize} 1.217 + 1.218 +\subsubsection{Ограничения Xen 2} 1.219 +В предыдущей версии Xen (Xen 2.0) наиболее сильно были заметны следующие недостатки: 1.220 +\begin{itemize} 1.221 +\item Не поддерживалась многопроцессорность в гостевых ОС 1.222 +\item Поддерживалась только архитектура i386; x86\_64 поддерживает только в режиме i386 1.223 +\end{itemize} 1.224 + 1.225 +\subsection{Аппаратные требования} 1.226 +<dl><dd> \textit{Основная страница: \textbf{Аппаратные требования Xen}} 1.227 +</dd></dl> 1.228 + 1.229 +В настоящий момент Xen 1.230 +работает на платформах \textbf{Intel x86} и \textbf{Intel x86\_64} (в режиме совместимости i386) 1.231 +и требует процессора не ниже P6. 1.232 +Выполняется поддержка многопроцессорных машин (в том числе и машин с процессорами с архитектурой Hyper-Threading). 1.233 +В ближайшее время Xen будет работать на процессорах архитектуры IA64. 1.234 +Также ведутся работы по подготовке Xen для работы на процессорах с архитектурой PPC и ARM. 1.235 + 1.236 +Для использования \textit{модифицированных} 1.237 +операционных систем -- подготовленных к использованию в паравиртуальной машине Xen -- никаких дополнительных требований к аппаратному обеспечению 1.238 +компьютера, на котором будут выполняться виртуальные машины, не предъявляется. 1.239 + 1.240 +Использование операционных систем \textit{в неизменном 1.241 +виде} возможно при использовании 1.242 +процессоров с поддержкой виртуализации. 1.243 + 1.244 +\subsection{Поддержка Xen различными операционными системами} 1.245 +<dl><dd> \textit{Основная страница: \textbf{Поддержка Xen операционными системами}} 1.246 +</dd></dl> 1.247 + 1.248 +В домене 0 может использоваться ОС: 1.249 +\begin{itemize} 1.250 +\item Linux 1.251 +\item NetBSD 1.252 +\item OpenSolaris 1.253 +\end{itemize} 1.254 + 1.255 +В паравиртуальном режиме в домене domU работают: 1.256 +\begin{itemize} 1.257 +\item Linux 1.258 +\item NetBSD (без PAE) 1.259 +\item FreeBSD (начиная с 7, без поддержки PAE и с большим количеством ограничений) 1.260 +\item Plan9 (без PAE) 1.261 +\item OpenSolaris (build 44). 1.262 +\end{itemize} 1.263 + 1.264 +В режиме аппаратной виртуализации поддерживаются Windows XP, Windows 2003 Server. 1.265 + 1.266 +\subsection{Инсталляция, конфигурирование и использование Xen} 1.267 +\subsubsection{Как начать?} 1.268 +Для того чтобы попробовать Xen в действии, не нужно много времени. 1.269 +При благоприятных обстоятельствах 1.270 +(вы ясно соображаете, уверенно чувствуете себя в командной строке, 1.271 +у вас хороший канал в Интернет, и вы используете Linux -- обычно эти качества 1.272 +встречаются вместе) 1.273 +вы увидите приглашение гостевой ОС меньше чем через 1.274 +десять минут после того как начнёте экспериментировать. 1.275 + 1.276 +Возможно, вы используете систему, 1.277 +которая уже поддерживает Xen из коробки. 1.278 + 1.279 +Если так, то вы можете получить образ из Интернета, 1.280 +описанным здесь способом. 1.281 + 1.282 +Если ваша система не поддерживает Xen, 1.283 +а вы не хотите сейчас заниматься сборкой и инсталляцией 1.284 +Xen вручную, можно использовать Live CD с Xen. 1.285 +Его образ можно получить здесь. 1.286 + 1.287 +\subsubsection{Инсталляция операционной системы в domU} 1.288 +Существует несколько способов 1.289 +подготовки образа гостевой системы. 1.290 +\begin{enumerate} 1.291 +\item Инсталляция средствами базовой операционной системы 1.292 +\item Использование готового образа 1.293 +\item Использование инсталлятора гостевой ОС 1.294 +\item Использование диска реальной машины 1.295 +\end{enumerate} 1.296 + 1.297 +\paragraph{Инсталляция средствами базовой операционной системы} 1.298 +Этот способ является основным для Xen. 1.299 + 1.300 +Подготовка образа для использования 1.301 +в качестве дискового раздела в домене domU 1.302 +состоит из двух этапов: 1.303 +\begin{enumerate} 1.304 +\item Создание собственно файла/раздела образа и файловой системы внутри него 1.305 +\item Наполнение образа операционной системой 1.306 +\end{enumerate} 1.307 + 1.308 +Создание собственно образа выполняется 1.309 +очень просто. 1.310 + 1.311 +\begin{verbatim} 1.312 +# dd if=/dev/zero of=domU-disk.img bs=1024k count=<размер_в_MB> 1.313 +# mkfs.ext3 domU-disk.img 1.314 +\end{verbatim} 1.315 + 1.316 +Затем этот образ монтируется и 1.317 +наполняется. 1.318 + 1.319 +Вот, например, как это можно сделать в Debian GNU/Linux: 1.320 + 1.321 +\begin{verbatim} 1.322 +# mount -o loop domU-disk.img /mnt 1.323 +# debootstrap etch /mnt 1.324 +\end{verbatim} 1.325 + 1.326 +В результате, в каталоге \texttt{/mnt} 1.327 +будет установлена операционная система \textbf{Debian GNU/Linux}, 1.328 +дистрибутив \textbf{etch}. 1.329 + 1.330 +Подробнее процедура инсталляции описана здесь. 1.331 + 1.332 +\paragraph{Использование готового образа} 1.333 +Если вы создаете не первый домен, 1.334 +вы можете взять образ существующего домена за основу. 1.335 +Можно подготовить образцовые домены 1.336 +разного предназначения и при необходимости 1.337 +копировать и дорабатывать их. 1.338 + 1.339 +В Интернете доступно огромное количество образов дисковых 1.340 +разделов, готовых для использования в качестве основных 1.341 +дисковых разделов в пользовательских доменах Xen. 1.342 + 1.343 +В этом случае подготовка дискового раздела сводится 1.344 +к простому выкачиванию файла из сети. 1.345 +После того как образ получен, нужно создать конфигурационный 1.346 +файл домена, в котором указать этот образ в качестве 1.347 +дискового раздела. Затем, стартануть новый домен. 1.348 + 1.349 +Как правило, в комплекте с образом уже есть готовый к использованию 1.350 +конфигурационный файл домена. Можно использовать его, 1.351 +но только перед этим проверить и при необходимости изменить 1.352 +пути в именах файлов, в частности, в имене ядра, 1.353 +и параметры домена -- память, сетевые интерфейсы и другие. 1.354 + 1.355 +Этот способ может использоваться как для экспериментов, 1.356 +так и для создания полноценных гостевых доменов. 1.357 +Готовые образы поддаются доработке и расширению. 1.358 + 1.359 +Подробнее о источниках образов в Сети, 1.360 +смотрите здесь. 1.361 + 1.362 +\paragraph{Использование инсталлятора гостевой операционный системы} 1.363 +Этот способ требует наличия аппаратной виртуализации 1.364 +базовой системой (подробнее здесь) 1.365 +или поддержки архитектуры Xen инсталлятором гостевой ОС. 1.366 +На сегодняшний день список инсталляторов ОС, готовых 1.367 +к использованию в паравиртуальном режиме Xen, пуст. 1.368 + 1.369 +В режиме аппаратной виртуализации все выглядит 1.370 +так же, как и при подготовке обычной виртуальной машины 1.371 +в других системах. 1.372 + 1.373 +Процесс подготовки нового домена состоит из трех этапов: 1.374 +\begin{enumerate} 1.375 +\item Создание конфигурационного файла домена. 1.376 +\item Подготовка пустого образа для дискового раздела гостевого домена. 1.377 +\item Запуск виртуальной машины. 1.378 +\end{enumerate} 1.379 + 1.380 +После того как виртуальная машина стартанёт, 1.381 +будет запущен инсталлятор операционной системы, 1.382 +и дальше инсталляция будет проходить обычным способом. 1.383 + 1.384 +Когда инсталляция будет завершена, необходимо отредактировать 1.385 +конфигурационный файл домена: указать загрузку с диска 1.386 +вместо загрузки с CD. 1.387 + 1.388 +\paragraph{Использование диска реальной машины} 1.389 +Существующую реальную машину можно запускать 1.390 +в виртуализированной среде Xen. 1.391 +(верно и обратное: пользовательский домен Xen 1.392 +можно очень легко превратить в реальную машину; об этом ниже). 1.393 + 1.394 +Это можно сделать следующим образом: 1.395 +\begin{itemize} 1.396 +\item побайтно скопировать дисковые разделы реальной машины в файлы или дисковые разделы Xen-системы; 1.397 +\item переставить диск из реальной машины в Xen-систему. 1.398 +\end{itemize} 1.399 + 1.400 +После чего создать конфигурационный файл домена, 1.401 +в котором указать соответствующие дисковые разделы. 1.402 + 1.403 +При загрузке нового домена нужно использовать не старое ядро системы, 1.404 +а ядро подготовленное для Xen. 1.405 +Поэтому, при необходимости, не забудьте скопировать модули 1.406 +нового ядра на диск гостевой системы: 1.407 + 1.408 +\begin{verbatim} 1.409 +# mount /dev/hdb1 /mnt 1.410 +# cp -r /lib/modules/2.6.16-xenU /mnt/lib/modules 1.411 +\end{verbatim} 1.412 + 1.413 +Здесь: 1.414 +\begin{itemize} 1.415 +\item \textbf{/dev/hdb1} -- корневой дисковый раздел гостевой системы; 1.416 +\item \textbf{2.6.16-xenU} -- точное название ядра, под управлением которого будет работать гостевой домен. 1.417 +\end{itemize} 1.418 + 1.419 +Этот способ, выполненный в обратном направлении, 1.420 +позволяет превращать виртуальные машины Xen в реальные. 1.421 +Для этого нужно: 1.422 +\begin{enumerate} 1.423 +\item Подготовить виртуальную машину Xen на отдельном диске 1.424 +\item Проинсталлировать из реальной системы на диск домена загрузчик 1.425 +\item Установить (но пока не запускать!) в виртуальной системе реальное ядро 1.426 +\item Указать в конфигурационном файле загрузчика в виртуальной системе использовать реальное ядро 1.427 +\item Отредактировать /etc/fstab с учётом того, как диск будет виден в реальной системе 1.428 +\item Вытащить диск и запустить с него реальную систему. 1.429 +\end{enumerate} 1.430 + 1.431 +\subsubsection{Образы domU различных операционных систем} 1.432 +В Интернете доступно большое количество domU-образов 1.433 +различных операционных систем, готовых для использования 1.434 +с Xen. 1.435 + 1.436 +Для того чтобы использовать образ, необходимо: 1.437 +\begin{enumerate} 1.438 +\item Настроить Xen в домене 0 1.439 +\item Получить желаемый образ domU 1.440 +\item Создать конфигурационный файл для новой виртуальной машины, указывающий на полученный образ domU 1.441 +\item Запустить новую виртуальную машину 1.442 +\end{enumerate} 1.443 + 1.444 +\textbf{Linux}: 1.445 +\begin{itemize} 1.446 +\item http://jailtime.org/ 1.447 +\item http://xen-get.org/ 1.448 +\end{itemize} 1.449 + 1.450 +\textbf{FreeBSD}: 1.451 +\begin{itemize} 1.452 +\item http://www.fsmware.com/xenofreebsd/7.0/download/ 1.453 +\end{itemize} 1.454 + 1.455 +\textbf{NetBSD}: 1.456 +\begin{itemize} 1.457 +\item http://www.netbsd.org/Ports/xen/howto.html 1.458 +\end{itemize} 1.459 + 1.460 +\textbf{OpenSolaris}: 1.461 +\begin{itemize} 1.462 +\item http://www.opensolaris.org/os/community/xen/How-To-8-15-06/install/AugDomUs/ 1.463 +\end{itemize} 1.464 + 1.465 +Также существует репозитори образов, 1.466 +предназначенных для непосредственного исполнения процессором. 1.467 +Эти образы можно использовать в Xen в режиме 1.468 +аппаратной виртуализации. 1.469 +\begin{itemize} 1.470 +\item Коллекция образов на Free OS Zoo 1.471 +\end{itemize} 1.472 + 1.473 +\subsubsection{Виртуальная машина Windows XP} 1.474 +<dl><dd>\textit{Основная статья: \textbf{Windows XP в Xen}} 1.475 +</dd></dl> 1.476 + 1.477 +Процедура подготовки Xen-системы для использования в режиме аппаратной виртуализации 1.478 +и последующего запуска ОС Windows XP в виртуальной машине Xen детально 1.479 +описана на странице Windows XP в Xen (использован перевод Михаила Сгибнева). 1.480 + 1.481 +\subsubsection{Виртуализация устройств} 1.482 +\paragraph{Виртуализация дисковых систем} 1.483 +<dl><dd> \textit{Основная статья: \textbf{Блочные устройства в Xen}} 1.484 +</dd></dl> 1.485 + 1.486 +\paragraph{Виртуализация сети} 1.487 +<dl><dd> \textit{Основная статья: \textbf{Сеть в Xen}} 1.488 +</dd></dl> 1.489 + 1.490 +\paragraph{Виртуализация графической карты} 1.491 +\begin{itemize} 1.492 +\item http://www.cs.toronto.edu/~andreslc/xen-gl/ 1.493 +\end{itemize} 1.494 + 1.495 +\subsubsection{Использование Xen} 1.496 +\paragraph{Сохранение и восстановление доменов, миграция и живая миграция} 1.497 +\paragraph{Горячее подключение устройств} 1.498 +<dl><dd> \textit{Основная статья: \textbf{Горячее подключение устройств}} 1.499 +</dd></dl> 1.500 + 1.501 +\paragraph{Распределение ресурсов между виртуальными машинами} 1.502 +<dl><dd> \textit{Основная статья: \textbf{Распределение ресурсов между доменами}} 1.503 +</dd></dl> 1.504 + 1.505 +\subsection{Средства управления и мониторинга виртуальных машин} 1.506 +\begin{center} \resizebox{10cm}{!}{\includegraphics{/var/lib/mediawiki/images/8/83/Enomalism.jpg}}\\ \textit{Enomalism -- Web-инструмент для управления работой виртуальных машин}\end{center} 1.507 + 1.508 +<dl><dd> \textit{Основная статья: \textbf{Средства управления Xen}} 1.509 +</dd></dl> 1.510 + 1.511 +Cуществует множество различных 1.512 +средств для управления работой виртуальных машин, 1.513 +в их числе: 1.514 + 1.515 +\begin{itemize} 1.516 +\item \textbf{xm} — встроенное средство, работает в консольном режиме. Наблюдение выполнятся с помощью \textbf{xm top}. 1.517 +\item Enomalism — консоль управления и мониторинга Xen с Web-интерфейсом 1.518 +\item XenMan — программа для управление и мониторинга Xen c графическим интерфейсом пользователя 1.519 +\item virt-manager — программа для управления и мониторинга Xen с графическим интерфейсом пользователя от RedHat 1.520 +\end{itemize} 1.521 + 1.522 +Отдельно стоит отметить библиотеку \textit{libvirt}, которая предоставляет 1.523 +унифицированные механизмы управления не только для управления доменами Xen, 1.524 +но также машинами QEMU и OpenVZ. Программа \textit{virt-manager} построено на основе этой библиотеки. 1.525 + 1.526 +Другие средства управления виртуальными машинами: 1.527 +\begin{itemize} 1.528 +\item http://www.xen-tools.org/ 1.529 +\item https://savannah.cern.ch/projects/vgrid 1.530 +\end{itemize} 1.531 + 1.532 +\subsection{Коммерческие системы виртуализации, основанные на Xen} 1.533 +В настоящий момент, коммерческие системы виртуализации, базирующиеся на Xen, 1.534 +предлагают следующие производители: 1.535 +\begin{itemize} 1.536 +\item XenSource (Citrix) 1.537 +\item VirtualIron 1.538 +\item Novell 1.539 +\item Oracle 1.540 +\item Sun 1.541 +\end{itemize} 1.542 + 1.543 +Как правило, они эти системы отличаются от свободных решений тем что, 1.544 +имеют: 1.545 +\begin{itemize} 1.546 +\item более развитый интерфейс инсталляции и управления виртуальными машинами 1.547 +\item более развитую драйверную поддержку гостевых операционных систем, в частности, как правило, у них есть свои собственные паравиртуальные драйверы (работающие только с конкретной модификацией системы виртуализации) для Windows, которые позволяют существенно ускорить операции ввода/вывода внутри гостевых систем (сейчас ведётся работа на свободными PV-драйверами Xen для Windows, подробнее: Паравиртуальные драйверы Xen для Windows). 1.548 +\end{itemize} 1.549 + 1.550 +\subsection{Коммерческая поддержка и хостинг на Xen} 1.551 +\subsubsection{Коммерческая поддержка решений на Xen} 1.552 +<dl><dd> \textit{Основная страница: \textbf{Коммерческая поддержка Xen}} 1.553 +</dd></dl> 1.554 + 1.555 +\subsubsection{Хостинг на Xen} 1.556 +<dl><dd> \textit{Основная страница: \textbf{Хостинг доменов Xen}} 1.557 +</dd></dl> 1.558 + 1.559 +\subsection{Информационные ресурсы} 1.560 +\subsubsection{Документация} 1.561 +Русскоязычная: 1.562 +\begin{itemize} 1.563 +\item Руководство пользователя Xen 1.564 +\item XenFaq — часто задаваемые вопросы по Xen 1.565 +\item man-страницы: 1.566 +\begin{itemize} 1.567 +\item man xm 1.568 +\item man xmdomain.cfg 1.569 +\end{itemize} 1.570 +\end{itemize} 1.571 + 1.572 +Англоязычная: 1.573 +\begin{itemize} 1.574 +\item The Xen™ virtual machine monitor (англ.) — сборник документации на сайте Кембриджского университета 1.575 +\item Xen users\rq{} manual (англ.) — для пользователей и администраторов 1.576 +\item Xen Interface manual (англ.) — для разработчиков 1.577 +\item Xen Wiki (англ.) 1.578 +\item XenFaq (англ.) 1.579 +\end{itemize} 1.580 + 1.581 +Немецкоязычная: 1.582 +\begin{itemize} 1.583 +\item http://www.pug.org/index.php/Xen-Installation (нем.) 1.584 +\end{itemize} 1.585 + 1.586 +\subsubsection{Другие интернет-ресурсы} 1.587 +\begin{itemize} 1.588 +\item Xen (англ.) и Xen (рус.) на wikipedia.org — статьи о Xen на Wikipedia 1.589 +\end{itemize} 1.590 + 1.591 +\subsubsection{Списки рассылки} 1.592 +Существуют несколько списков рассылки, посвящёных Xen. Наиболее важные из них перечислены ниже. 1.593 +Официальная страница списков рассылки и информация о подписке на них находится здесь: 1.594 +<dl><dd> http://lists.xensource.com/ 1.595 +</dd></dl> 1.596 +Поиск в архивах (и некоторый статистический анализ) 1.597 +можно выполнять с помощью MarkMail: 1.598 +<dl><dd> http://xen.markmail.org/ 1.599 +</dd></dl> 1.600 + 1.601 +<dl><dt> xen-devel@lists.xensource.com 1.602 +</dt><dd> Обсуждение разработки и ошибок. Подписка здесь: http://lists.xensource.com/xen-devel 1.603 +</dd><dt> xen-users@lists.xensource.com 1.604 +</dt><dd> Обсуждение инсталляции и использования. Подписка здесь: http://lists.xensource.com/xen-users 1.605 +</dd><dt> xen-announce@lists.xensource.com 1.606 +</dt><dd> Используется только для анонсов. Подписка здесь: http://lists.xensource.com/xen-announce 1.607 +</dd><dt> xen-changelog@lists.xensource.com 1.608 +</dt><dd> Лента Changelog для веток unstable и 2.0 -- ориентирован на разработчиков. Подписка здесь: http://lists.xensource.com/xen-changelog 1.609 +</dd></dl> 1.610 + 1.611 +\subsubsection{Книги} 1.612 +\begin{itemize} 1.613 +\item The Definitive Guide to the Xen Hypervisor (англ.) — наиболее серьёзная книга о \textit{внутреннем устройстве Xen} 1.614 +\end{itemize} 1.615 +