Менеджер виртуальных машин kvm под windows

Управление KVM с помощью Virt-Manager на Windows

Гипервизор KVM идет с отличными утилитами управления для командной строки. Что касается графических программ для управления виртуальными машинами на сервер KVM, то здесь дело обстоит хуже. Под Linux стандартным средством является Virt-Manager. Давайте посмотрим, как можно использовать его под Windows.

Стандартная утилита для графического управления гостевыми системами в KVM это virt-manager, который по функционалу сравним с другими управляющими утилитами, например Hyper-V Manager, в части управления виртуальными машины на локальном или удаленном гипервизоре.

Нормальной работоспособной версии Virt-Manager или его аналога под операционную систему Windows я пока не встречал. В связи с этим в Windows необходимо использовать для графического управления KVM утилиты, обеспечивающие X11 Forwarding через протокол SSH.

В операционной системе Windows необходимо выполнить установку X Window Server, например бесплатный XMing и SSH клиент, например PuTTy .

При установке XMing оставляем все параметры по умолчанию и просто нажимаем далее. В конце установке XMing уведомит о возможности запуска в фоновом режиме. Мы с этим соглашаемся. После чего в системном трее появится значок X Window server (XMing) со следующим контекстным меню (скриншот ниже).

Далее потребуется выполнить настройку подключения по SSH через PuTTy.

В настройках PuTTy переходим в раздел Connection – SSH – X11. Далее необходимо разрешить X11 Forwarding. Скриншот ниже.

Далее можно вернуться в раздел Connection – SSH и в строке “Remote Command” указать команду автоматического запуска:

Далее можно выполнить подключение к серверу нажав кнопку “Open” и запуск virt-manager.

Если не выполнять последнюю настройку выше, то при запуске PuTTy можно ввести название нужной утилиты и нажать Enter (скриншот ниже).

Ниже представлена консоль virt-manager , подключенная к гипервизору KVM на которой развернуты две виртуальные машины на плтавформе Windows и Linux.

Если щелкнуть правой кнопкой мыши по надписи localhost (QEMU) и выбрать пункт Details , то будет отображен информация о гипервизоре. Скриншот ниже.

Если выбрать и дважды кликнуть по виртуально машине , то можно перейти к настройкам выбранной виртуальной машины (VM). Скриншот ниже.

Необходимо учитывать, что при закрытии окна Putty, сессия будет разорвана.

Virt-Manager: графическая консоль управления KVM

Virt-Manager – графическая консоль для управления виртуальными машинами KVM от компании Red Hat. С помощью Virt-Manager можно, создавать, редактировать, запускать и останавливать виртуальные машины на гипервизоре KVM. Можно выполнять настройку параметров виртуальных машин, что значительно упрощает работу по сравнению с управлением KVM из интерфейса командной строки.

В статье мы рассмотрим установку Virt-Manager на сервер с KVM, типовые задачи управления виртуальными машинами в графической консоли и покажем, как использовать virt-manager из Windows-клиента.

Установка Virt-Manager в Linux

Прежде всего нужно установить необходимые пакеты из базового репозитория на сервере с KVM (в нашем примере сервер KVM установлен на Linux CentOS). Выполните следующую команду yum (или dnf):

Читайте также:  Для чего нужна windows mail

# yum install -y virt-manager xorg-x11-xauth liberation-sans-fonts

Чтобы удаленно подключаться к virt-manager с Windows-компьютера, нужно дополнительно настроить SSH. Откройте файл sshd_config:

Включите следующие параметры:

Перезапустите сервис 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, используется следующий порядок:

  1. Сначала запускаете Xming;
  2. Запускаете сохраненную сессию Putty с опцией X11 Forwarding;
  3. Подключаетесь к virt-manager.

После включения Xming у вас в трее должен светиться значок X:

Далее запустите Putty, и после авторизации на сервере, выполните:

Через несколько секунд у вас должно открыться окно управления 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. Ниже я прикреплю ряд скриншотов, на которых по шагам будет все более-менее понятно. В конце опишу весь процесс создания машины.

  1. При нажатии кнопки на первом скриншоте, запускается процесс создания новой виртуальной машины KVM;
  2. Затем указываем, откуда запускать установку ОС на виртуальной машине. Я использовал локальный ISO образ с дистрибутивом CentOS 8;
  3. Далее настраиваются ресурсы виртуальной машины: количество памяти и vCPU, размер виртуального диска (при необходимости его можно будет расширить или уменьшить), имя, и указываем сеть;
  4. После создания ВМ к ней сразу будет примонтирован установочный образ ОС, который указали при создании.

Чтобы изменить ресурсы или какие-то параметры уже созданной машины, вам нужно выделить ее и нажать кнопку “Open”. В открывшемся меню нажмите на лампочку и у вас откроется список параметров виртуальной машины KVM.

Читайте также:  Windows server nat проброс портов

Чтобы добавить новый сервер KVM, выполните следующее “File -> Add Connection” и заполните данные в открывшемся окне:

Типовые проблемы с Virt-Manager

Во время изучения интерфейса virt-manager, я столкнулся с несколькими ошибками и решил описать их в статье. Первая ошибка, с которой я столкнулся, вышла на стадии создания новой виртуальной машины:

Система ругается на отсутствие файла, который скорее всего должен быть создан при установке KVM на сервер, но в моем случае он отсутствовал. Решился вопрос, созданием файла:

После этого нужно перезапустить сервис libvirtd:

# service libvirtd restart

Следующая ошибка ожидала меня сразу же на следующем шаге установки:

Чтобы решить эту проблему и возможно последующие другие, нужно установить пакет qemu-kvm-tools:

# yum install qemu-kvm-tools -y

После выполненных действий, виртуальная машина создалась без ошибок, и я смог выполнить установку гостевой операционной системы на ней.

Управлять KVM через virt-manager очень удобно. Вы значительно сократите время на выполнение рядовых операций с виртуальными машинами, а также сможете подключиться к ним из Windows.

Одминский блог

Блог о технологиях, технократии и методиках борьбы с граблями

Управление виртуальными машинами KVM из Windows

Как я писал ранее, на стадии установки и создания сервера виртуальных машин KVM, основной проблемой управления виртуалкой, является полное отсутствие каких либо вменяемых решений для управления виртуальной структурой в случае если сервер KVM установлен на *nix без GUI, а администраторская машина работает под Windows.

Если на сервере установлен X Windows, то можно стартовать встроенную управлялку в линь, на основе Xming инкапсулированного в ssh. Но вот без гуя, такой экзерсис не проходит и все что я смог найти из доступных тулзятин под Windows – это KVM Remote Viewer, который стучится по указанному протоколу, и через адрес vnc://VNC_IP:port можно залогиниться на виртуальную на машину KVM

Собственно к самой машине можно получить доступ через VNС, который по дефолту запускается для каждой новой виртуальной машины на локальной IP 127.0.0.1 на портах начиная с 5900. То есть можно играться с инкапсулированием VNC в ssh сессию, но проще запаролить доступ к VNC сессии на момент установки и задать серверу слушать подключение на внешнем IP.

Делается это следующим образом.
Изначально при создании виртуальной машины можно было прописать в параметры её создания —graphics vnc,listen=0.0.0.0 —noautoconsole что открывало бы VNС для подключения с любого хоста.

Но предположим, что у нас была создана дефолтная машина, к которой нам необходимо подключиться.

Для начала нам необходимо изменить профиль этой машины, добавив в него VNC. Файлы профилей хранятся в папке /etc/libvirt/qemu/ но у KVM есть специальная прилада для редактирования файлов машин:
# virsh edit %vm-name%
открываем нужную нам машину и ищем строки graphics

куда добавляем несколько строк с паролем и прослушиванием всех внешних подключений:

сохраняем файл как в обычном vi и перегружаем libvirtd и нашу машину
# /etc/init.d/libvirtd restart
# virsh shutdown %vm-name%
# virsh start %vm-name%

После этого можем конеектится к нашей машине по внешнему IP и с заданным паролем. Порт при этом берем либо по порядковому номеру виртуальной машины исходя из того что у первой он 5900, т.е если это первая машина в системе, то 5900; если вторая то 5901 и т.д. Либо же, если машин в нашей системе много, то смотрим через утилиты:
# virsh list
Id Name State
—————————————————-
2 win7 running
4 win7N2 running
# virsh vncdisplay win7N2
:1
полученное число прибавляем к 5900 и получаем порт к которому нам необходимо подключаться.

Читайте также:  Windows media player не воспроизводит mov

Единственно, что для подключения нам необходимо или отключить фаервол или открыть порты для VNC доступа, для чего в файл /etc/sysconfig/iptables добавляем следующие строки
-A INPUT -m state –state NEW -m tcp -p tcp –dport 5901 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 5900 -j ACCEPT
и перегружаем фаервол
# service iptables restart

Все это конечно здорово, но подразумевает копание в консоли, а хотелось бы более вменяемую управлялку машинами, виртуальными сетями, резервированием и прочее.

Под винду для этого можно использовать веб-клиенты:

Первый – это внешний сервис webvirtmgr.net, куда вы можете подключить свой KVM сервер и через их утилиту управления рулить своей виртуальной инфраструктурой. Функционал, не смотря на минимализм, достаточно богатый и позволяет создавать новые машины, управлять имеющимися, настраивать виртуальную сеть, делать снапшоты, рулить виртуалкой через webbased-VNC. Но, это сторонний сервис и не известно как в нем обстоит дело с сохранностью данных, тем более что при подключении через виртуальную VNC, которая работает через Java (т.ч для корректной работы плагина, адрес сайта придется добавлять в исключения безопасности) запрашивается пароль доступа к серверу, который естественно может быть перехвачен третьими лицами. Вообщем, не смотря на хорошую работу, сервис вызывает легкую такую ночную паранойю. Но можно взять исходники у разраба и поставить их на свой сервер, хотя обновление оных – вопрос отдельный, т.к актуальная версия от середины прошлого года.

Поэтому есть второй вариант управлялки через надстройку к консоли управления Webmin, которая называется Cloudmin GPL. Ставится она элементарно (как обычно прикручиваю к центосине):
#wget http://cloudmin.virtualmin.com/gpl/scripts/cloudmin-kvm-redhat-install.sh
# chmod +x cloudmin-kvm-redhat-install.sh
# ./cloudmin-kvm-redhat-install.sh

Скрипт ставится довольно пневматично, после чего система автоматом гасит виртуалки, что для меня было небольшим сюрпризом, т.к у меня на одной из машин был запущен процесс.

После подъема к панели управления можно будет подключиться через https на порт 10000, по адресу https://SERVER_IP:10000

Если вы ставили Cloudmin на голую машину, то просто начинаете создавать с нуля систему. Если же у вас были работающие машины, то их придется проинициализировать, после перезагрузки системы: System Operations -> Find KVM Instances где ввести параметры доступа к серверу.

После инициализации машины появятся в консоли управления, но функционал их управления, надо заметить, будет сильно хуже чем у webvirtmgr. Тем более, что в моем случае, машинки почему то начали дурковать после установки Cloudmin и оказалось проще снести управлялку, чем разбираться из-за чего возникли конфликты.

Оцените статью