# Установка HOSTVM VDI Broker

### Импорт виртуальной машины <a href="#import-vm" id="import-vm"></a>

* Скачайте файл `HOSTVM-VDI/Stable/<номер версии>/hostvm-vdi<номер версии>-<номер сборки>.tar.bz2` из каталога загрузок HOSTVM.
* Загрузите данный файл на один из хостов виртуализации HOSTVM с помощью scp или других средств.
* Распакуйте командой: `tar xjvf hostvm-vdi<номер версии>-<номер сборки>.tar.bz2`
* Откройте портал администрирования платформы виртуализации HOSTVM, перейдите в раздел **Compute - Virtual Machines.**
* Нажмите на иконку из трех вертикальных точек в правом верхнем углу интерфейса и выберите пункт **Import.**
* Выберите в качестве источника импорта **Source** файл OVA: "**Virtual Appliance(OVA)**". Укажите хост, на котором расположен файл ВМ и абсолютный путь директории с файлом, нажмите кнопку Load для поиска образа.
* Выберите нужный образ в результатах поиска, переместите его с помощью стрелки в список ВМ для импорта (справа) и нажмите кнопку **Next.**
* В появившемся окне задайте домен хранения и кластер для ВМ. Выделите ВМ в списке, перейдите на вкладку **Network Interfaces** и задайте логическую сеть для данной ВМ.
* После этого с помощью кнопки **OK** запустите импорт OVA и дождитесь его окончания.
* Запустите полученную ВМ, подключитесь к ней с помощью консоли. Авторизуйтесь с логином/паролем *root/engine.*
* Задайте новый пароль для учетной записи root с помощью команды `passwd`

### Настройка сети <a href="#network-config" id="network-config"></a>

В случае получения IP адреса по DHCP данный раздел настройки можно пропустить.

Если требуется настройка статического адреса, подключитесь к ВМ через консоль: `Compute > Virtual machines > выбрать машину > нажать кнопку Console`

После подключения внесите изменения в файл `/etc/network/interfaces`, задав параметры IP адреса, маски сети, и шлюза по умолчанию.

Пример настройки:

```
allow-hotplug eth0
iface eth0 inet static
    address 10.1.1.2
    netmask 24
    gateway 10.1.1.1
```

Укажите адреса DNS в `/etc/resolv.conf`

Перезапустите виртуальную машину для применения настроек:

```bash
reboot
```

При необходимости, задайте новое имя ВМ командой `hostnamectl set-hostname <имя_машины>`.

### Мастер установки HOSTVM VDI <a href="#setup-wizard" id="setup-wizard"></a>

{% hint style="info" %}
Мастер установки доступен для версий 3.6-20250704 и выше. При установке предыдущих версий брокера пропустите этот шаг.
{% endhint %}

{% hint style="info" %}
При использовании внешнего сервера БД требуется его [предварительная настройка](https://kb.pvhostvm.ru/hostvm-vdi/hostvm-vdi-installation-guide/vdi-db).
{% endhint %}

Выполните команду `hostvm-vdi setup` для запуски мастера установки.

Задайте запрашиваемые мастером параметры конфигурации:

* Тип используемой СУБД (MariaDB или PostgreSQL), вариант развертывания (локальная или внешняя БД)
* Параметры подключения к БД: имя БД, пользователь, пароль; при подключении к внешней БД - адрес и порт.

В процессе установки будет сгенерирован самоподписанный сертификат для брокера. Вы сможете заменить его на следующем этапе "Настройка SSL сертификатов". При наличии сертификата в системе (например при настройке существующей инсталляции) вы сможете сохранить старый сертификат либо сгенерировать новый.

### Доступ к веб-интерфейсу управления <a href="#accessing-web-interface" id="accessing-web-interface"></a>

* Откройте веб-интерфейс HOSTVM VDI через браузер по адресу `https://<IP-адрес или имя машины>`, выполните вход в систему с помощью пары логин/пароль: *root/udsmam0*
* Для перехода к администрированию системы выберите в меню пользователя пункт «Dashboard» ("Панель управления").
* Перейдите в раздел `Инструменты - Конфигурация - Security`, задайте новый пароль встроенной административной учетной записи в параметре `rootPass`, нажмите "Сохранить".
* Выполните настройку системы согласно [руководству администратора](https://kb.pvhostvm.ru/hostvm-vdi/hostvm-vdi-admin-guide).

### Настройка SSL сертификатов <a href="#ssl-certificates" id="ssl-certificates"></a>

По умолчанию брокер HOSTVM VDI поставляется с самоподписанным сертификатом, его использование предполагается для тестовых сред, в остальных случаях рекомендуется установка действительных сертификатов, используемых в конечной инфраструктуре.

Для замены сертификатов воспользуйтесь данной инструкцией.

#### Версия брокера 3.5 и выше <a href="#ssl-certificates-35" id="ssl-certificates-35"></a>

Скопируйте файлы сертификата на брокер в директорию `/etc/certs`.

Отредактируйте файл с настройками SSL `/etc/nginx/snippets/vdi-ssl-params.conf`, в директивах `ssl_certificate` и `ssl_certificate_key` укажите новые имена файлов сертификата:

```
ssl_certificate /etc/certs/server.pem; #открытая часть
ssl_certificate_key /etc/certs/key.pem; #приватный ключ
```

Чтобы проверить новую конфигурацию, выполните команду `nginx -t`, вывод команды в случае прохождения проверки:

```shell-session
# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
```

Чтобы применить новые настройки, выполните команду:

```shell-session
# systemctl reload nginx
```

#### Версия брокера 3.0 <a href="#ssl-certificates-30" id="ssl-certificates-30"></a>

Скопируйте файлы сертификата на брокер.

Отредактируйте конфигурационный файл `/etc/apache2/sites-available/default-ssl.conf`, в значения параметров `SSLCertificateFile` и `SSLCertificateKeyFile` запишите путь к открытой части сертификата и приватному ключу соответственно:

```
    SSLCertificateFile    /etc/ssl/certs/ssl-cert-snakeoil.pem
    SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
```

Для применения изменений выполните команду:

```shell-session
# systemctl reload apache2
```

### Настройка для работы с СУБД PostgreSQL (версия 3.6)

{% hint style="info" %}
При установке версии брокера 3.6-20250704 и выше пропустите этот шаг. Для настройки используйте [мастер установки HOSTVM VDI](#setup-wizard).
{% endhint %}

По умолчанию для хранения данных брокера используется СУБД MariaDB (MySQL). Начиная с версии 3.6, дополнительно появилась поддержка СУБД PostgreSQL.

Данная инструкция предназначена для настройки локальной СУБД PostgreSQL в составе брокера. Для подключения к внешнему серверу БД, воспользуйтесь руководством [Установка и настройка выделенного сервера БД](https://kb.pvhostvm.ru/hostvm-vdi/hostvm-vdi-installation-guide/vdi-db).

Перед переключением рекомендуется сделать резервную копию файла настроек брокера `/var/server/server/settings.py`, для возможности отката конфигурации.

В консоли брокера VDI выполните команду `hostvm-vdi-pginit` для запуска мастера настройки.

Ответьте на вопросы мастера, задайте пароль пользователя БД для подключения:

```shell-session
# hostvm-vdi-pginit
Добро пожаловать в мастер настройки HOSTVM VDI Broker. Пожалуйста, заполните все поля корректными значениями. Для принятия значений по умолчанию нажимайте ENTER.
Настроить брокер на использование локальной базы данных PostgreSQL? [Y/n]: y
Внимание! Предыдущая конфигурация будет удалена, подтвердите операцию: [Y/n] y
Введите пароль пользователя БД: 
Введите (еще раз) пароль пользователя БД: 
Для применения новых параметров и перезапуска служб брокера нажмите ENTER []: 
```

После завершения работы мастера брокер VDI будет запущен с новыми настройками БД.
