LINUX.ORG.RU

Лягушатник для виртуалок

 ,


1

2

Хочется вроде не очень странного. Есть ноутбук с убунтой, на ней NetworkManager, возможность подцепить кабель или wifi.

Хочется иметь на нем маленький зверинец для виртуалок, точнее контейнеров.

У каждой виртуалки должно быть свое имя.

Виртуалки должны жить в broadcast домене, не пересекающемся с офисной сеткой.

Виртуалки должны знать друг друга по имени.

На виртуалках должен быть доступен инет.

С хостовой машины должне быть ssh до каждой машины по имени.

Виртуалки должны создаваться и удаляться быстро.

Сейчас раз в N-цатый сажусь писать говноскрипты для этой задачи.

Господа, поделитесь рецептами, как вы такое настраиваете? Интересуют не большие решения, типа ovirt+foreman, а именно масштаба ноутбука.

★★

У меня ровно всё вот это самое делает виртуалбокс. Скриптами не обмазываюсь, как то само из коробки работает всё...

Jameson ★★★ ()
Ответ на: комментарий от Jameson

У меня ровно всё вот это самое делает виртуалбокс. Скриптами не обмазываюсь, как то само из коробки работает всё...

Как ты создаешь виртуалку? Втыкаешь iso'шник и прощелкиваешь инсталятор? Клонируешь эталон и вручную донастраиваешь hostname? После создания виртуалки c именем v1 ты можешь сделать ssh root@v1 со своей рабочей машины? Что ты делаешь для того, чтобы ssh root@v1 заработал?

ival ★★ ()
Ответ на: комментарий от ival

Как ты создаешь виртуалку? Втыкаешь iso'шник и прощелкиваешь инсталятор? Клонируешь эталон и вручную донастраиваешь hostname?

И так и этак, в зависимости от нужд. Там достаточно гибко всё, скрипты и консольные тулзы тоже никто не отбирал кстати, можно и без гуя, и с гуём.

После создания виртуалки c именем v1 ты можешь сделать ssh root@v1 со своей рабочей машины?

Если в ней по дефолту стартует ssh то да. Если нет - делаю так чтобы он стартовал, очевидно же.

Почитай доку на виртуалбокс, там можно вообще целиком сеть смоделировать, с роутером\dns\dhcp, свитчами и виланами. А можно по бюджетному, у него встроенный dhcp с ddns есть, он твоим виртуалкам всё раздаст. Читай доки, ибо именно для твоих задач виртуалбокс и используют. Для «большой» виртуализации он не очень, а вот для ноута\персоналки и всякого моделирования-тестирования - вполне хорош.

Jameson ★★★ ()

Да, если планируешь гонять одновременно несколько виртуалок с одинаковыми ОС рекомендую обзавестись ядром с поддержкой UKSM http://kerneldedup.org/en/projects/uksm/introduction/, здорово экономит ОЗУ.

Jameson ★★★ ()
Ответ на: комментарий от Jameson

После создания виртуалки c именем v1 ты можешь сделать ssh root@v1 со своей рабочей машины?

Если в ней по дефолту стартует ssh то да. Если нет - делаю так чтобы он стартовал, очевидно же.

Но если я делаю ssh root@v1 на рабочей машине, то сначала (обычно) ssh лезет в /etc/host, потом (обычно) выцепляет search из /etc/resolv.conf и начинает теребить nameserver'а из все того же /etc/resolv.conf. Таким образом надо либо прописать ip-шник в /etc/hosts, либо поднимать bind, определять зону и писать скриптик, который в эту зону новый ip-шник добавляет. И с каких пор название виртуалки в virtualbox кореллирует с hostname операционки, которая там крутится?

Раньше я всегда отключал network manager, делал бриджи, настраивал SNAT, ipforward, поднимал bind, а тут wifi захотелось.

ival ★★ ()
Ответ на: комментарий от ival

Но если я делаю ssh root@v1 на рабочей машине, то сначала (обычно) ssh лезет в /etc/host, потом (обычно) выцепляет search из /etc/resolv.conf и начинает теребить nameserver'а из все того же /etc/resolv.conf. Таким образом надо либо прописать ip-шник в /etc/hosts, либо поднимать bind, определять зону и писать скриптик, который в эту зону новый ip-шник добавляет. И с каких пор название виртуалки в virtualbox кореллирует с hostname операционки, которая там крутится?

Раньше я всегда отключал network manager, делал бриджи, настраивал SNAT, ipforward, поднимал bind, а тут wifi захотелось.

Смешались в кучу кони, люди... Поставь виртуалбокс, покрути, доку почитай, разберись. Всё уже придумали до тебя, понимаешь? Осталось осилить доки и пользоваться.

Jameson ★★★ ()
Ответ на: комментарий от Jameson

Смешались в кучу кони, люди... Поставь виртуалбокс, покрути, доку почитай, разберись. Всё уже придумали до тебя, понимаешь? Осталось осилить доки и пользоваться.

VirtualBox стоит. А можно конкретную ссылку на документацию?

ival ★★ ()

Хочется иметь на нем маленький зверинец для виртуалок, точнее контейнеров.

так виртуалок или контейнеров

Если все же второе, то всякие контенерные системы типа «Докер» (тут его не любят правда, но я как пример привел) умеют в образы и создание бриджей в рамках самой системы, давольно гибко все, хотя есть набор ограничений.

Dred ★★★★★ ()

Тебе нужна тузла которая умеет делать provisioning твоих виртуалок. Погугли по этому слову.

Можно использовать например vagrant, он заточен в основном под virtualbox, но вроде умеет lxc (не пробовал).

На входе нужен образ с виртуалкой и конфиг Vagrantfile с настройками типа настроек сети, хостнейм и прочее.
vagrant поднимает машину, выполняет provisioning согласно конфигу и машина готова.

Nao ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.