Barium:виртуализация
Содержание
Запуск Бария в виртуальных машинах
Сборки Бария распространяются архивами tar.gz и в формате iso. Второй вполне подходит для запуска в виртуальных машинах, но речь здесь пойдет о другом. simple-install, это скрипт, который используется для установки Бария, не такой уж и simple, как оказалось :), и может быть использован для генерации готового образа для виртуальной машины. С разделом для хранения данных, с шифрованием, свопом, блэкджеком и проч. На момент написания статьи поддерживается создание образов в формате qcow2 и "сырых" образов img. simple-install содержит готовый конфиг для образов виртуальных машин, но можно задать все необходимые параметры вручную. Рассмотрим оба варианта. Для такой сборки дополнительно к обычному списку пакетов для simple-install в системе понадобится пакет qemu-img (точнее исполняемые qemu-img, qemu-nbd в системах отличных от Росы имена пакетов могут отличаться).
Сборка по готовому шаблону.
simple-install --qimage 10000 -t virt -p 123qwe
здесь:
--qimage 10000 - установка в образ qcow2 размером 10000M (образ динамический,реально займет пару гигабайт) -t virt - использовать встроенный шаблон virt -p 123qwe - пароль для раздела luks
Сборка по шаблону с изменениями.
simple-install --qimage 10000 -t virt ROSA-DATA=3:x:ext4 --flags overlay
здесь:
ROSA-DATA=3:x:ext4 - задает параметры для третьего раздела с ROSA-DATA, а именно ext4 вместо luks по этому пароль задавать не нужно. --flags overlay - заменить список флагов (файлы маркеры для конфига grub2) на свой, по дефолту для -t virt там есть флаг luks
Сборка со своими значениями
simple-install --qimage 10000 -t none boot=1:100:vfat ROSA-SYSTEM=2:8000:ext3 ROSA-DATA=2 SWAP=3:x:swap --flags aufs
здесь:
-t none - не использовать шаблон
Для запуска такого образа с qemu нужны приблизительно такие параметры:
qemu-system-x86_64 \ -boot c \ -enable-kvm \ -name "BARIUM" \ -smp 2 \ -m 3G \ -vga std \ -rtc base=localtime \ -hda ./OS.img
При установке в virt-manager:
- выбираем "Импорт образа диска", - добавляем папку с образом как хранилище, выбираем наш образ, - тип "generic linux 2020", - Память, процессоры и прочие настройки - по желанию
Установка завершена записываем в Rosa.ini явки, пароли и можно пользоваться
PXE загрузка
Можно пойти дальше и сделать так чтобы с Бария, установленного выше описанным способом, загружалось по PXE нужное количество виртуальных машин, которые могут даже не иметь своего виртуального диска. Для такой загрузки подготовлен специальный модуль, в котором есть необходимый софт и минимальные настройки. Далее описывается последовательность действий на примере virt-manager.
- Создаем образ для загрузки Бария, который будет нашим PXE, NFS, DHCP сервером в локальной, для виртуальных машин, сети. Далее Сервер.
Чтобы не иметь проблем с указанием источника содержащего ROSA-DATA, устанавливаем барий на три раздела.
- Загружаем образ. Переходим в консоли в папку /.memory/layer-base/1/modules и
barium getmod pxeboot.xzm
- В файле /.memory/layer-base/1/Rosa.ini раскомментируем:
ROUTER=yes
Выключаем виртуальную машину. Модуль у нас есть, переходим к настройкам virt-manager:
- Главное окно Virt-manager. Переходим к вкладке: Правка - Свойства подключения - Виртуальные сети
- Жмем плюс. Название: любое например pxe, Режим: Изолированный, Все остальные галки нужно убрать
- В главном окне virt-manager жмем по иконке нашего Сервера, откроется окно, не запуская переходим к настройкам (голубой флажок в панели)
- Удаляем все сетевые устройства. Скорее всего там одно дефолтное с NAТ.
- Жмем плюс, выбираем новое сетевое устройство. В пункте "Создать на базе" выбираем ранее созданную сеть "pxe"
- Аналогично добавляем еще одно сетевое устройство, только на этот раз с NAT.
Сервер готов, можно загрузить.
Переходим к клиентам.
- Главное окно virt-manager. Создать новую виртуальную машину. Установка вручную. Тип машины Generic Linux 2020. Память и процессоры по желанию.
- В настройках хранилища убираем галку с создания и не выбираем готовых образов (потом добавим если нужно)
- В последнем меню нужно поставить галку в графе "проверить конфигурацию перед установкой"
- В меню настроек нужно также удалить сетевое устройство по умолчанию и добавить наше "pxe". Второе сетевое устройство здесь не понадобится.
- Там же в меню настроек выбрать "Загрузка" и поставить галочку напротив нашей сети
Готово. Можно грузить.
Таких виртуальных машин можно запустить столько сколько позволит ваше ОЗУ.
Чтобы такие машины могли сохранять данные при работе можно подключать к ним образы qcow2. Готовый образ для данных можно генерировать также как и основной с simple-install
simple-install --qimage 4000 -t none ROSA-DATA=1:3000:ext4 SWAP=2:x:swap
Такой образ подключается к каждой машине отдельно и хранит только изменения сделанные во время работы системы.
Либо данные могут писаться по nfs на Сервер, в пунктах загрузки есть пример где так подключается /home.
Запуск ОС из распакованного архива
доступен только в коммерческой версии
- Распаковываем tar.gz архив со сборкой в папку под ОС linux
- Проверяем наличие в системе qemu-system-x86_64, при отсутствии останавливаем qemu
- Переходим в папку куда распакован Барий
- Запускаем
./qemurun
- Способ позволяет установить ОС на токен без создания установочной флешки, для этого передаем скрипту файл устройства носителя (токена)
./qemurun /dev/sda
- Далее аналогично установке с флешки, то есть запускаем графический инсталлятор, заполняем поля с явками и паролями и жмем "Выполнить"