Виртуализация · 3 min read · Dec 07, 2025
Паравиртуализация с Xen на CentOS 5.6 (x86_64)
Паравиртуализация с Xen на CentOS 5.6 (x86_64)
Версия 1.0
Автор: Фалко Тимме
Следите за мной в Twitter
Этот учебник предоставляет пошаговые инструкции по установке Xen (версия 3.0.3) на систему CentOS 5.6 (x86_64).
Xen позволяет создавать гостевые операционные системы (операционные системы *nix, такие как Linux и FreeBSD), так называемые “виртуальные машины” или domU, под хост-операционной системой (dom0). С помощью Xen вы можете разделить свои приложения на разные виртуальные машины, которые полностью независимы друг от друга (например, виртуальная машина для почтового сервера, виртуальная машина для веб-сайта с высокой посещаемостью, другая виртуальная машина, которая обслуживает веб-сайты ваших клиентов, виртуальная машина для DNS и т.д.), но при этом использовать одно и то же оборудование. Это экономит деньги, и что еще более важно, это более безопасно. Если виртуальная машина вашего DNS-сервера будет взломана, это не повлияет на ваши другие виртуальные машины. Кроме того, вы можете перемещать виртуальные машины с одного сервера Xen на другой.
Я буду использовать CentOS 5.6 (x86_64) как для хост-ОС (dom0), так и для гостевой ОС (domU).
Этот howto предназначен как практическое руководство; он не охватывает теоретические основы. Они рассматриваются во многих других документах в сети.
Этот документ предоставляется без каких-либо гарантий! Я хочу сказать, что это не единственный способ настройки такой системы. Существует множество способов достижения этой цели, но это тот путь, который я выбираю. Я не даю никаких гарантий, что это сработает для вас!
1 Предварительная заметка
Этот гид объяснит, как настроить виртуальные машины на основе образов, а также виртуальные машины на основе LVM.
Убедитесь, что SELinux отключен или работает в разрешительном режиме:
vi /etc/sysconfig/selinux| # Этот файл управляет состоянием SELinux в системе. # SELINUX= может принимать одно из этих трех значений: # enforcing - Политика безопасности SELinux применяется. # permissive - SELinux выводит предупреждения вместо применения. # disabled - SELinux полностью отключен. SELINUX=disabled # SELINUXTYPE= тип используемой политики. Возможные значения: # targeted - Защищены только целевые сетевые демоны. # strict - Полная защита SELinux. SELINUXTYPE=targeted |
Если вам пришлось изменить /etc/sysconfig/selinux, пожалуйста, перезагрузите систему:
reboot2 Установка Xen **
Чтобы установить Xen, просто выполните
yum install kernel-xen xenЭто установит Xen и ядро Xen на нашу систему CentOS.
Прежде чем мы сможем загрузить систему с ядром Xen, пожалуйста, проверьте конфигурацию загрузчика GRUB. Мы открываем /boot/grub/menu.lst:
vi /boot/grub/menu.lstПервым в списке должно быть ядро Xen, которое вы только что установили:
| [...] title CentOS (2.6.18-238.9.1.el5xen) root (hd0,0) kernel /xen.gz-2.6.18-238.9.1.el5 module /vmlinuz-2.6.18-238.9.1.el5xen ro root=/dev/VolGroup00/LogVol00 module /initrd-2.6.18-238.9.1.el5xen.img [...] |
Измените значение default на 0 (чтобы первое ядро (ядро Xen) загружалось по умолчанию):
| [...] default=0 [...] |
Полный /boot/grub/menu.lst должен выглядеть примерно так:
| # grub.conf сгенерирован anaconda # # Обратите внимание, что вам не нужно повторно запускать grub после внесения изменений в этот файл # УВЕДОМЛЕНИЕ: У вас есть раздел /boot. Это означает, что # все пути к ядру и initrd относительны к /boot/, например. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00 # initrd /initrd-version.img #boot=/dev/sda default=0 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu title CentOS (2.6.18-238.9.1.el5xen) root (hd0,0) kernel /xen.gz-2.6.18-238.9.1.el5 module /vmlinuz-2.6.18-238.9.1.el5xen ro root=/dev/VolGroup00/LogVol00 module /initrd-2.6.18-238.9.1.el5xen.img title CentOS (2.6.18-238.el5) root (hd0,0) kernel /vmlinuz-2.6.18-238.el5 ro root=/dev/VolGroup00/LogVol00 initrd /initrd-2.6.18-238.el5.img |
После этого мы перезагружаем систему:
rebootСистема теперь должна автоматически загрузить новое ядро Xen. После загрузки системы мы можем проверить это, выполнив
uname -r[root@server1 ~]# uname -r
2.6.18-238.9.1.el5xen
[root@server1 ~]#Итак, она действительно использует новое ядро Xen!
Теперь мы можем выполнить
xm listчтобы проверить, запустился ли Xen. Он должен отобразить Domain-0 (dom0):
[root@server1 ~]# xm list
Name ID Mem(MiB) VCPUs State Time(s)
Domain-0 0 3343 2 r----- 18.1
[root@server1 ~]#Get new posts in your inbox
No spam. Unsubscribe anytime.