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 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.