KVM – это программное решение для создания виртуализации на серверах под управлением Linux. С его помощью создаются виртуальные машины, размещаемые на одном сервере, но работающие независимо друг от друга. KVM ( Kernel Virtual Machine) использует встроенные возможности ядра Linux для создания и управления виртуальными машинами, что делает его эффективным и быстрым по сравнению с другими решениями виртуализации.
KVM позволяет запускать виртуальные машины с разными операционными системами. Каждая виртуальная машина имеет свои выделенные обособленные ресурсы (процессорное время, память и дисковое пространство), что позволяет эффективно использовать физический сервер.
KVM был создан в 2004 году разработчиком Linux Ави Климером. Сначала продукт был в составе ядра Linux в качестве эксперимента. В 2007 году KVM перенесли в отдельный блок ядра и сделали официальной частью Linux. С 2008 году Red Hat купила компанию Qumranet (она была спонсором KVM) и стала развивать KVM вместе с другими своими продуктами.
В настоящий момент KVM является открытым и бесплатным решением, поэтому доступен для широкого круга пользователей и разработчиков.
KVM – отличное решение для виртуализации, выгодно отличающееся от конкурентов своей эффективностью. Но для запуска виртуальных машин недостаточно использовать только его. Чтобы использовать виртуализацию потребуется также инструмент, с помощью которого можно сделать имитацию процессора, дисков, видео, сети, шины. Кроме программы для виртуализации используют QEMU.
QEMU – это программное обеспечение для эмуляции аппаратного набора программ компьютера (расшифровывается как Quick Emulator). Оно позволяет запускать виртуальные машины на компьютере, который работает под управлением различных операционных систем.
QEMU может имитировать различные аппаратные компоненты, такие как процессор, память, диск, сетевой интерфейс. Эти возможности позволяют запускать одновременно виртуальные машины, под управлением различных операционных систем и приложений.
QEMU – открытое и бесплатное программное обеспечение, доступное как для физических лиц, так и для компаний.
Для установки виртуализационного решения KVM рекомендуем использовать услугу VPS/VDS хостинг на Linux.
Перед тем как начать установку KVM/QEMU потребуется проверка аппаратной поддержки виртуализации на вашем оборудовании. Чтобы выяснить, возможен ли запуск QEMU/KVM, используйте команду:
egrep -c '(vmx|svm)' /proc/cpuinfo
Расшифровываем ответ сервера:
цифра 0 означает, что ваш процессор не поддерживает аппаратную виртуализацию, цифра 1 или большее число говорит о том, что ваше оборудование поддерживает виртуализацию, вы можете переходит к установке KVM.
sudo apt-get update
sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager
sudo adduser `id -un` libvirt
sudo adduser `id -un` kvm
sudo systemctl status libvirtd
sudo nano /etc/netplan/01-netcfg.yaml
И добавьте в него следующий код:
network:
version: 2
renderer: networkd
ethernets:
enp0s3:
dhcp4: no
bridges:
br0:
dhcp4: no
interfaces: [enp0s3]
addresses: [192.168.1.10/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8,8.8.4.4]
При необходимости внесите нужные коррективы и сохраните.
sudo netplan apply
Установка и настройка KVM/QEMU завершена.
Если вы создаете виртуальные машины (ВМ) с помощью командной строки, используйте утилиты virsh и virt-install. В этом случае команда для создания ВМ будет иметь вид:
sudo virt-install \
--virt-type=kvm \
--name ubuntu1710\
--ram 1024 \
--vcpus=1 \
--os-variant=ubuntu17.10 \
--hvm \
--cdrom=/var/lib/libvirt/boot/ubuntu-17.10.1-server-amd64.iso \
--network network=default,model=virtio \
--graphics vnc \
--disk path=/var/lib/libvirt/images/ubuntu1710.img,size=20,bus=virtio
Рассмотрим значения, которые используются в команде выше:
При работе с виртуальными машинами, используйте следующие команды:
sudo virsh start имя_ВМ
sudo virsh shutdown имя_ВМ
sudo virsh reboot имя_ВМ
sudo virsh destroy имя_ВМ
GUI (Graphical User Interface) –- это оболочка, которая содержит набор программных средств, позволяющих взаимодействовать с компьютерной системой, используя графические элементы: окна, кнопки, меню и другие. Графический интерфейс обеспечивает простой и интуитивно понятный способ управления компьютерной системой, что делает ее доступной для простого пользователя.
Для создания виртуальной машины (ВМ) с помощью KVM можно использовать GUI, например, утилиту virt-manager. Для создания виртуальной машины с помощью графического интерфейса выполните следующие шаги:
sudo virt-manager
После этого начнется установка заданного образа виртуальной машины:
В процессе запуска виртуальной машины вы можете использовать дополнительные настройки:
Создавать виртуальные машины в GUI можно с помощью других утилит, таких как, VMware Workstation, Parallels Desktop и т.д. Эти утилиты предоставляют более широкий набор функций и возможностей для настройки виртуальных машин.
KVM и QEMU являются открытыми и бесплатными программами, которые позволяют работать с виртуальными машинами на Linux-серверах. Установка этих программ – достаточно простой процесс, который выполняется в несколько шагов.
Использование KVM и QEMU позволит создавать и управлять виртуальными машинами, что помогает обеспечить гибкость и эффективность в разработке программного обеспечения, тестировании и деплое.