В kvm создание виртуальной машины выполняется из определенного образа с указанием места под диск машины и передачей дополнительных флагов.
Как выглядит создание виртуальной машины KVM с помощью virsh-install
На KVM хосте можно посмотреть какие операционные системы возможны для виртуальных машин
osinfo-quest os
Создается машина через virsh-install с передачей всех нужных параметров.
Машину testvm1 на основе centos7 можно создать так:
virsh-install --network bridge:virbr0 --name testvm1 --os-cariant=centos7.0 --ram=1024 --vspus=1 --disk path=/var/lib/libvirt/images/testvm1- s.qcow2,format=qcow2,bus=virtio,size=5 --graphics none --location=/osmedia/Centos7-x86_64-DVD-1511.iso --extra-args="console=tty0 console=ttyS0,115200" --check all=off
ISO образ должен находиться на сервере по пути /osmedia/Centos7-x86_64-DVD-1511.iso.
Для удобства все параметры часто указываются в одном конфигурационном файле в формате xml. Он при необходимости редактируется через virsh-edit.
Таким образом можно в будущем поменять для машины, например, лимит по оперативной памяти. Со стороны машины потребуется только перезапуск.
Управление виртуальными машинами
Вывести список запущенных машин
virsh list
Пример вывода:
Список всех машин в любом состоянии (в том числе будут выводиться выключенные машины)
virsh list --all
Пример вывода:
Запустить, выключить или перезапустить машину с именем guest_vm
virsh start guest_vm
virsh shutdown guest_vm
virsh reboot guest_vm
Приостановить и возобновить работу
virsh suspend guest_vm
virsh resume guest_vm
Удаление машины выполняется в три шага, первым из них является выключение
virsh shutdown guest_vm
virsh undefine guest_vm
virsh destroy guest_vm
Все новые сервера будут получать свой IP адрес по которому будут доступны по SSH, с мастер хоста к ним также можно получить консольный доступ. Пароль при этом не требуется.
virsh console guest_vm
CTRL+] (exit guest console)
Добавление виртуальной машины в автозапуск после перезагрузки мастер хоста
virsh autostart guest_vm
Так можно убрать из автозапуска
virsh autostart --disable guest_vm
Команда domuuid позволяет выяснить уникальный идентификатор по имени
virsh domuuid guest_vm
Читайте про контейнеризацию LXC.
В отличие от KVM она не предъявляет требований к процессору (не требует поддержки аппаратной виртуализации).