Имеем сервер, на котором нет графической среды, есть задача развернуть на нем несколько виртуальных серверовустанавливаем Virtualbox Для Ubuntu документацией рекомендовано иметь Dynamic Kernel Module Support (DKMS)
apt-get install dkmsСкачиваем с
http://www.virtualbox.org/ наиболее подходящий пакет. Для 10.10 virtualbox-3.2_3.2.10-66523~Ubuntu~maverick_i386.deb
dpkg -i /путь/virtualbox-3.2_3.2.10-66523~Ubuntu~maverick_i386.debон скажет что надо доустановить и пометит для установки пакеты
apt-get -f installустановит все пакеты
создаем гостя с именем ubuntu_srv001
VBoxManage createvm --name "ubuntu_srv001" --register Конфигурация гостя
VBoxManage modifyvm "ubuntu_srv001" --memory 256 --acpi on --boot1 dvd --nic1 bridgedтип ОС — Ubuntu Линукс (смотреть типы VBoxManage list ostypes )
VBoxManage modifyvm "ubuntu_srv001" --ostype ubuntuСоздаем фиксированный жесткий диск 7Гб для гостя
VBoxManage createhd --filename "ubuntu_srv001.vdi" --size 7000 --variant fixed --rememberУстановим созданный файл ubuntu_srv001.vdi первым виртуальным жестким диском SATA
VBoxManage modifyvm "ubuntu_srv001" --sata on --sataportcount 30 --sataport1 "ubuntu_srv001.vdi"Зарегистрируем контроллер IDE для DVD
VBoxManage storagectl "ubuntu_srv001" --name IDE0 --add ideЗарегистрируем ISO файл с устанавливаемой ОС
VBoxManage openmedium dvd /export/distrib/OS/Ubuntu/ubuntu-10.10-server-i386.isoПодключим этот ISO к виртуальной машине
VBoxManage storageattach "ubuntu_srv001" --storagectl "IDE0" --port 1 --device 0 --type dvddrive --medium /export/distrib/OS/Ubuntu/ubuntu-10.10-server-i386.isoВключаем доступ к экрану виртуальной машины по RDP (стандартный порт 3389 поменяем, если виртуальных машин несколько, надо для каждой свой порт)
VBoxManage modifyvm "ubuntu_srv001" --vrdp on --vrdpport 3390Пришло премя стартовать установку гостевой ОС
VBoxHeadless -startvm "ubuntu_srv001"срочно включаем терминальную RDP сессию
В windows
mstsc /v:host:port в linux
rdesktop host:portВсе работаем …....................
установили систему с образа, делаем загрузку гостя с жесткого диска
VBoxManage modifyvm "ubuntu_srv001" --boot1 diskдиск с VboxGuestAdditions лежит здесь
/usr/share/virtualbox/VBoxGuestAdditions.iso. Нужен он при установке графической среды.
Клонирование Виртуальных серверов VirtualBox . У нас есть виртуальная машина ubuntu_srv001 с виртуальным диском ubuntu_srv001.vdi
Клонируем диск с системой.
VBoxManage clonehd ubuntu_srv001.vdi ubuntu_srv002.vdiРегистрируем новую машину с аналогичными параметрами
VBoxManage createvm --name "ubuntu_srv002" -register
VBoxManage modifyvm "ubuntu_srv002" --memory 256 --acpi on --boot1 disk --nic1 bridgedVBoxManage modifyvm "ubuntu_srv002" --ostype ubuntuVBoxManage modifyvm "ubuntu_srv002" --sata on --sataportcount 30 --sataport1 "ubuntu_srv002.vdi"(
VBoxManage storagectl ubuntu_srv002 --name SATA —remove если ошибся виртуальный диск всегда можно отцепить.)
VBoxManage modifyvm "ubuntu_srv002" --vrdp on --vrdpport 3391 (порт у каждой машины свой)
Запускаем клона при выключенном оригинале.
VBoxHeadless -startvm ubuntu_srv002 --vrdp=on > /dev/null 2>&1 &зайдем на клона (оригинал пока выключен)
mstsc /v:host:3391/nano /etc/network/interfacesменяем параметры tcpip у машин не должны совпадать ip
командой
hostname newname меняем имя сервера, имена не должны повторятся
/etc/init.d/networking restart перезапустит сеть
Все . Можно использовать два виртуальных сервера.
Посмотреть список запущенных виртуальных машин
VBoxManage list runningvmsВиртуальные машины в качестве службыДля корректного вызова завершения работы виртуальной машины с консоли хоста я сначала пользовался
VBoxManage controlvm ubuntu_srv001 poweroff лишь спустя время я вычитал, что способ аналогичен обрыву питания на реальном компьютере.
Другой способ, более надежный требует установки пакета управления питанием на виртуальную машину
apt-get install acpid.
Старт службы
/etc/init.d/acpid start.
Если мы автоматически стартуем эту службу на виртуальной машине, то имеем возможность корректно завершить ее работу нажав виртуальную кнопку выключения c машины хоста.
VBoxManage controlvm ubuntu_srv001 acpipowerbuttonТеперь хочется рассказать о процессе регистрации виртуальных машин в качестве службы.
Я делаю через webmin, потому, что очень быстро и просто.(Webmin не панацея для всего,не все можно быстро настроить через webmin)
Заходим на хост сервер через
https://хост:10000/ рутом.
Раздел
System → Bootup and Shutdown → Create a new bootup and shutdown action.
Придумаем имя службы
Bootup commands (в качестве запуска)
VBoxHeadless -startvm ubuntu_srv001 --vrdp=on > /dev/null 2>&1 &Shutdown commands (остановка)
VBoxManage controlvm ubuntu_srv001 acpipowerbuttonв конце кнопка
CreateВсе проверяйте
/etc/init.d/имя_службы start запуск виртуальной машины
/etc/init.d/имя_службы stop остановка.
При таком раскладе перед перезагрузкой хоста не обязательно выключать гостевые сервера. Они корректно завершат работу автоматически.
VBoxManage --help вам в помощь.