Введение
Виртуальная машина на базе ядра ( KVM ) — это технология виртуализации с открытым исходным кодом, встроенная в ядро 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 update
sudo 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 $USER
sudo 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-образ операционной системы, которую вы хотите установить, и выполните следующие действия, чтобы создать виртуальную машину:
- В строке поиска задач введите « Диспетчер виртуальных машин » и щелкните значок, чтобы запустить приложение.
- После запуска приложения в верхнем меню нажмите « Файл -> «Новая виртуальная машина ».
- Появится новое окно. Выберите « Локальный установочный носитель » и нажмите кнопку « Далее ».
- Укажите путь к ISO-образу и нажмите кнопку « Далее ».
- На следующем экране выберите параметры памяти ВМ и ЦП. Нажмите «Далее».
- Затем выберите « Создать образ диска для виртуальной машины » и выберите размер дискового пространства виртуальной машины. Нажмите «Далее».
- Введите имя для имени виртуальной машины и нажмите « Готово ». Виртуальная машина загрузится, и откроется новое окно.
- Отсюда вы можете следовать инструкциям на экране, чтобы завершить установку операционной системы.
После установки операционной системы к ней можно получить доступ из приложения virt-manager
, через ssh или через интерфейс последовательной консоли.
Вывод
Мы показали вам, как установить KVM в системах Ubuntu 18.04. Теперь вы можете создавать свои собственные гостевые компьютеры с Windows или Linux. Для получения дополнительной информации о KVM посетите страницу документации KVM.