Простейший способ запустить виртуальную машину на сервере Linux (KVM)
Прежде чем ставить VirtualBox или что-то подобное, стоит вспомнить, что Linux давно уже умеет в виртуализацию с помощью kvm. Чем удобно: включено в ядро, гарантировано будет работать. Из минусов только отдельная установка GUI, если она нужна.
Установка и запуск
Устанавливаем всё необходимое:
dnf -y install qemu-kvm libvirt virt-install
Далее запуск сервиса
systemctl enable --now libvirtd
На этом, можно сказать, и всё. Команда virsh прекрасно реализует все пожелания администратора. Если же нужна графическая часть для управления, то virt-manager или в браузере cockpit-machines вам поможет.
Быстрый способ плодить виртуалки пачками
Создаём пустую виртуалку традиционным методом из iso-шника.
Накатываем все апдейты, устаналиваем необходимые утилиты, отключаем ненужные службы, включаем нужные, например последовательную консоль, чтобы иметь потом доступ из virsh.
Назовём её 'first'
- Из эталонной виртуалки клонируем новую, которая будет мастер-образом для всех последующих клонов:
Назовём её 'master'
virt-clone -o first -n master -f /<путь до пула с образами дисков>/master.qcow2 --connect=qemu:///system
- Удалим из мастер-образа всякие идентификаторы, обезличим её, но для удобства добавим ssh-ключ
virt-sysprep -d master --ssh-inject root:file:/<путь до файла>/id_rsa.pub
Подробнее об этом можно почитать здесь: http://libguestfs.org/virt-sysprep.1.html
- Теперь можно ставить клонирование на поток
virt-clone -o master -n vm1 -f /<путь до пула с образами дисков>/vm1.qcow2 --connect=qemu:///system
- Запускаем
virsh start vm1
Каждая вновь созданная виртуалка получит свой MAC-адрес и прочие уникальные атрибуты. Время, потраченное на создание каждой новой виртуалки измеряется секундами.
Статьи дополняются по мере получения новой информации. Если есть уточнение – напишите в комментариях в Mastodon.