Управління сервером kvm з машини під windows, одмінскій блог

Як я писав раніше. на стадії установки і створення сервера віртуальних машин KVM, основною проблемою управління віртуалкою, є повна відсутність будь-яких осудних рішень для управління віртуальною структурою в разі якщо сервер KVM встановлений на * nix без GUI, а адміністраторська машина працює під Windows.

Власне до самої машині можна отримати доступ через 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 і отримуємо порт до якого нам необхідно підключатися.

Єдино, що для підключення нам необхідно або відключити фаєрвол або відкрити порти для 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

Все це звичайно здорово, але має на увазі копання в консолі, а хотілося б більш адекватну управлялку машинами, віртуальними мережами, резервуванням та інше.

Під вінду для цього можна використовувати веб-клієнти:

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

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

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

Схожі статті