Перейти к основному содержимому
Версия: 2.4

Первый запуск

Для установки Памир на систему пользователя должен быть соблюден ряд технических требований.

Технические требования​

Поддерживаемые операционные системы​

Дистрибутивы Linux с ядром не ниже версии 4.19 и системой инициализации systemd:

  • Debian не ниже версии 10;
  • Ubuntu не ниже версии 20.04;
  • Astra Linux Special Edition не ниже версии 1.7.4;
  • RED OS не ниже версии 8.

В операционной системе должны быть установлены следующие компоненты:

  • Docker Engine не ниже версии 24.0 (или Podman не ниже версии 4.9.0 с активным сокетом).

Дополнительно необходимо настроить параметры ядра. Для запуска OpenSearch требуется:

sudo sysctl -w vm.max_map_count=262144

Для сохранения значения между перезагрузками добавьте строку в /etc/sysctl.conf:

vm.max_map_count=262144
предупреждение

При значении vm.max_map_count ниже 262144 OpenSearch не сможет запуститься.

Podman (rootless)

При использовании Podman в режиме rootless (установка от обычного пользователя) дополнительно требуется разрешить непривилегированным процессам использовать порты начиная с 80, иначе сервис frontend не сможет запуститься:

sudo sysctl -w net.ipv4.ip_unprivileged_port_start=80

Для сохранения значения между перезагрузками добавьте строку в /etc/sysctl.conf:

net.ipv4.ip_unprivileged_port_start=80

Также при использовании Podman необходимо отключить SELinux (или перевести в режим permissive), иначе контейнеры не смогут нормально функционировать. Инсталлятор выдаст предупреждение при обнаружении активного SELinux:

# Временное отключение (до перезагрузки)
sudo setenforce 0

# Постоянное отключение — установить SELINUX=disabled в /etc/selinux/config

Для корректной работы контейнеров (в частности, OpenSearch) необходимо снять ограничение на блокировку памяти в сервисе systemd Podman. Добавьте параметр LimitMEMLOCK=infinity в секцию [Service] файла юнита podman.service:

[Service]
LimitMEMLOCK=infinity

Для автоматического запуска контейнеров после перезагрузки машины необходимо включить в автозагрузку сервисы podman.socket и podman-restart.service:

systemctl --user enable podman.socket
systemctl --user enable podman-restart.service

По умолчанию podman-restart.service перезапускает только контейнеры с политикой restart-policy=always, тогда как Памир использует политику unless-stopped. Для корректного запуска контейнеров после перезагрузки необходимо переопределить команды запуска и остановки сервиса через drop-in файл:

systemctl --user edit podman-restart.service

Содержимое drop-in файла:

[Service]
ExecStart=
ExecStart=/usr/bin/podman $LOGGING start --all --filter restart-policy=unless-stopped
ExecStop=
ExecStop=/usr/bin/podman $LOGGING stop --all --filter restart-policy=unless-stopped

После внесения всех изменений рекомендуется перезагрузить машину, чтобы Podman запустился с корректным значением LimitMEMLOCK.

примечание

Инсталлятор поддерживает миграцию каталога хранения данных Docker на другой диск/точку монтирования. Для выполнения миграции требуется пакет rsync в системе.

Установка pamirctl в PATH работает без привилегий суперпользователя — путь автоматически добавляется в окружение пользователя. Привилегии суперпользователя (sudo) требуются только для установки приложения от имени суперпользователя (не рекомендуется) и для миграции каталога хранения данных Docker.

Каталог приложения определяется следующим образом:

  • /opt/pamir — при установке от суперпользователя;
  • $HOME/.pamir — при установке от обычного пользователя (рекомендуется).

Поддерживаемые браузеры и их версии​

БраузерМинимальная версия
Google Chrome108
Mozilla Firefox101
Opera94
Яндекс Браузер23.1.1
Microsoft Edge108

Содержимое дистрибутива​

Образы контейнеров​

В ходе установки будут загружены следующие образы контейнеров:

  • PostgreSQL (СУБД SQL, основная база данных приложения);
  • RabbitMQ (брокер сообщений);
  • Redis (NoSQL СУБД, хранение ключей и обмен конфигурацией с экспортерами);
  • Flower (управление и мониторинг подсистемы задач);
  • OpenLDAP (сервер служб каталогов LDAP);
  • ACME Companion (клиент для взаимодействия с центром сертификации по протоколу ACME от Let's Encrypt);
  • Alertmanager (менеджер уведомлений);
  • Metrics (СУБД временных рядов для долговременного хранения метрик; развёртывается в трёх компонентах: хранилище данных, агент сбора метрик и обработчик правил);
  • OpenSearch (поисковый движок и хранилище журналов приложения);
  • OpenSearch Dashboards (веб-интерфейс для визуализации и работы с данными OpenSearch);
  • Logstash (агент сбора, обработки и передачи журналов в OpenSearch);
  • Vector (агент маршрутизации журналов и метрик);
  • ряд Exporters (экспортеры метрик для Metrics: blackbox, snmp, json, sql, nginxlog, postgres, cadvisor, docker-state, jmx);
  • Fluent-bit (обработчик журналов и сообщений);
  • Step CA (легковесный, переносимый центр сертификации, который может выступать подчинённым корневому ЦС для Памир, либо быть полностью автономным).

Порты сервисов​

В ходе установки будут опубликованы следующие порты:

  • 80 (доступ к приложению по протоколу HTTP);
  • 443 (доступ к приложению по протоколу HTTPS [при использовании самоподписанного сертификата, сертификата, выпускаемого Step CA, либо собственного сертификата сервера]);
  • 24224 (порт Fluent-bit, принимающий журналы).
подсказка

Порты могут быть переопределены, а также могут быть опубликованы дополнительные порты сервисов, необходимых для настройки обмена (например, для remote-write конфигурации Metrics), в файле конфигурации docker-compose.additional.yml.