Воодушевившись
статьёй про виртуализацию решил описать свой вариант построения виртуальной инфраструктуры. Чем он отличается от сотен остальных мануалов? Тем, что это опыт создания сервера виртуализации на старом железе, не поддерживающем
аппаратную виртуализацию.
Всё началось с того, что после переделки десктопа в небольшой домашний сервер под стандартные задачи хранения файлов и скачивания медиаконтента через торрент, мне понадобилось поднять сервер Domino. Зачем мне это понадобилось, это уже другой вопрос, который мы обязательно рассмотрим. Ну а сейчас расскажу про свои успехи на этом направлении. Сервер Domino сам по себе может быть установлен непосредственно на Ubuntu(особенно его последняя версия 8.5), но мне нужно было другое. Кроме собственно говоря сервера Domino как такового я хотел установить Sametime для удовлетворения своих параноидальных потребностей в организации шифрованного канала связи. Так вот Sametime сервер не устанавливается на Ubuntu, по этому было принято решение сделать виртуальный сервер на ОС Windows 2003 Server. В качестве хост машины был взят имеющийся ПК с установленной ОС Debian 5.0 Lenny. Остальная конфигурация довольно тривиальная:
— ЦП Pentium 4 2.4 Гц;
— 2 Гб оперативной памяти;
Прочие параметры системы пока не важны.
До начала опытов с виртуализацией система довольно успешно тянула rtorrent огромным количеством закачек(> 3500 торрентов). С одной стороны были опасения что пару виртуальных машин сверху система просто не потянет, с другой расчёты показывали что при небольшой нагрузке на виртуальные сервера оставался даже небольшой запас мощьности. Ранее я пользовался только продуктами vmware(на платформе windows), но с переходом на debian(Ubuntu) решил попробовать и другие средства виртуализации.
Попытка номер раз была предпринята с помощью замечательного средства виртуализации от Sun — VirtualBox. Всё складывалось отлично и даже с настройкой сети для гостевых машин проблем не возникло. После непродолжительного чтения мануалов было настроено соединение типа бридж для гостевых машин и они стали видны в локальной сети как самостоятельные единицы(кстати, для этого не пришлось создавать никаких лишних интерфейсов в хост системе и ставить лишних пакетов типа bridge-utils). Но счастье было очень непродолжительным, и через день виртуальный сервер самопроизвольно выключился, т.е. VirtualBox выдал нечленораздельную ошибку и отправился к праотцам. После рестарта виртуального сервера подобные вещи продолжались ещё пару раз, гугление ничего полезного не давало. Попытка номер два была направлена на освоение Qemu. Но поскольку мой древний процессор не поддерживает аппаратной виртуализации Qemu работал крайне медленно, хотя и достаточно стабильно. В результате по общей совокупности минусов данного решения от него пришлось отказаться. Из минусов главное медленная работа, и отсутствие удобных средств удалённого управления, Virtual Manager не в счёт, т.к. в текущей версии он глючит(у меня отсутствовала возможность выбора пользователя под которым подключаться к хост машине, для исправления пришлось править код виртуал манагера в паре мест.)
Попытка номер три предполагала установку уже знакомой среды vmware server 2.0. Установка прошла достаточно просто и стандартно из дистрибутива скачанного с сайта разработчика, если не считать того, что пришлось поправить символьную ссылку на компилятор gcc в папке /usr/bin/(изначально ссылка была на слишком новую версию компилятора, что приводило к ошибке при попытке откомпилировать модули ядра vmware), после чего всё замечательно откомпилировалось. Естественно, что для компиляции модулей ядра должны быть установлены исходники ядра необходимой версии.
Некоторые не очевидные моменты я подсматривал в этой
инструкции.
Итог.
В настоящее время у меня работает один(пока один) виртуальный се
рвер с гостевой ОС Windows 2003 Server и сервером IBM Lotus Domino 8.0.2. Нагрузки на процессор практически никакой, в среднем около 15-20%.
P.S.
После 3х дней без проблемной работы виртуальный сервер выключился из за ошибки в vmware, но это уже другая история, и как показало гугление проблемы в BIOS моёй мат. платы.
Вчера перепрошил BIOS на мат. плате и вновь всё запустил…. пока всё ОК!