Xen Setup · 4 min read · Oct 05, 2025

Идеальная настройка Xen 3.0.3 для Debian Sarge

Идеальная настройка Xen 3.0.3 для Debian Sarge

Версия 1.0
Автор: Фалко Тимме

Этот учебник предоставляет пошаговые инструкции по установке Xen (версия 3.0.3) на систему Debian Sarge (3.1).

Xen позволяет создавать гостевые операционные системы (операционные системы *nix, такие как Linux и FreeBSD), так называемые “виртуальные машины” или domU, под хост-операционной системой (dom0). Используя Xen, вы можете разделить свои приложения на разные виртуальные машины, которые полностью независимы друг от друга (например, виртуальная машина для почтового сервера, виртуальная машина для веб-сайта с высоким трафиком, другая виртуальная машина, которая обслуживает веб-сайты ваших клиентов, виртуальная машина для DNS и т.д.), но при этом использовать одно и то же оборудование. Это экономит деньги, и что еще более важно, это более безопасно. Если виртуальная машина вашего DNS-сервера будет взломана, это не повлияет на ваши другие виртуальные машины. Кроме того, вы можете перемещать виртуальные машины с одного сервера Xen на другой.

Я буду использовать Debian Sarge как для хост-ОС (dom0), так и для гостевой ОС (domU). Я опишу, как установить Xen из исходников (что я рекомендую) в главе 4 и из бинарного пакета ( глава 5). В дополнительном разделе в конце главы 4 ( глава 4.5) я также покажу, как создать виртуальную локальную сеть с виртуальными машинами, где dom0 будет маршрутизатором. Главы 4 и 5 являются взаимоисключающими.

Этот howto предназначен как практическое руководство; он не охватывает теоретические основы. Они рассматриваются во многих других документах в сети.

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

1 Установите хост-систему Debian Sarge (dom0)

Вы можете в целом следовать этим инструкциям, но с некоторыми изменениями:

Тем не менее, важно, чтобы вы ввели linux26 на экране загрузки для установки системы с ядром 2.6. FQDN для dom0 в этом примере будет server1.example.com, поэтому я указываю server1 как имя хоста и example.com как доменное имя. IP-адрес server1.example.com будет 192.168.0.100 в этом учебнике.

Когда дело доходит до разбиения на разделы, я выбираю Ручное редактирование таблицы разделов. Я создаю следующие разделы:

  • /boot 100 МБ (Основной) (Место для нового раздела: Начало) (ext3) ( Флаг загрузки: включен <– важно, иначе ваша система не загрузится!)
  • swap 1ГБ (Логический) (Место для нового раздела: Начало)
  • / 2ГБ (Логический) (Место для нового раздела: Начало) (ext3)
  • /vserver остальное (Логический) (Место для нового раздела: Начало) (ext3)

( Примечание: Вы также можете установить все в один большой раздел (как описано здесь: https://www.howtoforge.com/perfect_setup_debian_sarge), но тогда вам нужно помнить, что строки Grub, которые я описываю в этом howto, немного отличаются. Например, когда я пишу, что я добавляю

| [...] title Xen 3.0.3 / XenLinux 2.6 root (hd0,0) kernel /xen.gz dom0_mem=64000 module /vmlinuz-2.6-xen root=/dev/hda6 ro max_loop=255 module /initrd.img-2.6.16.29-xen [...] |

в /boot/grub/menu.lst, тогда вам, вероятно, следует использовать

| [...] title Xen 3.0.3 / XenLinux 2.6 root (hd0,0) kernel /boot/xen.gz dom0_mem=64000 module /boot/vmlinuz-2.6-xen root=/dev/hda6 ro max_loop=255 module /boot/initrd.img-2.6.16.29-xen [...] |

в этом файле вместо…)

Когда установщик Debian запрашивает Выберите программное обеспечение для установки: я не делаю выбор и продолжаю (dom0 должен работать с минимальным количеством программного обеспечения, чтобы не быть уязвимым для атак. Для внешнего мира он будет доступен только по SSH.).

2 Настройка сети dom0

Поскольку установщик Debian Sarge настроил нашу систему для получения сетевых настроек через DHCP, нам нужно изменить это, так как сервер должен иметь статический IP-адрес. Отредактируйте /etc/network/interfaces и настройте его в соответствии с вашими потребностями (в этом примере я буду использовать IP-адрес 192.168.0.100):

vi /etc/network/interfaces

| # /etc/network/interfaces -- конфигурационный файл для ifup(8), ifdown(8) # Циклический интерфейс auto lo iface lo inet loopback # Первая сетевая карта - эта запись была создана во время установки Debian # (сеть, широковещательная и шлюз являются необязательными) auto eth0 iface eth0 inet static address 192.168.0.100 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 |

Затем перезапустите вашу сеть:

/etc/init.d/networking restart

Отредактируйте /etc/resolv.conf и добавьте несколько серверов имен:

vi /etc/resolv.conf

| search server nameserver 145.253.2.75 nameserver 193.174.32.18 nameserver 194.25.0.60 |

Затем установите имя хоста для dom0:

echo server1.example.com > /etc/hostname   
/bin/hostname -F /etc/hostname

3 Установите Xen

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

Последний способ проще, но у него есть недостаток в том, что ядро domU, которое поставляется с бинарным пакетом, не поддерживает квоты и iptables, оба из которых мне нужны в моих виртуальных машинах (domU). Кроме того, ядро dom0 не поддерживает драйвер сети dummy, который может быть полезен для более сложных сетевых настроек. Также, если вы используете бинарный пакет, существует только одно ядро как для dom0, так и для domU, и настройка сети для виртуальных машин не может быть выполнена с использованием конфигурационных файлов на dom0, а должна быть выполнена внутри самих виртуальных машин, что довольно сложно, если вы хотите создать новые виртуальные машины из заранее подготовленного образа. У меня также сложилось впечатление, что установка из исходников гораздо более стабильна/зрелая. При установке из бинарного пакета у меня случалось, что виртуальная машина не загружалась из-за паники ядра, а через две минуты та же самая неизмененная виртуальная машина загружалась без проблем. Поэтому я настоятельно рекомендую скомпилировать Xen из исходников, хотя это занимает гораздо больше времени.

В главе 4 я описываю, как скомпилировать и установить Xen из исходников, что обязательно, если вам нужны квоты и iptables в ваших виртуальных машинах. В главе 5 я описываю, как установить бинарный пакет Xen, что может быть проще для новичков. Главы 4 и 5 являются взаимоисключающими. Следуйте либо главе 4, либо 5, но не обеим!

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.