RFC (Request for Comments, Запрос на комментарии) - серия документов, публикуемая сообществом исследователей и разработчиков, руководствующихся практическими интересами, в которой описывается набор протоколов и обобщается опыт функционирования Интернет.
Появилась у нас недавно задача, под которую выделять отдельный реальный сервер жалко, а юзать один сервер совместно с другими задачами геморно.
Давно хотели попробовать (модную нынче) виртуализацию, когда на одном физическом сервере располагается более одной системы и вот как раз такой случай.
На просторах тырнета с помощью гугла была найдена статейка «Ставим VirtualBox на FreeBSD без использования X11«, собственно хорошая статья для старта разборок с виртуализацией.
Приведу копию статьи с моими дополнениями после нее.
Текущая актуальная версия порта VirtualBox — 3.2.4. Начиная, с 3.1.0 версии порт разбит на два: virtualbox-ose-kmod (модули ядра) и virtualbox-ose (сам virtualbox).
В текущей версии порта решена проблема с установкой VirtualBox без X11 и со встроенным vnc сервером. Поэтому процесс установки сводится к стандартным действиям.
Действия по шагам:
# cd /usr/ports/net/libvncserver
# make
# make install
# cd /usr/ports/emulators/virtualbox-ose-kmod
# make
# make install
После этого ставим непосредственно VirtualBox:
# cd /usr/ports/emulators/virtualbox-ose
# make config
далее, выбираем нужные нам опции:
# make
# make install
Добавляем загрузку модуля VirtualBox и запуск скрипта для возможности работы адаптера виртульной машины в bridge-режиме (без нее — только NAT):
# echo ‘vboxdrv_load=»YES»‘ >> /boot/loader.conf
# echo ‘vboxnet_enable=»YES»‘ >> /etc/rc.conf
Чтобы лишний раз не перезагружаться, вручную грузим модуль и скрипт:
# kldload vboxdrv
# /usr/local/etc/rc.d/vboxnet start
Создание и настройка виртуальной машины
Создаем виртуальную машину (посмотреть все возможные ostype: VBoxManage list ostypes)
Backup виртуалки можно сделать через команду export, перед выполнением команды export необходимо выключить виртуалку или поставить её на паузу:
# VBoxManage controlvm MicroXP poweroff
# VBoxManage controlvm MicroXP pause
После чего можно выполнить export:
# VBoxManage export MicroXP -o /usr/WinXP.ovf
Import виртуальных машин:
Может понадобиться или при восстановлении из backup`а или просто при переносе на другой физический сервер.
По умолчанию каталог для хранения виртуальных машин является home каталогом юзера под котором вы вошли в систему, чтобы изменить местоположение выполним:
Удалить любую сетевуху из виртуалки можно по её номеру, мы удалим вторую, которую создали выше:
# VBoxManage modifyvm MicroXP --nic2 none
Проблем или отличий в работе виртуальной машины и реальной я не заметил. Все работает как надо.
Виртуальные машины помогут вам либо решить задачу с нехваткой реальных серверов под какую либо задачу, либо отличный способ для того чтобы создать тестовый стенд для тестирования чего либо.
Например мы собирали тестовый стенд из 3-х виртуалок и гоняли на них BGP с использованием Quagga.