VDI/Ravada: различия между версиями
Нет описания правки |
|||
Строка 76: | Строка 76: | ||
На клиенте должна быть установлена программа для удалённого доступа по протоколу [[SPICE]], например, '''remote-viewer''' из пакета {{pkg|virt-viewer}} или [[Remmina]]. | На клиенте должна быть установлена программа для удалённого доступа по протоколу [[SPICE]], например, '''remote-viewer''' из пакета {{pkg|virt-viewer}} или [[Remmina]]. | ||
== Веб-интерфейс == | === Веб-интерфейс === | ||
Веб-интерфейс Ravada доступен по адресу https://<ip-адрес>:8081: | Веб-интерфейс Ravada доступен по адресу https://<ip-адрес>:8081: | ||
[[Файл:Ravada_web.png|Веб-интерфейс Ravada]] | [[Файл:Ravada_web.png|Веб-интерфейс Ravada]] | ||
== Администрирование == | |||
[[Файл:Ravada_web2.png|Ravada. Панель администрирования]] | [[Файл:Ravada_web2.png|Ravada. Панель администрирования]] | ||
== Добавление собственного ISO-образа == | === Добавление собственного ISO-образа === | ||
Для создания ВМ необходимы ISO-образы. Их можно загрузить во время создания ВМ или предварительно подготовить собственный ISO-образ. | Для создания ВМ необходимы ISO-образы. Их можно загрузить во время создания ВМ или предварительно подготовить собственный ISO-образ. | ||
Строка 106: | Строка 108: | ||
В каталоге {{path|/var/lib/libvirt/images}} можно также найти ISO-образы, загруженные с Ravada. | В каталоге {{path|/var/lib/libvirt/images}} можно также найти ISO-образы, загруженные с Ravada. | ||
== Добавление шаблона KVM == | === Добавление шаблона KVM === | ||
Для создания собственного шаблона KVM, необходимо: | Для создания собственного шаблона KVM, необходимо: | ||
Строка 145: | Строка 147: | ||
Созданный шаблон можно использовать для создания ВМ. | Созданный шаблон можно использовать для создания ВМ. | ||
== Создание ВМ == | === Создание ВМ === | ||
Рекомендации для гостевых систем в Ravada: | Рекомендации для гостевых систем в Ravada: | ||
Строка 174: | Строка 176: | ||
# Установить ОС. При установке, следует для системного раздела выбрать /dev/vda, а для раздела SWAP — /dev/vdb. | # Установить ОС. При установке, следует для системного раздела выбрать /dev/vda, а для раздела SWAP — /dev/vdb. | ||
== Создание базы (шаблона ВМ) == | === Создание базы (шаблона ВМ) === | ||
После настройки ВМ, можно создать базу: | После настройки ВМ, можно создать базу: | ||
Строка 183: | Строка 185: | ||
#:[[Файл:Ravada_machine_prepare_base.png|Ravada. Создание шаблона]] | #:[[Файл:Ravada_machine_prepare_base.png|Ravada. Создание шаблона]] | ||
После того | После того как база будет создана, ВМ появится в списке доступных машин. ВМ будет опубликована, если установить отметку «Public»: | ||
[[Файл:Ravada_machine_public.png|Ravada. Опубликовать ВМ]] | [[Файл:Ravada_machine_public.png|Ravada. Опубликовать ВМ]] | ||
Строка 192: | Строка 194: | ||
# Внести изменения в ВМ. | # Внести изменения в ВМ. | ||
# Создать базу. | # Создать базу. | ||
== Настройка == | |||
=== Отключение пароля SPICE === | |||
Когда пользователи запускают ВМ, для SPICE-соединения определяется пароль. Это поведение можно изменить. | |||
Для отключения паролей SPICE для всех ВМ, во всех сетях, необходимо снять отметку с пункта «Display Password» в основных настройках («Admin Tools»→«Settings»): | |||
[[Файл:Ravada_settings.png|Ravada. Отключения паролей SPICE для всех ВМ]] | |||
Для отключения паролей SPICE только для клиентов из определённой сети, необходимо создать новую сеть («Admin Tools»→«Networks»), или изменить настройки существующей, сняв отметку с пункта «password»: | |||
[[Файл:Ravada_network_new.png|Ravada. Создание новой сети]] | |||
Эти настройки применяются при запуске новой ВМ (работающие ВМ сохранят прежние настройки). | |||
{{Attention|Отключать пароль SPICE рекомендуется только в контролируемых IP-средах с уникальными рабочими местами.}} | |||
=== Режим киоска === | |||
Режим киоска (анонимный режим) позволяет любому пользователю, не вошедшему в систему, создать ВМ. Как только эта машина выключается, она автоматически уничтожается. | |||
Настройка режима киоск: | |||
#Определить новую сеть, в которой разрешён этот режим («Admin Tools»→«Networks»): | |||
#*задать имя сети; | |||
#*можно отключить пароль SPICE, сняв отметку с пункта «password»; | |||
#*отметить пункт «All machines», чтобы пользователи из этой сети могли получить доступ к виртуальным машинам; | |||
#*нажать кнопку «Save»: | |||
#:[[Файл:Ravada_network_new.png|Ravada. Создание новой сети]] | |||
# Разрешить анонимный режим, для этого перейти на вкладку «machines». Появится список всех баз. Чтобы иметь возможность использовать базу анонимно, она должна быть определена как «Public», а также должна быть установлена отметка «Anonymous». В данном примере настроен анонимный доступ к базе EDU: | |||
#:[[Файл:Ravada_network_anonymous.png|Ravada. Разрешить анонимный режим]] | |||
# Настроить автоматическое удаление анонимных машин. Перейти в «Admin Tools»→«Machines», выбрать базу. На вкладке «Options» задать тайм-аут в поле «Run Timeout» и/или установить отметку в поле «Shutdown disconnected». | |||
#:[[Файл:Ravada_anonymous_del.png|Ravada. Автоматическое удаление анонимных машин]] | |||
#:В этом примере ВМ будет уничтожена, когда пользователь закроет программу просмотра или поработает в течение 60 минут. | |||
Анонимный раздел Ravada доступен по адресу https://<ip-адрес>:8081/anonymous (https://<адрес>/anonymous): | |||
[[Файл:Ravada_anonymous.png|Анонимный раздел Ravada]] | |||
{{Category navigation|title=Виртуализация|category=Виртуализация|sortkey={{SUBPAGENAME}}}} | {{Category navigation|title=Виртуализация|category=Виртуализация|sortkey={{SUBPAGENAME}}}} |
Версия от 17:13, 27 мая 2022
Ravada — проект со своей системой управления виртуальными машинами (ВМ), с минимумом функций, доступом пользователей к ВМ через веб-интерфейс.
Особенности:
- KVM-бэкенд для Windows и Linux ВМ;
- режим киоска;
- удаленный доступ по протоколу Spice;
- быстрое клонирование ВМ для каждого пользователя;
- настраиваемый интерфейс конечных пользователей;
- администрирование из веб-браузера.
Установка
Сервер
Установить пакет ravada, который установит всё необходимое:
# apt-get install ravada
Установить сервер MySQL/MariaDB:
# apt-get install mariadb-server
Включить по умолчанию и запустить службу mysqld:
# systemctl enable --now mysqld
Задать пароль MySQL пользователя root и настройки безопасности:
# mysql_secure_installation
Подключиться к серверу MySQL:
$ mysql -u root -p
Enter password:
и создать пользователя ravada и базу данных ravada (пароль необходимо запомнить):
MariaDB [(none)]> create database ravada character set utf8 collate utf8_bin;
MariaDB [(none)]> grant all privileges on ravada.* to 'rvd_user'@'localhost' identified by 'Pword12345*';
MariaDB [(none)]> quit;
Внести изменения в конфигурационный файл /etc/ravada.conf (следует указать имя пользователя и пароль, указанные на предыдущем шаге).
Включить по умолчанию и запустить службу libvirtd:
# systemctl enable --now libvirtd
Создать веб-пользователя Ravada (на запрос пароля, необходимо указать пароль создаваемого пользователя, на следующий запрос — подтвердить, что пользователь является администратором):
# rvd_back --add-user admin
Installing .....................------------------------WARNING: No storage pools creating default
INFO: Activating KVM network default
++++++++++++++++++++++++++++++++++++++
admin password: admin
is admin ? : [y/n] y
У Ravada есть две службы, которые должны быть запущены на сервере:
- rvd_back — должен работать от имени пользователя root и управлять виртуальными машинами.
- rvd_front — веб-интерфейс, который отправляет запросы на серверную часть.
Включить по умолчанию и запустить эти службы:
# systemctl enable --now rvd_back
# systemctl enable --now rvd_front
# systemctl status rvd_back
# systemctl status rvd_front
Клиент
На клиенте должна быть установлена программа для удалённого доступа по протоколу SPICE, например, remote-viewer из пакета virt-viewer или Remmina.
Веб-интерфейс
Веб-интерфейс Ravada доступен по адресу https://<ip-адрес>:8081:
Администрирование
Добавление собственного ISO-образа
Для создания ВМ необходимы ISO-образы. Их можно загрузить во время создания ВМ или предварительно подготовить собственный ISO-образ.
Скопируйте файл .iso в хранилище KVM, по умолчанию это /var/lib/libvirt/images.
Обновить пул хранения, т.к. файл был загружен вручную:
# virsh pool-list
Name State Autostart
-------------------------------------------
default active yes
# virsh pool-refresh default
Пул default обновлён
Теперь Ravada может использовать этот ISO-образ при создании ВМ:
В каталоге /var/lib/libvirt/images можно также найти ISO-образы, загруженные с Ravada.
Добавление шаблона KVM
Для создания собственного шаблона KVM, необходимо:
- Разместить файл .iso в хранилище KVM, по умолчанию это /var/lib/libvirt/images.
- Убедиться, что файл .iso доступен для чтения всем, например:
# chmod 755 /var/lib/libvirt/images/slinux-10.1-x86_64.iso
- Получить md5 для ISO-файла:
# md5sum /var/lib/libvirt/images/slinux-10.1-x86_64.iso 05f2bcea4b82176f9d655aae6a1ae1b6 /var/lib/libvirt/images/slinux-10.1-x86_64.iso
- Добавить запись в таблицу БД:
$ mysql -u rvd_user -p
MariaDB [(none)]> use ravada; MariaDB [ravada]> INSERT INTO iso_images (name, description, arch, xml, xml_volume, md5, sha256, device) VALUES ('Slinux','Alt Slinux', 'x86_64', 'slinux.xml' ,'slinux-volume.xml','05f2bcea4b82176f9d655aae6a1ae1b6','mysha256sum','/var/lib/libvirt/images/slinux-10.1-x86_64.iso'); MariaDB [ravada]> quit;
- Создать XML файл шаблона (в каталоге /var/lib/ravada/xml есть примеры файлов шаблонов). Новый файл шаблона можно также создать, создав новую машину с помощью другого инструмента (например, virt-manager), выгрузив xml с помощью команды:
# virsh list --all ID Имя Состояние --------------------------- - SLinux выключен - SLinux2 выключен # virsh dumpxml SLinux2 > slinux.xml
- Создать новый файл volume.xml на основе любого из /var/lib/ravada/xml, например:
# cp /var/lib/ravada/xml/default-volume.xml /var/lib/ravada/xml/slinux-volume.xml
Созданный шаблон можно использовать для создания ВМ.
Создание ВМ
Рекомендации для гостевых систем в Ravada:
- как минимум 2 диска: один для ОС, другой для раздела SWAP. Убедитесь, что оба диска выбраны при создании новой машины;
- в гостевой ОС, необходимо, как минимум, установить пакеты qemu-guest-agent и acpi:
# apt-get install qemu-guest-agent acpi
- для возможности работы Copy&Paste между основной и гостевой ОС,в гостевой ОС следует установить пакет spice-vdagent:
# apt-get install spice-vdagent
Создание ВМ:
- Выбрать в меню пункт «Admin Tools»→«Machines». В открывшемся окне, нажать кнопку «New Machine»:
- Выбрать шаблон, ISO-образ, указать имя ВМ:
- После нажатия кнопки «Create», ВМ появится в списке доступных машин:
- Запустить ВМ и нажать кнопку «view», чтобы получить доступ к консоли ВМ:
- Установить ОС. При установке, следует для системного раздела выбрать /dev/vda, а для раздела SWAP — /dev/vdb.
Создание базы (шаблона ВМ)
После настройки ВМ, можно создать базу:
- Открыть окно настроек ВМ, выбрав нужную ВМ в списке машин.
- На вкладке «Description» можно задать описание ВМ.
- На вкладке «Screenshot» нажать кнопку «Take screenshot» (сделанный снимок экрана будет отображаться в списке доступных ВМ). Для возможности создания снимка экрана, ВМ должна быть запущена.
- На вкладке «Base» нажать кнопку «Prepare Base»:
После того как база будет создана, ВМ появится в списке доступных машин. ВМ будет опубликована, если установить отметку «Public»:
Если необходимо внести изменения в Базу, следует выполнить следующие шаги:
- Удалить все клоны этой ВМ.
- Снять отметку в поле «Base» (или нажать кнопку «Remove Base» на вкладке «Base» окна свойств ВМ).
- Внести изменения в ВМ.
- Создать базу.
Настройка
Отключение пароля SPICE
Когда пользователи запускают ВМ, для SPICE-соединения определяется пароль. Это поведение можно изменить.
Для отключения паролей SPICE для всех ВМ, во всех сетях, необходимо снять отметку с пункта «Display Password» в основных настройках («Admin Tools»→«Settings»):
Для отключения паролей SPICE только для клиентов из определённой сети, необходимо создать новую сеть («Admin Tools»→«Networks»), или изменить настройки существующей, сняв отметку с пункта «password»:
Эти настройки применяются при запуске новой ВМ (работающие ВМ сохранят прежние настройки).
Режим киоска
Режим киоска (анонимный режим) позволяет любому пользователю, не вошедшему в систему, создать ВМ. Как только эта машина выключается, она автоматически уничтожается.
Настройка режима киоск:
- Определить новую сеть, в которой разрешён этот режим («Admin Tools»→«Networks»):
- задать имя сети;
- можно отключить пароль SPICE, сняв отметку с пункта «password»;
- отметить пункт «All machines», чтобы пользователи из этой сети могли получить доступ к виртуальным машинам;
- нажать кнопку «Save»:
- Разрешить анонимный режим, для этого перейти на вкладку «machines». Появится список всех баз. Чтобы иметь возможность использовать базу анонимно, она должна быть определена как «Public», а также должна быть установлена отметка «Anonymous». В данном примере настроен анонимный доступ к базе EDU:
- Настроить автоматическое удаление анонимных машин. Перейти в «Admin Tools»→«Machines», выбрать базу. На вкладке «Options» задать тайм-аут в поле «Run Timeout» и/или установить отметку в поле «Shutdown disconnected».
Анонимный раздел Ravada доступен по адресу https://<ip-адрес>:8081/anonymous (https://<адрес>/anonymous):