Virt-Manager – графическая консоль для управления виртуальными машинами KVM от компании Red Hat. С помощью Virt-Manager можно, создавать, редактировать, запускать и останавливать виртуальные машины на гипервизоре KVM. Можно выполнять настройку параметров виртуальных машин, что значительно упрощает работу по сравнению с управлением KVM из интерфейса командной строки.
В статье мы рассмотрим установку Virt-Manager на сервер с KVM, типовые задачи управления виртуальными машинами в графической консоли и покажем, как использовать virt-manager из Windows-клиента.
Установка Virt-Manager в Linux
Прежде всего нужно установить необходимые пакеты из базового репозитория на сервере с KVM (в нашем примере сервер KVM установлен на Linux CentOS). Выполните следующую команду yum (или dnf):
# yum install -y virt-manager xorg-x11-xauth liberation-sans-fonts
Чтобы удаленно подключаться к virt-manager с Windows-компьютера, нужно дополнительно настроить SSH. Откройте файл sshd_config:
# nano /etc/ssh/sshd_config
Включите следующие параметры:
X11Forwarding yes X11DisplayOffset 10 X11UseLocalhost yes
Перезапустите сервис sshd:
# service sshd restart
Управление KVM через virt-manager из Windows
Для удалённого подключения к virt-manager с Windows компьютера, вам понадобится следующее ПО:
- Putty – ssh клиент
- Xming – порт сервера для ОС Windows.
Скачать putty можно с официального сайта https://www.putty.org/, а Xming по ссылке https://sourceforge.net/projects/xming/
Откройте Putty, перейдите в Connection—>SSH—X11. Включите опцию “Enable X11 Forwarding“.
Теперь на вкладке Session, укажите адрес KVM сервера, имя сессии, укажите порт и сохраните подключение.
Чтобы из Windows удаленно подключаться к KVM серверу через virt-manager, используется следующий порядок:
- Сначала запускаете Xming;
- Запускаете сохраненную сессию Putty с опцией X11 Forwarding;
- Подключаетесь к virt-manager.
После включения Xming у вас в трее должен светиться значок X:
Далее запустите Putty, и после авторизации на сервере, выполните:
# virt-manager
Через несколько секунд у вас должно открыться окно управления virt-manager и окно дополнительной авторизации, где нужно ввести данные для подключения к серверу:
После авторизации вы должны увидеть список виртуальных машин.
Использование Virt-Manager для управления виртуальными машинами KVM
Щелкнув ПКМ по виртуальной машине, вы можете выключить, перезагрузить, включить ВМ.
Далее я хочу изменить директорию для хранения файлов виртуальных машин, так как основное место на диске при установке операционной системы на сервере с KVM, я отдал под директорию VZ. Чтобы поменять стандартную директорию, перейдите в меню “Edit -> Connection Details”.
В открывшемся окне, нужно перейти во вкладку “Storage”. Для создания нового пула, нужно остановить работу текущего и после чего удалить его:
После установки пула, кнопка удаления станет активна:
Теперь можно создать пул в нужной вам директории или разделе:
После этого, у меня стал активным мой основной раздел для файлов ВМ:
Либо просто удалить первоначальную директорию и создал симлинк на нужный раздел:
# rm -rf /var/lib/libvirt/images/
# ln -s /vz/disk/ /var/lib/libvirt/images
Теперь можно попробовать создать новую виртуальную машину KVM. Ниже я прикреплю ряд скриншотов, на которых по шагам будет все более-менее понятно. В конце опишу весь процесс создания машины.
- При нажатии кнопки на первом скриншоте, запускается процесс создания новой виртуальной машины KVM;
- Затем указываем, откуда запускать установку ОС на виртуальной машине. Я использовал локальный ISO образ с дистрибутивом CentOS 8;
- Далее настраиваются ресурсы виртуальной машины: количество памяти и vCPU, размер виртуального диска (при необходимости его можно будет расширить или уменьшить), имя, и указываем сеть;
- После создания ВМ к ней сразу будет примонтирован установочный образ ОС, который указали при создании.
Чтобы изменить ресурсы или какие-то параметры уже созданной машины, вам нужно выделить ее и нажать кнопку “Open”. В открывшемся меню нажмите на лампочку и у вас откроется список параметров виртуальной машины KVM.
Чтобы добавить новый сервер KVM, выполните следующее “File -> Add Connection” и заполните данные в открывшемся окне:
Типовые проблемы с Virt-Manager
Во время изучения интерфейса virt-manager, я столкнулся с несколькими ошибками и решил описать их в статье. Первая ошибка, с которой я столкнулся, вышла на стадии создания новой виртуальной машины:
libvirt error: cannot execute binary /etc/libvirt/hooks.qemu: No such file or directory.
Система ругается на отсутствие файла, который скорее всего должен быть создан при установке KVM на сервер, но в моем случае он отсутствовал. Решился вопрос, созданием файла:
# touch /etc/libvirt/hooks/qemu
После этого нужно перезапустить сервис libvirtd:
# service libvirtd restart
Следующая ошибка ожидала меня сразу же на следующем шаге установки:
Unable to complete install: “NoneType object has no attribute storageVolLookupByPath“
Чтобы решить эту проблему и возможно последующие другие, нужно установить пакет qemu-kvm-tools:
# yum install qemu-kvm-tools -y
После выполненных действий, виртуальная машина создалась без ошибок, и я смог выполнить установку гостевой операционной системы на ней.
Управлять KVM через virt-manager очень удобно. Вы значительно сократите время на выполнение рядовых операций с виртуальными машинами, а также сможете подключиться к ним из Windows.
virt-manager больше не разрабатывается. Проще юзать cockpit:
KVM-based virtual machines can easily be configured on RHEL 8 using either the virt-manager is now deprecated in RHEL 8 with the intention that it will be fully replaced by the Cockpit module in the future. As of RHEL 8, however, virt-manager is still available and includes features not yet integrated into the Cockpit virtual machine module.
С чего бы это? Разрабатывается до сих пор. Это в отдельно взятом RHEL его заменили на Cockpit
Кроме того, Cockpit до сих пор мало что умеет. Это по сути дашборд вместо управления.
Спасибо! Очень информативно, думаю именно эта статья подтолкнула меня изучить технологию
Опечаточка 😉
«После выполненных действий, виртуальная машина создалась без ошибок, и я смог выполнить установку ijcntdjq операционной системы на ней.»
ijcntdjq = гостевой )
Поправили )
Ну-с ,создавать то и я могу — на виртуалбоксе к примеру… Я тут бьюсь с одной проблемой… Попробую объяснить что называется на 2 пальцах…
Как мне восстановить на железе ВМ ?? То есть по вашей логике мне надо установить(или включить желательно с флешки) этот ваш менеджер ВМ на железе, и тупо установить ВМ на голом железе ?? Будет ли эта система считаться основной ?? Вообще получится такая затея ?? У меня например проблема — я могу поставить ВМ на основную систему ,но айпи ,который идет напрямую с кабеля в железо, никак не могу сделать основным в ВМ. Прописать — прописываю айпи и адрес железа, даже рестарт нетворка делается хорошо, но интернета — физически НЕТ ! Ваше решение эти 2 проблемы сможет решить ?? Напишите поподробнее ,а то я в этой теме далеко не спец 🙁 Как мне лучше поступить ??
осподя, шо вы несёте??? инторнеты в вм автоматом заводятся, если кривыми руками никто в настройки не залез.
На ум приходят 2 программки — AOMEI (вроде так) и Acronis … Вроде бы как там можно что то подобное сделать… В моих поисках они фигурировали ,но это опять все изучать и искать нормальные гайды…
Может с этими программками попробовать… Хотя ни на что уже не надеюсь честно…
По бекапированию с помощью dd и fsarchiver тоже пытался — наверное было бы проще с ними, но увы не знаю как это делать ,не силен в этом 🙁 mondorescue кое как осилил — так и там ошибки — как итог — не восстановились мои файлы 🙁
Привет itpro.
Подскажи пожалуйста такую вещь, уже спрашивал в предыдущей теме по qemu. Можно ли создать фиксированный образ .qcow2 чтобы он не разрастался? Что для этого необходимо, какие опции прописать при создании образа?
параметр
-o preallocation=full
не помогает.Спасибо
Так, вроде нашел. Не умеет он в фиксированный размер.
There is no such thing as a “fixed-size” QCOW2 image. QCOW2 is a dynamically-growing image format. If you do not want to use a dynamically-growing image format, you have to use a different format.
The only format VirtualBox offers 100% support for is its own, VDI.