Обзор
Virt-manager использует libvirt и является менеджером многих гипервизоров, включая тот, который мы хотим использовать здесь: QEMU/KVM.
Зачем мне нужна виртуализация?
- Чтобы узнать о новой ОС
- Для настройки оборудования, которое имеет настройки только для этой операционной системы
- Для использования программного обеспечения, которое работает только на другой
Я хочу знать больше
1. Виртуализация
2. Гипервизор
3. Виртуальная машина
Что мы точно должны знать
1. Какой у меня процессор. Определите его и убедитесь, что он как минимум четырехъядерный. ПОСМОТРИТЕ НА CPU-World
2. Проверьте, включены ли "параметры виртуализации" в BIOS, используя
LC_ALL=C lscpu | grep Virtualization
3. Сколько у меня памяти. Проверьте оперативную память и убедитесь, что она составляет не менее 4 ГБ.
4. Количество свободного места на жестком диске. Виртуальная машина может использовать файл образа диска, поэтому дополнительные разделы не нужны.
5. Минимальные требования к аппаратному обеспечению операционной системы, которую вы хотите установить в качестве виртуальной машины.
Установите virt-manager, qemu и все зависимости
Через терминал:
sudo pacman -S --needed virt-manager qemu-desktop libvirt edk2-ovmf dnsmasq iptables-nft
Для поддержки TPM:
sudo pacman -S --asdeps swtpm
Добавить в автозапуск и запустить службу:
sudo systemctl enable libvirtd.service sudo systemctl start libvirtd.service
Добавьте пользователя в группы libvirt, libvirt-qemu и kvm для использования виртуальных машин уровня system (qemu:///system)
sudo usermod -a -G libvirt,libvirt-qemu,kvm $USER
Использование Virt-Manager для создания гостевой системы
0. Подготовьте установочный образ. Если вы собираетесь устанавливать Windows, подготовьте также образ Virtio driver.
.
1. Запустите меню Диспетчер виртуальных машин. В нем уже должно быть установлено соединение LXC. Вы можете отключить и удалить его, если не используете LXC.
2. Перейдите в Файл, выберите Добавить подключение и выберите гипервизор QEMU/KVM или пользовательскую сессию QEMU/KVM, если вам не нужны виртуальные машины уровня system. Нажмите на кнопку подключения.
3. Вам нужны пулы каталогов для хранения образов дисков виртуальных машин или ISO-файлов CD/DVD. Дважды щелкните qemu/kvm, перейдите к хранилищу и добавьте - нажав +, выбрав путь к каталогу, где у вас находится iso, и к каталогу, где создается виртуальная машина.
4. Нажмите на кнопку создания новой виртуальной машины: выберите Локальный установочный носитель (ISO-образ или CDROM), затем выберите установочный ISO-образ и тип ОС (если он не обнаружен).
5. Сколько процессоров и сколько памяти? (проверьте рекомендуемые требования устанавливаемой операционной системы)
6. Создайте файловую систему виртуальной машины, выбрав Select or create custom storage и нажав Manage.... Под нужным пулом каталогов создайте том виртуальной машины (по умолчанию в формате qcow2). Сколько ГБ? Проверьте рекомендуемые требования ОС, которую вы устанавливаете.
7. Присвойте машине название и установите флаг customize configuration before install. У вас есть доступ к экрану со всем оборудованием, которое будет виртуализировано, проверьте, есть ли все необходимое для инициализации и запуска программы установки.
8. В разделе Обзор измените прошивку на UEFI для обеспечения будущего потенциала.
9. Измените тип SATA-диска 1 (образ диска создаваемой виртуальной машины) на virtio для лучшей производительности. Измените режим отключения на unmap, а затем примените изменения. Вы должны заметить, что имя устройства изменится с SATA Disk 1 на VirtIO Disk 1.
.
10. Установите тип сетевой карты тоже virtio для лучшей производительности сети.
.
11. Добавьте чип TPM, выберите модель TIS через Emulated device backend.
12. Добавьте сторожевой таймер для перезагрузки гостя при зависании. Оставьте настройки по умолчанию.
13. И аппаратный RNG, чтобы получить энтропию от хоста.
14. Нажмите на верхнюю часть, чтобы начать установку.
Установка гостевых дополнений
После запуска и работы виртуальной машины необходимо установить spice guest tools.
Для Windows это один пакет: spice-guest-tools-xxxx.exe
Для linux это: spice-vdagent и xf86-video-qxl. Если вы пользуетесь дистрибутивом linux - вы можете установить их с помощью менеджера пакетов
Посетите страницу загрузки Spice
Настройка параметров дисплея
По умолчанию используется модель видеокарты QXL. Если ваша виртуальная машина - система Linux, вы можете изменить ее на virtio и включить 3D-ускорение для лучшей графической производительности.
Виртуальная машина Windows, однако, пока не поддерживает virtio дисплей. Тем не менее, мы можем увеличить ее VGA память с 16 МБ по умолчанию до 64 МБ, чтобы обеспечить более высокое разрешение дисплея и немного улучшить 2D графическую производительность.
Для этого нам нужно отредактировать XML-файл виртуальной машины.
- В virt-manager перейдите в edit > preference и отметьте Enable XML edit.
- В сведениях о виртуальной машине перейдите к видеокарте. На вкладке XML измените значение vgamem на 65536, затем примените изменения.
Обмен файлами между хостом и гостем
Для гостевых систем Linux доступны Virtio-FS и 9p для совместного использования файлов. Дополнительную информацию см. в ArchWiki.
Для гостевых систем Windows самым простым способом обмена файлами между хостом и гостем является SAMBA.
- Создайте SAMBA usershare
- В гостевой Windows введите \\\192.168.122.1 в файловом проводнике и сможете увидеть usershare на вашем хосте.
- Сопоставьте этот SAMBA usershare с новым диском и подключитесь к нему с соответствующими учетными данными. Вот и все.
Дополнительную информацию можно найти в этой статье.
Оптимизация vCPU
Посмотрите эту статью, как настроить топологию vCPU для лучшей производительности.
Например, мой процессор имеет 1 сокет, 8 ядер и 16 потоков. Автоматическая топология назначает моему гостю 4 сокета, 1 ядро и 1 поток. После изменения на 1 сокет, 4 ядра и 1 поток производительность значительно увеличивается.