Итак, попробуем развернуть гипервизор Xen в дистрибутиве CentOS 6. К сожалению, "из коробки" в CentOS 6 и CentOS 7 этот гипервизор отсутствует. Но для CentOS 7 ещё нет нужных сторонних репозитариев. Поэтому выбираем 6-ку.
Всё это дело для наглядности и простоты повтореия разворачиваю в виртуальной машине. Пытался всё проделать на VMware Player, но после установки Xen система больше не загружается. С Oracle VM VirtualBox всё работает хорошо, но есть один существенный минус - в установленной системе недоступна аппаратная виртуализация и, как следствие, в Xen доступна только паравиртуализация (Paravirtualization, PV), то есть можно устанавливать только операционные системы с одифицированным ядром (благо, мне это как раз и нужно было). Windows таким способом не установить. Это возможно только в продуктах VMware, когда профиксят баг с загрузкой.
Приступаем к установке. Запускаем Oracle VM VirtualBox и создаём новую виртуальную машину.

Я выделяю 1.2 Гб оперативной памяти, так как по умолчанию в CentOS гипервизору выделяется 1 Гб и если вдруг выделенной памяти окажется меньше, то виртуалка будет выдавать ошибку при загрузке и автоматически уходить в ребут.

Далее я создаю виртуальный диск объёмом 120 Гб (тоже с запасом).

Всё остальное можно не трогать. Далее, далее, далее и в итоге - создать виртуальную машину.
Далее, переходим в настройки VM:


Сеть на свой вкус настраиваем. Я обычно выбираю тип полключения "сетевой мост".

Монтируем нужный закгрузочный образ.

И запускаем виртуальную машину.

Процесс установки очень прост. Далее, далее, далее без каких-то особых настроек. Разве что, в настройках сети лучше поставить галочку на "Connect automatically" как на скриншоте:

И устанавливаем CentOS.

Перегружаем VM после установки.


Логинимся и с помощью 'ifconfig' узнаём наш ip-адрес, если он получался по DHCP, а не вводился вручную.

Для удобства лучше подулючиться по ssh по полученному ip. После чего устанавливаем нужный набор программного обеспечения:
<br>yum install -y centos-release-xen<br>yum install -y xen<br>/usr/bin/grub-bootxen.sh<br>

Для удобства рекомендую установить mc:
<br>yum install -y mc<br>
Потом правим /boot/grub/grub.conf, а именно в сроке:
<br>kernel /xen.gz dom0_mem=1024M,max:1024M loglvl=all guest_loglvl=all<br>
я меняю 1024 на 530:
<br>kernel /xen.gz dom0_mem=530M,max:530M loglvl=all guest_loglvl=all<br>
ибо, считаю, 1024 - это слишком много для гипервизора (Dom0).
Далее, в файле /etc/xen/ находим строку
<br>#(vnc-listen '127.0.0.1')<br>
расскомментируем её и адрес меняем на '0.0.0.0', то есть приводим к виду:
<br>(vnc-listen '0.0.0.0')<br>
Отключаем SElinux:
<br>sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config<br>setenforce 0<br>
Переходим к растройки сети.
Устанавливаем Bridge Utilities:
<br>yum -y install bridge-utils<br>
Копируем конфиг бриджа:
<br>cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-br0<br>
И правим оба файла. /etc/sysconfig/network-scripts/ifcfg-eth0 должен выглядеть примерно так:
<br>DEVICE="eth0"<br>NM_CONTROLLED="yes"<br>ONBOOT=yes<br>TYPE="Ethernet"<br>NAME="Ethernet Network eth0"<br>BRIDGE="br0"<br>
А /etc/sysconfig/network-scripts/ifcfg-br0 так:
<br>DEVICE="br0"<br>NM_CONTROLLED="yes"<br>ONBOOT="yes"<br>TYPE="Bridge"<br>BOOTPROTO="none"<br>IPADDR="192.168.0.100"<br>PREFIX="24"<br>GATEWAY="192.168.0.1"<br>DNS1="8.8.8.8"<br>DNS2="8.8.4.4"<br>DEFROUTE="yes"<br>NAME="Bridge Network br0"<br>
Достаточно лишь IPADDR и GATEWAY указать свои.
Всё, перегружаемся:
<br>reboot<br>
Проверяем, работает ли гипервизор:
<br>xl info<br>
Должно выглядеть примерно так:
<br>[root@centos65xen ~]# xl info<br>host : centos65xen.localdomain<br>release : 3.10.43-11.el6.centos.alt.x86_64<br>version : #1 SMP Mon Jun 16 14:22:02 UTC 2014<br>machine : x86_64<br>nr_cpus : 2<br>max_cpu_id : 1<br>nr_nodes : 1<br>cores_per_socket : 2<br>threads_per_core : 1<br>cpu_mhz : 2984<br>hw_caps : 178bfbff:28100800:00000000:00000140:00000201:00000000:00000001:00000000<br>virt_caps :<br>total_memory : 1199<br>free_memory : 651<br>sharing_freed_memory : 0<br>sharing_used_memory : 0<br>free_cpus : 0<br>xen_major : 4<br>xen_minor : 2<br>xen_extra : .4-33.el6<br>xen_caps : xen-3.0-x86_64 xen-3.0-x86_32p<br>xen_scheduler : credit<br>xen_pagesize : 4096<br>platform_params : virt_start=0xffff800000000000<br>xen_changeset : unavailable<br>xen_commandline : dom0_mem=530M,max:530M loglvl=all guest_loglvl=all<br>cc_compiler : gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)<br>cc_compile_by : mockbuild<br>cc_compile_domain : centos.org<br>cc_compile_date : Mon Jun 16 17:22:14 UTC 2014<br>xend_config_format : 4<br>
Также проверяем настройки сети:
<br>ifconfig<br>
У br0 должен быть наш ip, который мы прописывали (в примере это 172.23.12.3), а у eth0 всё должно быть пусто. Пример:
<br>[root@centos65xen ~]# ifconfig<br>br0 Link encap:Ethernet HWaddr 08:00:27:17:4F:6A <br> inet addr:172.23.12.3 Bcast:172.23.12.255 Mask:255.255.255.0<br> inet6 addr: fe80::a00:27ff:fe17:4f6a/64 Scope:Link<br> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1<br> RX packets:219 errors:0 dropped:0 overruns:0 frame:0<br> TX packets:70 errors:0 dropped:0 overruns:0 carrier:0<br> collisions:0 txqueuelen:0<br> RX bytes:19380 (18.9 KiB) TX bytes:20656 (20.1 KiB)<br><br>eth0 Link encap:Ethernet HWaddr 08:00:27:17:4F:6A <br> inet6 addr: fe80::a00:27ff:fe17:4f6a/64 Scope:Link<br> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1<br> RX packets:259 errors:0 dropped:3 overruns:0 frame:0<br> TX packets:79 errors:0 dropped:0 overruns:0 carrier:0<br> collisions:0 txqueuelen:1000<br> RX bytes:27086 (26.4 KiB) TX bytes:24472 (23.8 KiB)<br>...<br>
Если всё в порядке, то установка и базовая настройка гипервизора xen в CentOS 6 завершена.

Комментарии (3)
proxmox наше всё, простота развертывания и эксплуатации.
proxmox наше всё, простота развертывания и эксплуатации.
Выше я показал, как просто развернуть гипервизор Xen на базе CentOS 6. По сути, там всего несколько команд. Зато это надёжно куда уж проще?
Завтра я постараюсь подготовить квик-старт мануал по подключению ко всему этому добру Virtual Machine Manager (Virt-manager) и установку нескольких ОС с его помощью. Очень даже ничего так оно выглядит. Тоже просто и удобно. И даже наглядно :) Мне вполне понравилось, когда щупал и разварачивал Ubuntu Server 14.04.
К тому же, Proxmox VE использует KVM и OpenVZ, а не Xen. Что не совсем одно и тоже. Но я обязательно постараюсь попробовать и эту систему виртуализации. Тем более что оно базируется на Debian. Может даже обзор по ниму напишу, если приглянётся. И да, для KVM поддержка аппаратной виртуалзации обязательна, то есть погонять можно это дело только в продуктах от VMware. Если там не заведётся, то ёк ((
Выше я показал, как просто развернуть гипервизор Xen на базе CentOS 6. По сути, там всего несколько команд. Зато это надёжно куда уж проще?
Завтра я постараюсь подготовить квик-старт мануал по подключению ко всему этому добру Virtual Machine Manager (Virt-manager) и установку нескольких ОС с его помощью. Очень даже ничего так оно выглядит. Тоже просто и удобно. И даже наглядно :) Мне вполне понравилось, когда щупал и разварачивал Ubuntu Server 14.04.
К тому же, Proxmox VE использует KVM и OpenVZ, а не Xen. Что не совсем одно и тоже. Но я обязательно постараюсь попробовать и эту систему виртуализации. Тем более что оно базируется на Debian. Может даже обзор по ниму напишу, если приглянётся. И да, для KVM поддержка аппаратной виртуалзации обязательна, то есть погонять можно это дело только в продуктах от VMware. Если там не заведётся, то ёк ((
Было бы неплохо если бы ты описал как дальше к этому добру подключить например XenCentr
Было бы неплохо если бы ты описал как дальше к этому добру подключить например XenCentr