
KVM (Kernel-based Virtual Machine) — это технология виртуализации с открытым исходным кодом, встроенная в ядро Linux. Она позволяет запускать несколько изолированных гостевых виртуальных машин на базе Linux или Windows. Каждая гостевая машина имеет собственную операционную систему и выделенное виртуальное оборудование, такое как процессоры, память, сетевые интерфейсы и хранилище.
В этом руководстве объясняется, как установить и настроить KVM на рабочем столе Ubuntu 18.04. Мы также покажем, как создавать виртуальные машины, которые можно использовать в качестве среды разработки для PHP, Node.js, Ruby и других приложений.
Те же инструкции применимы для Ubuntu 16.04 и любого другого дистрибутива на базе Ubuntu, включая Linux Mint и Elementary OS.
Предпосылки
Чтобы иметь возможность запускать гостевые системы с объемом оперативной памяти более 2 ГБ, а также размещать как 32-битные, так и 64-битные гостевые системы KVM, вам потребуется 64-битная хост-система.
Перед продолжением установки убедитесь, что ваш хост-компьютер Ubuntu поддерживает виртуализацию KVM. Система должна быть оснащена процессором Intel с поддержкой технологии VT-x (vmx) или процессором AMD с поддержкой технологии AMD-V (svm).
Введите следующую команду grep , чтобы узнать, поддерживает ли ваш процессор аппаратную виртуализацию:
grep -Eoc '(vmx|svm)' /proc/cpuinfo
Если ваш процессор поддерживает аппаратную виртуализацию, команда выведет число больше нуля, которое соответствует количеству ядер процессора. В противном случае, если выведено значение 0 это означает, что процессор не поддерживает аппаратную виртуализацию.
На некоторых машинах расширения виртуальной технологии могут быть отключены в BIOS производителями.
Чтобы проверить, включена ли поддержка виртуализации (VT) в BIOS, используйте утилиту kvm-ok , входящую в пакет cpu-checker . Для установки пакета выполните следующие команды от имени пользователя root или пользователя с правами sudo :
sudo apt updatesudo apt install cpu-checker
После этого проверьте, может ли ваша система запускать виртуальные машины KVM с аппаратным ускорением:
kvm-ok
Если возможность виртуализации процессора не отключена в BIOS, команда выведет:
INFO: /dev/kvm exists KVM acceleration can be used
В противном случае команда выведет сообщение об ошибке и, при необходимости, краткое сообщение о том, как включить расширение. Процесс включения технологии AMD-V или VT зависит от типа вашей материнской платы и процессора. Инструкции по настройке BIOS вашей системы см. в документации к материнской плате.
Установка KVM в Ubuntu
Выполните следующую команду для установки KVM и дополнительных пакетов управления виртуализацией:
sudo apt install qemu-kvm libvirt-bin bridge-utils virtinst virt-manager
-
qemu-kvm— программное обеспечение, обеспечивающее аппаратную эмуляцию гипервизора KVM. -
libvirt-bin— программное обеспечение для управления платформами виртуализации. -
bridge-utils— набор инструментов командной строки для настройки мостов Ethernet. -
virtinst— набор инструментов командной строки для создания виртуальных машин. -
virt-managerпредоставляет простой в использовании графический интерфейс и поддерживает утилиты командной строки для управления виртуальными машинами через libvirt.
После установки пакетов демон libvirt запустится автоматически. Вы можете проверить это, выполнив:
sudo systemctl is-active libvirtd
active
Чтобы создавать и управлять виртуальными машинами, вам необходимо добавить пользователя в группы «libvirt» и «kvm». Для этого введите:
sudo usermod -aG libvirt $USERsudo usermod -aG kvm $USER
$USER — переменная среды, которая содержит имя текущего вошедшего в систему пользователя.
Выйдите из системы и войдите снова, чтобы обновить состав группы.
Настройка сети
Устройство-мост с именем «virbr0» создаётся по умолчанию во время установки libvirt. Это устройство использует NAT для подключения гостевых машин к внешнему миру.
Запустите инструмент brctl , чтобы вывести список текущих мостов и интерфейсов, к которым они подключены:
brctl show
bridge name bridge id STP enabled interfaces virbr0 8000.52540003f59e yes virbr0-nic
Мост «virbr0» не имеет добавленных физических интерфейсов. «virbr0-nic» — это виртуальное устройство, через которое не маршрутизируется трафик. Единственная цель этого устройства — предотвратить изменение MAC-адреса моста «virbr0».
Такая сетевая конфигурация подходит большинству пользователей Ubuntu, но имеет ограничения. Если вы хотите получить доступ к гостевым машинам из-за пределов локальной сети, вам потребуется создать новый мост и настроить его так, чтобы гостевые машины могли подключаться к внешнему миру через физический интерфейс хоста.
Создание виртуальных машин
Теперь, когда KVM установлен на вашем рабочем столе Ubuntu, давайте создадим первую виртуальную машину. Это можно сделать из командной строки или с помощью приложения virt-manager .
Загрузите ISO-образ операционной системы, которую вы хотите установить, и следуйте приведенным ниже инструкциям для создания виртуальной машины:
-
В строке поиска «Действия» введите «Virtual Machine Manager» и щелкните значок, чтобы запустить приложение.
-
После запуска приложения в верхнем меню выберите «Файл» -> «Новая виртуальная машина»:

-
Откроется новое окно. Выберите «Локальный установочный носитель» и нажмите кнопку «Переслать».
-
Укажите путь к образу ISO и нажмите кнопку «Вперед».
-
На следующем экране выберите параметры памяти и процессора виртуальной машины. Нажмите «Вперёд».
-
Затем выберите «Создать образ диска для виртуальной машины» и укажите размер дискового пространства виртуальной машины. Нажмите «Вперёд».
-
Введите имя вашей виртуальной машины и нажмите «Готово».
-
Виртуальная машина загрузится и откроется новое окно:

Далее вы можете следовать инструкциям на экране для завершения установки операционной системы.
После установки операционной системы вы можете получить к ней доступ из приложения virt-manager , через ssh или с помощью интерфейса последовательной консоли .
Заключение
Мы показали вам, как установить KVM в системах Ubuntu 18.04. Теперь вы можете создавать гостевые машины на базе Windows или Linux. Подробнее о KVM можно узнать на странице документации KVM .
Если у вас есть вопросы, пожалуйста, оставьте комментарий ниже.
kvm ubuntu Не используете Ubuntu 18.04?
Выберите другую ОС: убунту 20.04
Связанные руководства