VDI/Ravada: различия между версиями

Материал из ALT Linux Wiki
< VDI
 
(не показано 12 промежуточных версий этого же участника)
Строка 1: Строка 1:
{{Stub}}
Ravada — проект со своей системой управления виртуальными машинами (ВМ), с минимумом функций, доступом пользователей к ВМ через веб-интерфейс.
Ravada — проект со своей системой управления виртуальными машинами (ВМ), с минимумом функций, доступом пользователей к ВМ через веб-интерфейс.


Строка 8: Строка 6:
* удаленный доступ по протоколу Spice;
* удаленный доступ по протоколу Spice;
* быстрое клонирование ВМ для каждого пользователя;
* быстрое клонирование ВМ для каждого пользователя;
* проброс USB-устройств;
* настраиваемый интерфейс конечных пользователей;
* настраиваемый интерфейс конечных пользователей;
* администрирование из веб-браузера.
* администрирование из веб-браузера.


== Установка ==
== Установка ==
{{Attention|Данная инструкция актуальна для {{pkg|ravada}}, начиная с версии 1.5.2-alt1.}}


=== Сервер ===
=== Сервер ===
Строка 38: Строка 39:
</syntaxhighlight>
</syntaxhighlight>


Внести изменения в конфигурационный файл {{path|/etc/ravada.conf}} (следует указать имя пользователя и пароль, указанные на предыдущем шаге).
Внести изменения в конфигурационный файл {{path|/etc/ravada.conf}} (следует указать имя пользователя и пароль, указанные на предыдущем шаге):
<syntaxhighlight lang="ini">
---
db:
  hostname: localhost
  user: rvd_user
  password: Pword12345*
</syntaxhighlight>


Включить по умолчанию и запустить службу libvirtd:
Включить по умолчанию и запустить службу libvirtd:
Строка 76: Строка 84:
На клиенте должна быть установлена программа для удалённого доступа по протоколу [[SPICE]], например, '''remote-viewer''' из пакета {{pkg|virt-viewer}} или [[Remmina]].
На клиенте должна быть установлена программа для удалённого доступа по протоколу [[SPICE]], например, '''remote-viewer''' из пакета {{pkg|virt-viewer}} или [[Remmina]].


== Веб-интерфейс ==
{{Note|На клиенте с ОС Windows необходимо установить virt-viewer (https://releases.pagure.org/virt-viewer/).}}
 
=== Веб-интерфейс ===
Веб-интерфейс 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: Строка 118:
В каталоге {{path|/var/lib/libvirt/images}} можно также найти ISO-образы, загруженные с Ravada.
В каталоге {{path|/var/lib/libvirt/images}} можно также найти ISO-образы, загруженные с Ravada.


== Добавление шаблона KVM ==
=== Добавление шаблона KVM ===


Для создания собственного шаблона KVM, необходимо:
Для создания собственного шаблона KVM, необходимо:
Строка 145: Строка 157:
Созданный шаблон можно использовать для создания ВМ.
Созданный шаблон можно использовать для создания ВМ.


== Создание ВМ ==
=== Создание ВМ ===


==== Гостевая ОС Linux ====
Рекомендации для гостевых систем в Ravada:
Рекомендации для гостевых систем в Ravada:
*как минимум 2 диска: один для ОС, другой для раздела SWAP. Убедитесь, что оба диска выбраны при создании новой машины;  
*как минимум 2 диска: один для ОС, другой для раздела SWAP. Убедитесь, что оба диска выбраны при создании новой машины;  
*в гостевой ОС, необходимо, как минимум, установить пакеты {{pkg|qemu-guest-agent}} и {{pkg|acpi}}:
*в гостевой ОС, необходимо, как минимум, установить пакеты {{pkg|qemu-guest-agent}} и {{pkg|acpi}};
*:<syntaxhighlight lang="bash">
*для возможности работы Copy&Paste между основной и гостевой ОС,в гостевой ОС следует установить пакет {{pkg|spice-vdagent}};
# apt-get install qemu-guest-agent acpi
*автоматические обновления ОС должны быть отключены.
</syntaxhighlight>
*для возможности работы Copy&Paste между основной и гостевой ОС,в гостевой ОС следует установить пакет {{pkg|spice-vdagent}}:
*:<syntaxhighlight lang="bash">
# apt-get install spice-vdagent
</syntaxhighlight>
 


{{Note|Сообщения от бэкенда Ravada можно просмотреть в «Admin Tools»→«Messages».}}
{{Note|Сообщения от бэкенда Ravada можно просмотреть в «Admin Tools»→«Messages».}}


Создание ВМ:
Создание ВМ с ОС Альт:
# Выбрать в меню пункт «Admin Tools»→«Machines». В открывшемся окне, нажать кнопку «New Machine»:
# Выбрать в меню пункт «Admin Tools»→«Machines». В открывшемся окне, нажать кнопку «New Machine»:
#:[[Файл:Ravada_machines.png|Ravada. Вкладка «machines»]]
#:[[Файл:Ravada_machines.png|Ravada. Вкладка «machines»]]
Строка 173: Строка 180:
#:[[Файл:Ravada_machine_view.png|Ravada. Данные для подключения по протоколу SPICE]]
#:[[Файл:Ravada_machine_view.png|Ravada. Данные для подключения по протоколу SPICE]]
# Установить ОС. При установке, следует для системного раздела выбрать /dev/vda, а для раздела SWAP — /dev/vdb.
# Установить ОС. При установке, следует для системного раздела выбрать /dev/vda, а для раздела SWAP — /dev/vdb.
# После установки ОС выполнить настройку ОС:
#*обновить ОС;
#*установить пакеты {{pkg|qemu-guest-agent}}, {{pkg|acpi}} и {{pkg|spice-vdagent}}:
#*:<syntaxhighlight lang="bash">
# apt-get install qemu-guest-agent acpi spice-vdagent
</syntaxhighlight>
#*при необходимости изменить настройки системы или/и установить дополнительные приложения.
==== Гостевая ОС Windows ====


== Создание базы (шаблона ВМ) ==
Рекомендации по установке гостевой ОС Windows 10:
*минимум 3ГБ ОЗУ, 30ГБ дискового пространства;
*при создании ВМ следует добавить раздел подкачки (SWAP);
*:[[Файл:Ravada_win10.png|Ravada. Создание ВМ с ОС Windows 10]]
*после завершения установки ОС:
** установить агент qemu-guest;
** установить гостевые инструменты Windows — spice-guest-tools (https://www.spice-space.org/download/windows/spice-guest-tools/spice-guest-tools-latest.exe);
** убедиться, что служба acpi активирована;
** отключить автоматические обновления;
** переместить файл подкачки с диска С: на D: или E:.
 
=== Создание базы (шаблона ВМ) ===


После настройки ВМ, можно создать базу:
После настройки ВМ, можно создать базу:
Строка 183: Строка 210:
#:[[Файл:Ravada_machine_prepare_base.png|Ravada. Создание шаблона]]
#:[[Файл:Ravada_machine_prepare_base.png|Ravada. Создание шаблона]]


После того, как база будет создана, ВМ появится в списке доступных машин. ВМ будет опубликована, если установить отметку «Public»:
После того как база будет создана, ВМ появится в списке доступных машин. ВМ будет опубликована, если установить отметку «Public»:


[[Файл:Ravada_machine_public.png|Ravada. Опубликовать ВМ]]
[[Файл:Ravada_machine_public.png|Ravada. Опубликовать ВМ]]
Строка 192: Строка 219:
# Внести изменения в ВМ.
# Внести изменения в ВМ.
# Создать базу.
# Создать базу.
=== Управление пользователями ===
Управления пользователями осуществляется на вкладке «Admin Tools»→«Users»:
[[Файл:Ravada_users.png|Ravada. Пользователи]]
Выбрав пользователя, можно изменить его пароль, назначить администратором, установить права доступа:
[[Файл:Ravada_user.png|Ravada. Настройки пользователя]]
== Настройка ==
=== Отключение пароля 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-средах с уникальными рабочими местами.}}
=== Автоматический запуск remote-viewer ===
Чтобы при выборе ВМ в веб-интерфейсе Ravada автоматически запускался remote-viewer необходимо:
# Назначить приложением по умолчанию для файлов .vv — «Удалённый рабочий стол» (remote-viewer).
# Изменить настройки браузера, для автоматического открытия файлов .vv:
#* для chromium: на нижней панели, для загруженного элемента выбрать «Всегда открывать файлы данного типа»:
#*:[[Файл:Ravada_chromium.png|Chromium Всегда открывать файлы данного типа]]
#* для firefox: в контекстном меню загруженного элемента на панели «Загрузки» установить отметку «Всегда открывать подобные файлы»:
#*:[[Файл:Ravada_firefox.png|Firefox Всегда открывать подобные файлы]]
{{Note|Если для SPICE-соединения устанавливается пароль, «Удалённый рабочий стол» будет запущен после нажатия на кнопку «View». Пароль для подключения к ВМ, будет скопирован в буфер обмена.}}
=== Режим киоска ===
Режим киоска (анонимный режим) позволяет любому пользователю, не вошедшему в систему, создать ВМ. Как только эта машина выключается, она автоматически уничтожается.
Настройка режима киоск:
#Определить новую сеть, в которой разрешён этот режим («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]]
=== Установка LDAP сервера ===
Установить пакет {{pkg|389-ds-base}}:
<syntaxhighlight lang="bash"># apt-get install 389-ds-base</syntaxhighlight>
Создать файл с конфигурацией LDAP, например:
<syntaxhighlight lang="ini">
[general]
config_version = 2
start = True
strict_host_checking = False
[slapd]
root_password = 12345678
[backend-userroot]
sample_entries = yes
suffix = dc=test,dc=alt
</syntaxhighlight>
Создать экземпляр LDAP:
<syntaxhighlight lang="bash"># dscreate from-file ds389.conf
Starting installation...
Completed installation for localhost</syntaxhighlight>
где ds389.conf — файл с конфигурацией LDAP.
Запустить и добавить в автозагрузку службу:
<syntaxhighlight lang="bash"># systemctl enable --now dirsrv@localhost</syntaxhighlight>
Добавить в файл {{path|/etc/ravada.conf}} раздел LDAP:
<syntaxhighlight lang="ini">
ldap:
    admin_group: test.admin.group
    admin_user:
        dn: cn=Directory Manager
        password: 12345678
    base: 'dc=test,dc=alt'
</syntaxhighlight>
Перезапустить службы rvd_back и vd_front:
<syntaxhighlight lang="bash">
# systemctl restart rvd_back
# systemctl restart rvd_front
</syntaxhighlight>
Пользователя LDAP можно создать с помощью команды:
<syntaxhighlight lang="bash">
# rvd_back --add-user-ldap test.admin
</syntaxhighlight>
=== Непостоянные (volatile) клоны ===
Непостоянный клон будет удалён при завершении работы.
Включить/отключить данную опцию можно в настройках ВМ, на вкладке «Options»:
[[Файл:Ravada_volatile.png|Ravada. Volatile Clones]]
Клоны, созданные после включения опции, будут непостоянными (клоны созданные до этого, не затрагиваются):
[[Файл:Ravada_volatile2.png|Ravada. Постоянные и непостоянные клоны]]
=== Проброс портов ===
{{Note|На ВМ должен быть установлен пакет {{pkg|qemu-guest-agent}}.}}
Настройка осуществляется на вкладке «Ports» настроек ВМ:
[[Файл:Ravada_ports.png|Ravada. Настройка проброса портов]]
Здесь следует указать номер порта, который будет открыт, и имя (необязательно).
При запуске ВМ, Ravada откроет свободный порт на хосте:
[[Файл:Ravada_ports2.png|Ravada. Открытый порт на ВМ]]
В этом примере для доступа к SSH-серверу внутри ВМ, следует подключиться к порту 60001 IP 192.168.0.105.
=== Выделение клона в отдельную структуру (Spinoff)===
При выполнении операции Spinoff клон становится независимым от своего базового образа.
[[Файл:Ravada_spinoff_before.png|Ravada. Клон до выделения]]
Для выделения ВМ, например EDU-admin, в отдельную структуру, необходимо в настройках ВМ, на вкладке «Base» нажать кнопку «Spinoff clone»:
[[Файл:Ravada_spinoff_button.png|Ravada. Кнопка «Spinoff»]]
После завершения операции, ВМ станет независимой от базового образа:
[[Файл:Ravada_spinoff_after.png|Ravada. Клон после выделения]]
{{Note|До выполнения операции spinoff диск EDU-admin-vda.EDU-vda.qcow2 ссылается на EDU-vda.ro.qcow2:
<syntaxhighlight lang="bash"># qemu-img info /var/lib/libvirt/images/EDU-admin-vda.EDU-vda.qcow2
image: /var/lib/libvirt/images/EDU-admin-vda.EDU-vda.qcow2
file format: qcow2
virtual size: 20 GiB (21474836480 bytes)
disk size: 48.6 MiB
cluster_size: 65536
backing file: /var/lib/libvirt/images/EDU-vda.ro.qcow2
backing file format: qcow2
</syntaxhighlight>
После выделения, файл EDU-admin-vda.EDU-vda.qcow2 будет содержать в себе информацию как из EDU-admin-vda.EDU-vda.qcow2, так и из базового образа (EDU-vda.ro.qcow2):
<syntaxhighlight lang="bash">
# qemu-img info /var/lib/libvirt/images/EDU-admin-vda.EDU-vda.qcow2
image: /var/lib/libvirt/images/EDU-admin-vda.EDU-vda.qcow2
file format: qcow2
virtual size: 20 GiB (21474836480 bytes)
disk size: 9.55 GiB
cluster_size: 65536
</syntaxhighlight>
}}


{{Category navigation|title=Виртуализация|category=Виртуализация|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=Виртуализация|category=Виртуализация|sortkey={{SUBPAGENAME}}}}

Текущая версия от 12:27, 8 июня 2022

Ravada — проект со своей системой управления виртуальными машинами (ВМ), с минимумом функций, доступом пользователей к ВМ через веб-интерфейс.

Особенности:

  • KVM-бэкенд для Windows и Linux ВМ;
  • режим киоска;
  • удаленный доступ по протоколу Spice;
  • быстрое клонирование ВМ для каждого пользователя;
  • проброс USB-устройств;
  • настраиваемый интерфейс конечных пользователей;
  • администрирование из веб-браузера.

Установка

Внимание! Данная инструкция актуальна для ravada, начиная с версии 1.5.2-alt1.


Сервер

Установить пакет 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 (следует указать имя пользователя и пароль, указанные на предыдущем шаге):

---
db:
  hostname: localhost
  user: rvd_user
  password: Pword12345*

Включить по умолчанию и запустить службу 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
Примечание: При первом запуске rvd_back будет инициализирована база данных.


У 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.

Примечание: На клиенте с ОС Windows необходимо установить virt-viewer (https://releases.pagure.org/virt-viewer/).


Веб-интерфейс

Веб-интерфейс Ravada доступен по адресу https://<ip-адрес>:8081:

Веб-интерфейс Ravada

Администрирование

Ravada. Панель администрирования


Добавление собственного 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-образ при создании ВМ:

Ravada. Выбор ISO-образа

В каталоге /var/lib/libvirt/images можно также найти ISO-образы, загруженные с Ravada.

Добавление шаблона KVM

Для создания собственного шаблона KVM, необходимо:

  1. Разместить файл .iso в хранилище KVM, по умолчанию это /var/lib/libvirt/images.
  2. Убедиться, что файл .iso доступен для чтения всем, например:
    # chmod 755 /var/lib/libvirt/images/slinux-10.1-x86_64.iso
    
  3. Получить md5 для ISO-файла:
    # md5sum /var/lib/libvirt/images/slinux-10.1-x86_64.iso 
    05f2bcea4b82176f9d655aae6a1ae1b6  /var/lib/libvirt/images/slinux-10.1-x86_64.iso
    
  4. Добавить запись в таблицу БД:
    $ 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;
    
  5. Создать XML файл шаблона (в каталоге /var/lib/ravada/xml есть примеры файлов шаблонов). Новый файл шаблона можно также создать, создав новую машину с помощью другого инструмента (например, virt-manager), выгрузив xml с помощью команды:
    # virsh list --all
     ID   Имя       Состояние
    ---------------------------
     -    SLinux    выключен
     -    SLinux2   выключен
    # virsh dumpxml SLinux2 > slinux.xml
    
  6. Создать новый файл volume.xml на основе любого из /var/lib/ravada/xml, например:
    # cp /var/lib/ravada/xml/default-volume.xml /var/lib/ravada/xml/slinux-volume.xml
    

Созданный шаблон можно использовать для создания ВМ.

Создание ВМ

Гостевая ОС Linux

Рекомендации для гостевых систем в Ravada:

  • как минимум 2 диска: один для ОС, другой для раздела SWAP. Убедитесь, что оба диска выбраны при создании новой машины;
  • в гостевой ОС, необходимо, как минимум, установить пакеты qemu-guest-agent и acpi;
  • для возможности работы Copy&Paste между основной и гостевой ОС,в гостевой ОС следует установить пакет spice-vdagent;
  • автоматические обновления ОС должны быть отключены.
Примечание: Сообщения от бэкенда Ravada можно просмотреть в «Admin Tools»→«Messages».


Создание ВМ с ОС Альт:

  1. Выбрать в меню пункт «Admin Tools»→«Machines». В открывшемся окне, нажать кнопку «New Machine»:
    Ravada. Вкладка «machines»
  2. Выбрать шаблон, ISO-образ, указать имя ВМ:
    Ravada. Создание ВМ
  3. После нажатия кнопки «Create», ВМ появится в списке доступных машин:
    Ravada. ВМ в списке машин
  4. Запустить ВМ и нажать кнопку «view», чтобы получить доступ к консоли ВМ:
    Ravada. Кнопка «view»
    Для подключения по протоколу SPICE можно использовать указанные данные, либо, если установлен remote-viewer, нажать кнопку «view»:
    Ravada. Данные для подключения по протоколу SPICE
  5. Установить ОС. При установке, следует для системного раздела выбрать /dev/vda, а для раздела SWAP — /dev/vdb.
  6. После установки ОС выполнить настройку ОС:
    • обновить ОС;
    • установить пакеты qemu-guest-agent, acpi и spice-vdagent:
      # apt-get install qemu-guest-agent acpi spice-vdagent
      
    • при необходимости изменить настройки системы или/и установить дополнительные приложения.

Гостевая ОС Windows

Рекомендации по установке гостевой ОС Windows 10:

  • минимум 3ГБ ОЗУ, 30ГБ дискового пространства;
  • при создании ВМ следует добавить раздел подкачки (SWAP);
    Ravada. Создание ВМ с ОС Windows 10
  • после завершения установки ОС:
    • установить агент qemu-guest;
    • установить гостевые инструменты Windows — spice-guest-tools (https://www.spice-space.org/download/windows/spice-guest-tools/spice-guest-tools-latest.exe);
    • убедиться, что служба acpi активирована;
    • отключить автоматические обновления;
    • переместить файл подкачки с диска С: на D: или E:.

Создание базы (шаблона ВМ)

После настройки ВМ, можно создать базу:

  1. Открыть окно настроек ВМ, выбрав нужную ВМ в списке машин.
  2. На вкладке «Description» можно задать описание ВМ.
  3. На вкладке «Screenshot» нажать кнопку «Take screenshot» (сделанный снимок экрана будет отображаться в списке доступных ВМ). Для возможности создания снимка экрана, ВМ должна быть запущена.
  4. На вкладке «Base» нажать кнопку «Prepare Base»:
    Ravada. Создание шаблона

После того как база будет создана, ВМ появится в списке доступных машин. ВМ будет опубликована, если установить отметку «Public»:

Ravada. Опубликовать ВМ

Если необходимо внести изменения в Базу, следует выполнить следующие шаги:

  1. Удалить все клоны этой ВМ.
  2. Снять отметку в поле «Base» (или нажать кнопку «Remove Base» на вкладке «Base» окна свойств ВМ).
  3. Внести изменения в ВМ.
  4. Создать базу.

Управление пользователями

Управления пользователями осуществляется на вкладке «Admin Tools»→«Users»:

Ravada. Пользователи

Выбрав пользователя, можно изменить его пароль, назначить администратором, установить права доступа:

Ravada. Настройки пользователя

Настройка

Отключение пароля SPICE

Когда пользователи запускают ВМ, для SPICE-соединения определяется пароль. Это поведение можно изменить.

Для отключения паролей SPICE для всех ВМ, во всех сетях, необходимо снять отметку с пункта «Display Password» в основных настройках («Admin Tools»→«Settings»):

Ravada. Отключения паролей SPICE для всех ВМ

Для отключения паролей SPICE только для клиентов из определённой сети, необходимо создать новую сеть («Admin Tools»→«Networks»), или изменить настройки существующей, сняв отметку с пункта «password»:

Ravada. Создание новой сети

Эти настройки применяются при запуске новой ВМ (работающие ВМ сохранят прежние настройки).

Внимание! Отключать пароль SPICE рекомендуется только в контролируемых IP-средах с уникальными рабочими местами.


Автоматический запуск remote-viewer

Чтобы при выборе ВМ в веб-интерфейсе Ravada автоматически запускался remote-viewer необходимо:

  1. Назначить приложением по умолчанию для файлов .vv — «Удалённый рабочий стол» (remote-viewer).
  2. Изменить настройки браузера, для автоматического открытия файлов .vv:
    • для chromium: на нижней панели, для загруженного элемента выбрать «Всегда открывать файлы данного типа»:
      Chromium Всегда открывать файлы данного типа
    • для firefox: в контекстном меню загруженного элемента на панели «Загрузки» установить отметку «Всегда открывать подобные файлы»:
      Firefox Всегда открывать подобные файлы
Примечание: Если для SPICE-соединения устанавливается пароль, «Удалённый рабочий стол» будет запущен после нажатия на кнопку «View». Пароль для подключения к ВМ, будет скопирован в буфер обмена.


Режим киоска

Режим киоска (анонимный режим) позволяет любому пользователю, не вошедшему в систему, создать ВМ. Как только эта машина выключается, она автоматически уничтожается.

Настройка режима киоск:

  1. Определить новую сеть, в которой разрешён этот режим («Admin Tools»→«Networks»):
    • задать имя сети;
    • можно отключить пароль SPICE, сняв отметку с пункта «password»;
    • отметить пункт «All machines», чтобы пользователи из этой сети могли получить доступ к виртуальным машинам;
    • нажать кнопку «Save»:
    Ravada. Создание новой сети
  2. Разрешить анонимный режим, для этого перейти на вкладку «machines». Появится список всех баз. Чтобы иметь возможность использовать базу анонимно, она должна быть определена как «Public», а также должна быть установлена отметка «Anonymous». В данном примере настроен анонимный доступ к базе EDU:
    Ravada. Разрешить анонимный режим
  3. Настроить автоматическое удаление анонимных машин. Перейти в «Admin Tools»→«Machines», выбрать базу. На вкладке «Options» задать тайм-аут в поле «Run Timeout» и/или установить отметку в поле «Shutdown disconnected».
    Ravada. Автоматическое удаление анонимных машин
    В этом примере ВМ будет уничтожена, когда пользователь закроет программу просмотра или поработает в течение 60 минут.

Анонимный раздел Ravada доступен по адресу https://<ip-адрес>:8081/anonymous (https://<адрес>/anonymous):

Анонимный раздел Ravada

Установка LDAP сервера

Установить пакет 389-ds-base:

# apt-get install 389-ds-base

Создать файл с конфигурацией LDAP, например:

[general]
config_version = 2
start = True
strict_host_checking = False

[slapd]
root_password = 12345678

[backend-userroot]
sample_entries = yes
suffix = dc=test,dc=alt

Создать экземпляр LDAP:

# dscreate from-file ds389.conf
Starting installation...
Completed installation for localhost

где ds389.conf — файл с конфигурацией LDAP.

Запустить и добавить в автозагрузку службу:

# systemctl enable --now dirsrv@localhost

Добавить в файл /etc/ravada.conf раздел LDAP:

ldap:
    admin_group: test.admin.group
    admin_user:
        dn: cn=Directory Manager
        password: 12345678
    base: 'dc=test,dc=alt'

Перезапустить службы rvd_back и vd_front:

# systemctl restart rvd_back
# systemctl restart rvd_front

Пользователя LDAP можно создать с помощью команды:

# rvd_back --add-user-ldap test.admin

Непостоянные (volatile) клоны

Непостоянный клон будет удалён при завершении работы.

Включить/отключить данную опцию можно в настройках ВМ, на вкладке «Options»:

Ravada. Volatile Clones

Клоны, созданные после включения опции, будут непостоянными (клоны созданные до этого, не затрагиваются):

Ravada. Постоянные и непостоянные клоны

Проброс портов

Примечание: На ВМ должен быть установлен пакет qemu-guest-agent.


Настройка осуществляется на вкладке «Ports» настроек ВМ:

Ravada. Настройка проброса портов

Здесь следует указать номер порта, который будет открыт, и имя (необязательно).

При запуске ВМ, Ravada откроет свободный порт на хосте:

Ravada. Открытый порт на ВМ

В этом примере для доступа к SSH-серверу внутри ВМ, следует подключиться к порту 60001 IP 192.168.0.105.

Выделение клона в отдельную структуру (Spinoff)

При выполнении операции Spinoff клон становится независимым от своего базового образа.

Ravada. Клон до выделения

Для выделения ВМ, например EDU-admin, в отдельную структуру, необходимо в настройках ВМ, на вкладке «Base» нажать кнопку «Spinoff clone»:

Ravada. Кнопка «Spinoff»

После завершения операции, ВМ станет независимой от базового образа:

Ravada. Клон после выделения

Примечание: До выполнения операции spinoff диск EDU-admin-vda.EDU-vda.qcow2 ссылается на EDU-vda.ro.qcow2:
# qemu-img info /var/lib/libvirt/images/EDU-admin-vda.EDU-vda.qcow2 
image: /var/lib/libvirt/images/EDU-admin-vda.EDU-vda.qcow2
file format: qcow2
virtual size: 20 GiB (21474836480 bytes)
disk size: 48.6 MiB
cluster_size: 65536
backing file: /var/lib/libvirt/images/EDU-vda.ro.qcow2
backing file format: qcow2

После выделения, файл EDU-admin-vda.EDU-vda.qcow2 будет содержать в себе информацию как из EDU-admin-vda.EDU-vda.qcow2, так и из базового образа (EDU-vda.ro.qcow2):

# qemu-img info /var/lib/libvirt/images/EDU-admin-vda.EDU-vda.qcow2 
image: /var/lib/libvirt/images/EDU-admin-vda.EDU-vda.qcow2
file format: qcow2
virtual size: 20 GiB (21474836480 bytes)
disk size: 9.55 GiB
cluster_size: 65536