TrueConf Server поддерживает возможность запуска на виртуальной машине, хотя это сложная процедура и мы не рекомендуем её неопытным пользователям – настройка корректной работы виртуальной машины бывает порой довольно сложным делом.
В этой инструкции мы покажем пример настройки гипервизора Xen на сервере Ubuntu Server, а конкретнее – на Ubuntu 14.04.05 Server x86-64.
Данная статья носит исключительно ознакомительный характер и не гарантирует непременную и полную работу сервера после выполнения инструкции.
Техническая поддержка TrueConf не консультирует пользователей по вопросам настройки виртуальных машин и запуска TrueConf Server на них. Виртуальная машина – это внешняя система, работа которой не зависит от приложения TrueConf, и её настройка и поддержка целиком лежат на плечах пользователя.
Содержание
Шаг 1. Установите Xen и настройте загрузчик
Первый делом обязательно нужно обновить пакеты системы:
1 |
$ sudo apt-get update && sudo apt-get upgrade |
После этого установите Xen:
1 |
$ sudo apt-get install xen-hypervisor-amd64 xen-utils xenwatch xen-tools xen-utils-common xenstore-utils |
Следующими командами можно назначить Xen для загрузки по умолчанию:
1 2 3 |
$ sudo mv /etc/grub.d/10_linux /etc/grub.d/20_linux $ sudo mv /etc/grub.d/20_linux_xen /etc/grub.d/10_linux_xen $ sudo update-grub |
После этого надо перезапустить ОС и Xen и при загрузке системы Xen запустится автоматически:
Шаг 2. Установите и настройте libvirtd
Установим libvirtd:
1 |
$ sudo apt-get install python-libvirt libvirt-bin libvirt0 python-imaging python-numpy virtinst virt-viewer virt-manager |
После этого нужно настроить libvirtd на работу по умолчанию с Xen. Для этого потребуется отредактировать файл /etc/libvirt/libvirt.conf. В нём строку, начинающуюся с “#uri_default” нужно раскомментировать (убрать символ # в начале) и заменить на следующую: uri_default = “xen:///system”
Дальше нужно добавить исключения в инструмент защиты apparmor:
1 2 3 |
$ sudo ln -s /etc/apparmor.d/usr.sbin.libvirtd /etc/apparmor.d/disable/ $ sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.libvirtd $ sudo /etc/init.d/apparmor restart |
После этого нужно проверить, что текущая запись состоит в группе libvirtd:
1 |
$ cat /etc/group | grep libvirtd |
Вот пример типичного вывода этой команды если в группе содержатся только пользователи 111 и andrey:
1 |
libvirtd:!:111:andrey |
Если текущего пользователя в группе нет, то его можно добавить отдельной командой:
1 |
$ sudo adduser `id -un` libvirtd |
1 2 3 |
Adding user 'andrey' to group 'libvirtd' ... Adding user andrey to group libvirtd Done. |
После этого обязательно нужно заново войти в систему и проверить ,что Xen успешно запускается:
На картинке Xen запускается, но вывод пуст, поскольку виртуальных машин пока нет.
Шаг 3. Создайте сетевой мост
Далее нужно создать сетевой мост. Для этого может понадобиться отредактировать файл /etc/network/interfaces.
В этой файле есть строка, задающая основной сетевой интерфейс. Она находится после строки-комментария “# The primary network interface”. Если сетевым интерфейсом назначен eth0 (в строке написано “auto eth0”), то его нужно заменить на br0, а в конец файла добавить четыре новых строки:
1 2 3 4 |
bridge_ports eth0 bridge_stp off bridge_maxwait 0 bridge_fd 0 |
На картинке ниже представлен пример такого редактирования, только вместо изменения строки “auto eth0” мы её закомментировали (добавили знак решётки в начале, сделав игнорируемой) и добавили после неё новую аналогичную (с дополнительным комментарием перед ней).
После этого нужно перезапустить сеть, а лучше даже всю операционную систему:
1 2 |
$ sudo /etc/init.d/networking restart $ sudo shutdown –r now |
Шаг 4. Настройте сетевой шлюз
Для настройки шлюза нужно отредактировать ещё один файл, /etc/sysctl.conf. В нём нужно найти и раскомментировать следующую строку:
1 |
net.ipv4.ip_forward=1 |
После этого следует ввести команду для применения изменений и ещё раз перезапустить ОС:
1 2 |
$ sudo sysctl -f $ sudo shutdown –r now |
Шаг 5. Проверьте возможности виртуализации
После того, как система перезагрузилась, можно создать первую виртуальную машину:
1 2 |
$ sudo apt-cache search virt-instal $ sudo apt-cache search virt-viewer |
Для установки Windows 2012 (которую мы будем устанавливать в этом примере), как и любой другой не портированной на Xen системы, необходима поддержка центральным процессором технологии виртуализации Intel®Virtualization Technology (VT) или Pacifica (AMD). Информацию о поддержке процессорами аппаратной виртуализации можно посмотреть на странице аппаратных требования Xen. Поддержка аппаратной виртуализации должна быть и у Xen. Для проверки наличия такой поддержки можно использовать команду:
1 |
$ xm info | grep caps |
1 2 |
hw_caps : 178bfbff:ebd3fbff:00000000:00000010:00002001:00000000:0000001f xen_caps : xen-4.4-x86_32p hvm-4.4-x86_32 hvm-4.4-x86_32p |
В представленном здесь выводе hvm-4.4-x86_32 говорит о том, что Xen успешно обнаружил процессор, который поддерживает технологии Intel VT или AMD-V.
Если у вас эта команда выводит другое сообщение, но вы уверены, что у процессора есть архитектурные расширения виртуализации, то проверьте настройки BIOS и, если вы этого ещё не сделали, задействуйте поддержку VT.
Возможно, BIOS вашей материнской платы искусственно отключает виртуализацию. В этом случае нужно обновить или исправить BIOS .
Шаг 6. Создайте виртуальную машину
На всякий случай проверим, какие виртуальные машины запущены сейчас.
1 |
andrey@ubuntu:~$ sudo virsh -c xen:///system list |
1 |
ID Имя Статус |
Вывод пуст – так и должно быть, если ни одна виртуальная машина не запущена. Далее создаём образ диска Xen:
1 2 3 |
andrey@ubuntu:# mkdir -p /root/xenimages andrey@ubuntu:# cd /root/xenimages andrey@ubuntu:# dd if=/dev/zero of=WS2012.img bs=1M count=4096 |
Также необходимо создать ISO-образ системы Windows 2012, который мы будем использовать при инсталляции. В нашем случае мы разместили его в каталоге /root/xenimages.
Создайте конфигурационный файл /etc/xen/win2012 и заполните по следующему примеру:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
kernel = "/usr/lib/xen/boot/hvmloader" builder='hvm' memory = 2048 name = "win2012" vcpus=1 pae=0 acpi=0 apic=0 cpus = "" vif = [ 'bridge=br0' ] disk = [ 'file:/root/xenimages/WS2012.img,ioemu:hda,w' ] on_poweroff = 'destroy' on_reboot = 'destroy' on_crash = 'destroy' device_model = '/usr/lib/xen/bin/qemu-dm' cdrom='/root/xenimages/en_windows2012.iso' boot='d' sdl=0 vnc=1 vncviewer=0 stdvga=0 serial='pty' ne2000=0 |
Обратите внимание на параметр boot=’d’ – он необходим для установки. Впоследствии его необходимо заменить на boot=’c’. Доступ к гостевому домену будет осуществляться через VNC, использование SDL не предполагается.
После создания /etc/xen/win2012 можно начинать установку и пробовать подключиться к домену с помощью VNC. Для этого сразу после создания домена нужно запустить vncviewer:
1 |
$ xl create /etc/xen/win2012 |
1 2 3 4 5 |
Using config file "/etc/xen/ win2012". Started domain Win2012 % vncviewer :0 |
Шаг 7. Установите TrueConf Server
После успешной настройки виртуальной машины остаётся только установить на неё TrueConf Server и начать использование. Пользуясь нашей инструкцией, вы сможете сделать это за 15 минут.