Установка Xen · 4 min read · Oct 22, 2025
Установка Xen на сервере Ubuntu 8.04 (Hardy Heron) из репозиториев Ubuntu - Страница 2
3 Создание виртуальных машин (domU)
Теперь давайте создадим наш первый гостевой домен, xen1.example.com, работающий на Hardy Heron (hardy) с IP-адресом 192.168.0.101:
xen-create-image --hostname=xen1.example.com --size=2Gb --swap=256Mb --ide \
--ip=192.168.0.101 --netmask=255.255.255.0 --gateway=192.168.0.1 --force \
--dir=/home/xen --memory=64Mb --arch=i386 --kernel=/boot/vmlinuz-2.6.24-16-xen \
--initrd=/boot/initrd.img-2.6.24-16-xen --install-method=debootstrap --dist=hardy \
--mirror=http://archive.ubuntu.com/ubuntu/ --passwdМного переключателей здесь не нужно, потому что мы указали те же детали в /etc/xen-tools/xen-tools.conf, но это показывает, что вы можете указывать желаемые настройки как в командной строке, так и в /etc/xen-tools/xen-tools.conf. Пожалуйста, убедитесь, что вы указали –ide, в противном случае ваша виртуальная машина может не загрузиться!
(Чтобы узнать больше о доступных параметрах, посмотрите страницу man xen-create-image:
man xen-create-image)
Команда xen-create-image теперь создаст для нас виртуальную машину xen1.example.com. Это может занять несколько минут. Вывод должен быть похож на этот:
root@server1:~# xen-create-image --hostname=xen1.example.com --size=2Gb --swap=256Mb --ide \
> --ip=192.168.0.101 --netmask=255.255.255.0 --gateway=192.168.0.1 --force \
> --dir=/home/xen --memory=64Mb --arch=i386 --kernel=/boot/vmlinuz-2.6.24-16-xen \
> --initrd=/boot/initrd.img-2.6.24-16-xen --install-method=debootstrap --dist=hardy \
> --mirror=http://archive.ubuntu.com/ubuntu/ --passwd
Общая информация
--------------------
Имя хоста : xen1.example.com
Дистрибутив : hardy
Разделы : swap 256Mb (swap)
/ 2Gb (ext3)
Тип образа : sparse
Размер памяти : 64Mb
Путь к ядру : /boot/vmlinuz-2.6.24-16-xen
Путь к Initrd : /boot/initrd.img-2.6.24-16-xen
Информация о сети
----------------------
IP-адрес 1 : 192.168.0.101 [MAC: 00:16:3E:62:DA:BB]
Маска подсети : 255.255.255.0
Широковещательный : 192.168.0.255
Шлюз : 192.168.0.1
Создание образа раздела: /home/xen/domains/xen1.example.com/swap.img
Готово
Создание swap на /home/xen/domains/xen1.example.com/swap.img
Готово
Создание образа раздела: /home/xen/domains/xen1.example.com/disk.img
Готово
Создание файловой системы ext3 на /home/xen/domains/xen1.example.com/disk.img
Готово
Метод установки: debootstrap
Готово
Запуск хуков
Готово
Не были указаны сценарии ролей. Пропуск
Создание конфигурационного файла Xen
Готово
Установка пароля root
Введите новый UNIX пароль:
Повторите новый UNIX пароль:
passwd: пароль успешно обновлен
Все готово
Файл журнала создан в:
/var/log/xen-tools/xen1.example.com.log
root@server1:~#Теперь должен быть файл конфигурации xen1.example.com - /etc/xen/xen1.example.com.cfg. Ознакомьтесь с ним, чтобы ознакомиться с файлами конфигурации виртуальных машин:
cat /etc/xen/xen1.example.com.cfg| # Конфигурационный файл для экземпляра Xen xen1.example.com, созданный # с помощью xen-tools 3.8 во вторник, 6 мая 2008 года, 16:01:38. # # Ядро + размер памяти # kernel = '/boot/vmlinuz-2.6.24-16-xen' ramdisk = '/boot/initrd.img-2.6.24-16-xen' memory = '64' # # Устройство(я) диска. # root = '/dev/hda2 ro' disk = [ 'file:/home/xen/domains/xen1.example.com/swap.img,hda1,w', 'file:/home/xen/domains/xen1.example.com/disk.img,hda2,w', ] # # Имя хоста # name = 'xen1.example.com' # # Сеть # vif = [ 'ip=192.168.0.101,mac=00:16:3E:62:DA:BB' ] # # Поведение # on_poweroff = 'destroy' on_reboot = 'restart' on_crash = 'restart' extra = '2 console=xvc0' |
Параметр file: теперь устарел в Xen 3.2, поэтому мы должны отредактировать /etc/xen/xen1.example.com.cfg и заменить file: на tap:aio: (в противном случае вы получите ошибку, подобную этой:
Ошибка: Устройство 769 (vbd) не может быть подключено. losetup /dev/loop0 /home/xen/domains/xen1.example.com/swap.img не удалоськогда вы попытаетесь запустить виртуальную машину - смотрите http://ubuntuforums.org/showthread.php?t=770902 также):
vi /etc/xen/xen1.example.com.cfg| [...] disk = [ 'tap:aio:/home/xen/domains/xen1.example.com/swap.img,hda1,w', 'tap:aio:/home/xen/domains/xen1.example.com/disk.img,hda2,w', ] [...] |
(Обратите внимание: если у вас двухъядерный процессор и вы хотите, чтобы виртуальная машина использовала оба ядра процессора, добавьте строку vcpus = ‘2’ в файл конфигурации, как это:
vi /etc/xen/xen1.example.com.cfg| # Конфигурационный файл для экземпляра Xen xen1.example.com, созданный # с помощью xen-tools 3.8 в понедельник, 5 мая 2008 года, 16:49:32. # # Ядро + размер памяти # kernel = '/boot/vmlinuz-2.6.24-16-xen' ramdisk = '/boot/initrd.img-2.6.24-16-xen' memory = '64' vcpus = '2' [...] |
После этого в виртуальной машине вы можете выполнить команду
cat /proc/cpuinfoчтобы проверить, что оба ядра процессора используются виртуальной машиной. Вывод может выглядеть так, если ваша виртуальная машина использует оба ядра:
xen1:~# cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 15
model : 75
model name : AMD Athlon(tm) 64 X2 Dual Core Processor 4200+
stepping : 2
cpu MHz : 2210.054
cache size : 512 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu tsc msr pae mce cx8 apic mca cmov pat pse36 clflush mmx fxsr
sse sse2 ht syscall nx mmxext fxsr_opt lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm
cr8legacy ts fid vid ttp tm stc
bogomips : 5526.81
processor : 1
vendor_id : AuthenticAMD
cpu family : 15
model : 75
model name : AMD Athlon(tm) 64 X2 Dual Core Processor 4200+
stepping : 2
cpu MHz : 2210.054
cache size : 512 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu tsc msr pae mce cx8 apic mca cmov pat pse36 clflush mmx fxsr
sse sse2 ht syscall nx mmxext fxsr_opt lm 3dnowext 3dnow up pni cx16 lahf_lm cmp_legacy svm
cr8legacy ts fid vid ttp tm stc
bogomips : 5526.81
xen1:~#)
Чтобы запустить виртуальную машину, выполните
xm create /etc/xen/xen1.example.com.cfgВыполните
xm console xen1.example.comчтобы войти в эту виртуальную машину (нажмите CTRL+] если вы на консоли, или CTRL+5 если вы используете PuTTY, чтобы вернуться к dom0), или используйте SSH-клиент для подключения к ней (192.168.0.101).
В виртуальной машине (когда вы используете ее в первый раз) выполните
mv /lib/tls /lib/tls.disabledТеперь вернемся к хост-системе (dom0). Чтобы получить список работающих виртуальных машин, введите
xm listВывод должен выглядеть так:
root@server1:~# xm list
Name ID Mem VCPUs State Time(s)
Domain-0 0 569 1 r----- 103.6
xen1.example.com 1 64 1 -b---- 60.8
root@server1:~#Чтобы выключить xen1.example.com, сделайте это:
xm shutdown xen1.example.comЕсли вы хотите, чтобы vm01 автоматически запускалась при следующей загрузке системы, сделайте это:
ln -s /etc/xen/xen1.example.com.cfg /etc/xen/autoВот самые важные команды Xen:
xm create -c /path/to/config - Запустить виртуальную машину.
xm shutdown
xm destroy
xm list - Список всех работающих систем.
xm console
xm help - Список всех команд.
Давайте создадим вторую виртуальную машину, xen2.example.com с IP-адресом 192.168.0.102:
xen-create-image --hostname=xen2.example.com --size=2Gb --swap=256Mb --ide \
--ip=192.168.0.102 --netmask=255.255.255.0 --gateway=192.168.0.1 --force \
--dir=/home/xen --memory=64Mb --arch=i386 --kernel=/boot/vmlinuz-2.6.24-16-xen \
--initrd=/boot/initrd.img-2.6.24-16-xen --install-method=debootstrap --dist=hardy \
--mirror=http://archive.ubuntu.com/ubuntu/ --passwdЗатем откройте файл конфигурации виртуальной машины, /etc/xen/xen2.example.com.cfg, и снова замените file: на tap:aio:
vi /etc/xen/xen2.example.com.cfg| [...] disk = [ 'tap:aio:/home/xen/domains/xen2.example.com/swap.img,hda1,w', 'tap:aio:/home/xen/domains/xen2.example.com/disk.img,hda2,w', ] [...] |
После этого вы можете запустить xen2.example.com так:
xm create /etc/xen/xen2.example.com.cfg(Не забудьте выполнить
xm console xen2.example.comи
mv /lib/tls /lib/tls.disabledкогда вы находитесь в виртуальной машине в первый раз!)
… и выключить ее так:
xm shutdown xen2.example.comСписок всех виртуальных машин, созданных с помощью команды xen-create-image, доступен по адресу
xen-list-imagesroot@server1:~# xen-list-images
Name: xen1.example.com
Memory: 64
IP: 192.168.0.101Name: xen2.example.com
Memory: 64
IP: 192.168.0.102
root@server1:~#Чтобы узнать больше о том, что вы можете сделать с xen-tools, посмотрите этот учебник: https://www.howtoforge.com/xen_tools_xen_shell_argo
4 Ссылки
- Xen: http://www.xensource.com/xen/
- xen-tools: http://xen-tools.org/software/xen-tools
- Ubuntu: http://www.ubuntu.com/
Get new posts in your inbox
No spam. Unsubscribe anytime.