Системные требования для отдельного сервера

В этой статье приведены требования и рекомендации для развёртывания PILOT на выделенной инфраструктуре вашей организации.
Информация предназначена для системных администраторов, инженеров и интеграторов, которые готовят инфраструктуру и поддерживают работу системы.
 

Подбор конфигурации сервера

Конфигурация зависит от ожидаемой нагрузки:
— числа подключённых устройств и частоты передачи сообщений
— количества одновременных пользователей
— используемых отчётов и интеграций
— сроков хранения данных
— подключённых модулей
Базовые параметры служат отправной точкой для промышленной эксплуатации. Они не гарантируют производительность при любой нагрузке.
 

Базовая конфигурация

Рекомендуемая стартовая конфигурация рассчитана на систему до 30 000 подключённых устройств без видеомодуля:
  Компонент
  Рекомендация
  Процессор
  От 8 физических ядер или выделенных vCPU серверного класса
  Оперативная память
  От 64 ГБ
  Системный раздел
  От 100 ГБ SSD
  База данных
  От 2 ТБ NVMe или SSD корпоративного класса (enterprise SSD); для физического сервера — RAID 10
  Резервные копии
  Отдельное хранилище; объём рассчитывается с учётом политики хранения
  Сеть
  Стабильное соединение с гарантированной пропускной способностью и низкими потерями пакетов
Если устройства передают данные каждые 1–5 секунд, нагрузка на процессор, базу данных и диски существенно возрастает. Для такого режима необходимо заранее провести нагрузочное тестирование и предусмотреть запас ресурсов.
RAID повышает устойчивость дисков к отказам, но не заменяет резервное копирование.
 

Хранение данных

Исходные события от устройств хранятся в базе данных. Срок их хранения определяется настройками системы и доступным дисковым пространством. Обычно он не должен превышать трёх месяцев.
При расчёте объёма хранилища учитывайте:
  • число устройств и среднюю частоту сообщений
  • срок хранения исходных событий
  • объём истории, треков и отчётных данных
  • вложения, фотографии и медиафайлы
  • объём и срок хранения резервных копий
Объём хранилища для резервных копий рассчитывайте по размеру полной копии базы данных, количеству сохраняемых копий и используемому сжатию. Предусмотрите запас не менее 20%. Фиксированный объём в 1 ТБ подходит не для каждой установки.
 

Разделение компонентов

При высокой нагрузке рекомендуется размещать компоненты системы на отдельных серверах.
  Роль сервера
  Когда требуется
  Минимальная рекомендуемая конфигурация
  Сервер приложений
  Базовая установка
  8 vCPU, 64 ГБ RAM
  Сервер СУБД
  Обычно рекомендуется от 5000 устройств или при интенсивной передаче телематических данных
  8 vCPU, 64 ГБ RAM, от 2 ТБ NVMe/SSD
  PTM и «Логистика»
  При большом числе задач, маршрутов или расчётов
  Необходимость отдельного сервера и его конфигурация определяются после оценки нагрузки
  Видеосервер
  При использовании видеомодуля
  От 16 vCPU, 128 ГБ RAM, отдельное хранилище
Сервер базы данных должен находиться в одной защищённой локальной сети с сервером приложений. PostgreSQL, Redis и Memcached не должны быть доступны из Интернета.

Хранение видео

Объём видеоархива зависит от числа камер, среднего битрейта, продолжительности записи и срока хранения.
Для предварительной оценки используйте формулу:
Объём, ТБ = число камер × средний битрейт, Мбит/с × часов записи в сутки × дней хранения × 0,00045 × 1,3
Операционную систему видеосервера выбирают с учётом требований оборудования и его драйверов.
Для новых установок используйте поддерживаемую редакцию Windows Server не ниже Windows Server 2019. Расширенная поддержка Windows Server 2019 действует до января 2029 года. Сроки поддержки опубликованы на странице Microsoft Lifecycle.
 

Операционная система и программные компоненты

Поддерживаемая платформа — Oracle Linux 8 x86_64 или образ операционной системы, согласованный с технической поддержкой.
В состав установки входят:
  • Nginx
  • PHP-FPM и необходимые PHP-расширения
  • PostgreSQL
  • Redis
  • Memcached
  • SocketProxy и обработчики сообщений устройств
  • фоновые задания и средства мониторинга
Точные версии компонентов определяются установочным пакетом конкретного релиза PILOT. Не обновляйте их вручную без проверки совместимости и согласования времени работ.

Виртуальная среда

Развёртывание в виртуальной среде поддерживается при соблюдении требований к ресурсам:
  • процессорные ресурсы и память должны быть зарезервированы
  • дисковая подсистема должна обеспечивать необходимое количество операций ввода-вывода в секунду — IOPS
  • существенная переподписка ресурсов виртуальной машины не допускается: выделенные ресурсы должны быть обеспечены физической инфраструктурой

Тестовый стенд

Для тестового стенда до 100 устройств достаточно следующей конфигурации:
  Компонент
  Параметры
  Процессор
  4 vCPU
  Оперативная память
  8 ГБ RAM
  Хранилище
  200 ГБ SSD
Такой стенд не предназначен для промышленной эксплуатации или нагрузочного тестирования.
 

Сетевые требования

Открывайте входящие подключения только по необходимости.
  Назначение
  Протокол и порт
  Источник подключения
  Веб-интерфейс и API
  HTTPS, TCP 443
  Рабочие места пользователей и разрешённые интеграции
  Перенаправление на HTTPS
  HTTP, TCP 80
  При необходимости
  Приём сообщений устройств
  TCP/UDP-порты используемых протоколов
  Устройства и доверенные сети
  Администрирование
  SSH, TCP 22
  Только VPN, bastion-host или согласованные IP-адреса
  Мониторинг
  По настройкам системы мониторинга
  Только разрешённые адреса
Порты PostgreSQL, Redis и Memcached должны быть доступны только внутри серверного сегмента.
Для исходящих соединений серверу могут потребоваться:
  • DNS и синхронизация времени NTP
  • HTTPS-доступ к репозиториям операционной системы и внешним сервисам
  • SSH-доступ к gitlab.pilot-gps.com через TCP-порт 22122 для установки и обновлений
  • доступ к сервисам геокодирования, маршрутизации, карт и интеграций, которые подключены в системе
Настраивайте правила доступа к внешним сервисам по доменным именам и согласованным портам, а не по статическим IP-адресам: адреса сервисов могут меняться.
Если локальный сервер тайлов карт не развёрнут, доступ к картографическим ресурсам также необходим рабочим местам пользователей.
На время установки предоставьте серверу контролируемый доступ к необходимым репозиториям и сервисам. Неограниченный доступ в Интернет не требуется.
 

Резервное копирование и восстановление

До ввода системы в эксплуатацию определите политику резервного копирования. Она должна включать:
  • резервное копирование базы данных
  • резервное копирование конфигурации, сертификатов и настроек интеграций
  • отдельное резервное копирование медиафайлов и видеоархива, если они используются
  • хранение копий вне основного сервера
  • шифрование копий и ограничение доступа к ним
  • регулярную проверку восстановления
Периодичность создания копий и срок их хранения определяются с учётом требований владельца системы:
  • RPO — допустимый период потери данных при сбое
  • RTO — допустимое время восстановления работы системы
Успешное создание резервной копии не подтверждает её пригодность для восстановления. Периодически выполняйте тестовое восстановление и проверяйте результат.
 

Подготовка к эксплуатации

Перед запуском системы необходимо:
1. Настроить TLS-сертификат для рабочего доменного имени
2. Ограничить доступ межсетевым экраном: разрешить только необходимые подключения
3. Закрыть прямой доступ к служебным компонентам из Интернета
4. Настроить персональные SSH-учётные записи с аутентификацией по ключам
5. Обеспечить синхронизацию времени
6. Настроить мониторинг доступности сервисов, свободного места, нагрузки, очередей обработки и результатов резервного копирования
7. Согласовать время проведения обновлений и определить ответственных сотрудников
 

Доступ для технической поддержки

Для удалённой технической поддержки необходим защищённый SSH-доступ через VPN или промежуточный сервер доступа — bastion-host.
Предоставляйте доступ только уполномоченным специалистам, на ограниченный срок и с журналированием действий.
 

Что подготовить перед установкой

Для согласования установки подготовьте:
  • Доменное имя, статический IP-адрес и TLS-сертификат
  • Параметры ожидаемой нагрузки и список используемых модулей
  • Перечень протоколов и портов устройств
  • Сетевые правила и адреса для администрирования
  • Сведения о выделенном месте для базы данных, резервных копий и медиафайлов
  • Требования к RPO, RTO и срокам хранения данных
  • Контакты сотрудников, ответственных за инфраструктуру и доступы
  • Параметры мониторинга и канал получения оповещений
     

Проверка после установки

После установки проводится приёмка системы. Она включает проверку:
— приёма данных от устройств
— построения отчётов
— работы интеграций
— работы мониторинга
— тестового восстановления из резервной копии