# Установка первого ПринтМенеджера в кластере

## Цель

Установка первой ноды ПринтМенеджера в кластерной конфигурации Active-Active.

## Предусловия

- Установлен и настроен балансировщик HAProxy.
- Подготовлены база данных PostgreSQL и NFS-хранилище.
- На сервере балансировщика в директории /opt/printum_balancer/certificates/<IP_или_домен_ПМ> находится архив printum_config.tar.gz

## Шаги установки

### Шаг 1. Скачайте дистрибутив на сервер ПринтМенеджера

Первичная установка работает только офлайн. Скачайте предоставленный дистрибутив на сервер с ПринтМенеджер доступным вам способом. Распакуйте его:
```
tar xf printmanager-x.y.z.tar.gz
```

### Шаг 2. Скопируйте архив настроек 

Скопируйте с сервера с балансировщиком файл `printum_config.tar.gz` (не перепутайте с `printum_certs.tar.gz`) в папку, откуда будете запускать установку ПринтМенеджера, например, `printmanager-x.y.z`.

> **Обратите внимание**: для каждого ПринтМенеджер был создан свой архив!
>
> Возьмите его из папки с соответствующим IP-адресом или доменным именем. При обновлении версии ПринтМенеджер ещё раз переписывать архив не нужно.

### Шаг 3. Запустите установку

#### С автоматическими сертификатами

Если установка первой ноды ПринтМенеджера выполняется на сервере, на котором также установлен модуль Мониторинга:
```
sudo -E ./install.sh
```
Если установка первой ноды ПринтМенеджера выполняется на отдельном сервере:
```
sudo -E MONITORING_ADDRESS=<hostname> ./install.sh
```
где `MONITORING_ADDRESS` — адрес сервера, на котором установлен модуль Мониторинга.

#### С собственными сертификатами:

```
export SSL_CERT=<client.crt>
export SSL_KEY=<client.key>
export SSL_CERT_CA=<ca.crt>
sudo -E ./install.sh
```

Если установка на отдельном сервере аналогично укажите `MONITORING_ADDRESS`:
```
sudo -E MONITORING_ADDRESS=<hostname> ./install.sh
```

## Ожидаемый результат

Первый ПринтМенеджер установлен. На странице балансировщика `https://BALANCER_ADR:7000/` соответствующие строки станут зелёными.

## Как проверить установку

Откройте страницу по адресу `https://BALANCER_ADR:7000/` и убедитесь, что строка, указывающая на установленный ПринтМенеджер, стала зелёной.

## Следующие шаги

- [Добавление серверов ПринтМенеджера в кластер](https://wiki.printum.io/books/3-ustanovka/page/dobavlenie-serverov-printmenedzera-v-klaster)
- [Проверка корректности установки кластера](https://wiki.printum.io/books/3-ustanovka/page/proverka-korrektnosti-ustanovki-klastera)

## Типовые ошибки

| Ошибка | Причина | Решение |
| ------ | ------- | ------- |
| При отложенной печати появляется ошибка "файл недоступен". | NFS-хранилище недоступно или неверно указаны параметры в `.env` ПринтМенеджера. | Выполнить `sudo cat /opt/printmanager/.env`.<br><br>Параметры должны быть:<br> `DRIVER_OPTS_DEVICE` — `:NFS\FOLDER\PATH`,<br>`DRIVER_OPTS_O` — `addr=NFS_ADDR,nolock,soft,rw`,<br>`DRIVER_OPTS_TYPE` — `nfs`.<br><br>Убедитесь в сетевой доступности NFS-сервера и возможности чтения/записи из `NFS_FOLDER_PATH`. |
| Не распечатываются файлы при прямой печати через Клиент ПМ. | Неверный флаг `use_cups_ssl` в настройках Клиента ПМ. | Проверить значение флага `use_cups_ssl` в файле `settings.yml`: `C:\Program Files (x86)\printum\printmanager_client`. |


---

## Связанные страницы

- [Подготовка к установке кластера Active-Active](https://wiki.printum.io/books/3-ustanovka/page/podgotovka-k-ustanovke-klastera-active-active)
- [Установка балансировщика HAProxy](https://wiki.printum.io/books/3-ustanovka/page/ustanovka-balansirovshhika-haproxy)
- [Добавление серверов ПринтМенеджера в кластер](https://wiki.printum.io/books/3-ustanovka/page/dobavlenie-serverov-printmenedzera-v-klaster)
- [Проверка корректности установки кластера](https://wiki.printum.io/books/3-ustanovka/page/proverka-korrektnosti-ustanovki-klastera)