Требования к серверам

Целевой сервер (кратко "сервер" или "хост") — сервер или несколько серверов, на которые будут устанавливаться компоненты системы 5А. Каждый сервер должен удовлетворять указанным системным требованиям и подготовлен администратором согласно общим требованиям.

Сервер развёртывания — сервер, с которого будет выполняться процесс развёртывания компонентов системы 5А. Требования к серверу развёртывания совпадают с общими требованиями к целевым серверам.

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

Допустима установка компонентов системы 5А как отдельно на каждый сервер, так и несколько компонентов на одном целевом сервере. Сервер с несколькими компонентами должен иметь максимум из тех характеристик, которые требуют соответствующие компоненты.

Минимальные системные требования серверов для компонентов системы 5А:

Компонент системы 5АКоличество vCPUОбъём RAMОбъём HDD
Бэкенд системы 5А28 Гбайт15 Гбайт
Фронтенд системы 5А12 Гбайт20 Гбайт
Оркестратор системы 5А21 Гбайт15 Гбайт
База данных системы 5А11 Гбайт30 Гбайт
Агенты системы 5А24 Гбайт20 Гбайт
Средства мониторинга системы 5А24 Гбайт30 Гбайт
ℹ️

Пример

На сервер устанавливается бэкенд и средства мониторинга. Согласно таблице, максимальными значениями будут:

  • Количество vCPU = 2, т.к. максимум из требований одинаков для бэкенда и средств мониторинга;
  • Объём RAM = 8 Гбайт, т.к. максимум из требований у бэкенда;
  • Объём HDD = 30 Гбайт, т.к. максимум из требований у средств мониторинга.

Общие требования

Серверы для компонентов системы 5А должны удовлетворять следующим требованиям:

  1. Компоненты системы 5А должны функционировать под управлением одной из следующих операционных систем в минимальной установке:

    • Astra Linux Common Edition, релиз «Орел» версии 2.12.45;
    • Astra Linux Special Edition 1.8;
    • Альт Сервер 11;
    • Debian 12;
    • Ubuntu Server 24.04 LTS;
    • CentOS Stream 9;
    • RedOS 8.
  2. На каждом сервере заведена одна и та же учётная запись пользователя, который имеет разрешение на выполнение команд с повышенными привилегиями с помощью команды sudo (т.е. добавлен в файл конфигурации /etc/sudoers).

  3. На всех серверах, используемых для развёртывания компонентов системы 5А, должен быть создан приватный SSH-ключ пользователя.

  4. Необходимо обеспечить сетевую L3-связность между всеми серверами, на которых установлены компоненты системы 5А. При использовании ОС Альт Сервер на сервере должен быть минимум 1 сетевой интерфейс 100 Мбит\с.

  5. Решите заранее, как на машинах модулей балансировки будут разведены управление и рабочий трафик — см. Разделение управления и рабочего трафика. Рекомендуемый вариант требует на каждой такой машине второго сетевого интерфейса с уже поднятым адресом: установщик адрес не назначает, а только проверяет.

  6. Для стабильной работы IPv6 необходимо обеспечить:

    • Минимальные системные требования:
      • Дисковое пространство от 15 Гбайт;
      • SWAP от 2 Гбайт или использовать мониторинг нагрузки.
    • Поддержку IPv6 на всех уровнях сети.
    • Контроль нагрузки, особенно при дефиците RAM/SWAP.
  7. Настройка сетевого экрана (Firewall)

    Для корректной работы системы 5А необходимо обеспечить сетевую доступность между компонентами. Ниже приведено описание портов, которые должны быть открыты на серверах, сгруппированное по ролям и направлениям трафика. Для каждого порта указан транспортный протокол — TCP, UDP или оба; соответствующие правила должны быть разрешены в межсетевом экране.

    Таблица 1. Порты, открываемые на серверах (входящие подключения)

    Роль сервераКомпонентПорт (протокол)НазначениеКто подключается
    Веб-интерфейсВеб-сервер8443 (TCP)HTTPS-доступ к веб-интерфейсу системыПользователи, администраторы
    Веб-сервер80 (TCP)HTTP-доступ, если не настроен HTTPS-сертификатПользователи, администраторы
    Сервер управления (Оркестратор / MGM)REST API9000 (TCP)Основной HTTP API для веб-интерфейсаБраузер пользователя/администратора, сервер веб-интерфейса, сервер мониторинга, оркестратор
    gRPC API9001 (TCP)Внутреннее взаимодействие микросервисов управленияСервер управления, агенты
    Оркестратор (gRPC)50052 (TCP)Управление агентами, обмен конфигурациейСервер управления (бэкенд), агенты
    Оркестратор (HTTP)50053 (TCP)HTTP API оркестратораСервер управления (бэкенд)
    Сервер БДPostgreSQL5432 (TCP)СУБДСервер управления
    Redis6379 (TCP)Хранилище данныхСервер управления, агенты
    Сервер мониторингаPrometheus9090 (TCP)Веб-интерфейс и API PrometheusАдминистраторы
    Grafana3000 (TCP)Веб-интерфейс GrafanaАдминистраторы
    Loki3100 (TCP)HTTP API для приема и записи логовСервер мониторинга (локально)
    Rsyslog1514 (TCP/UDP)Прием логов по протоколу syslogВсе компоненты системы
    Promtail9080 (TCP)HTTP API для управленияСервер мониторинга (локально)
    Сервер документацииВстроенный сервер3001 (TCP)Доступ к внутренней документацииАдминистраторы
    SLB-агентСлужебный / Здоровье50050 (TCP)Health checks, статус агентаСервер управления
    gRPC Конфигурация50051 (TCP)Получение конфигурации от оркестратораСервер управления
    Балансировщик80 (TCP)Приём клиентского трафика к балансируемым сервисам (порт по умолчанию)Клиенты (через VIP-адрес)
    Метрики NGINX50090 (TCP)Отдача метрик о трафике для сбораСервер мониторинга
    GSLB-агентСлужебный / Здоровье50050 (TCP)Health checks, статус агентаСервер управления
    gRPC Конфигурация50051 (TCP)Получение конфигурации от оркестратораСервер управления
    DNS-сервер53 (UDP/TCP)Приём DNS-запросов для выбора ресурса сайта (порт по умолчанию)Клиенты, рекурсивные DNS-резолверы
    Сетевой агентСлужебный / Здоровье50050 (TCP)Health checks, статус агентаСервер управления
    gRPC Конфигурация50051 (TCP)Получение конфигурации от оркестратораСервер управления
    ℹ️

    Роли GSLB-агента и сетевого агента запускаются в составе модуля балансировки — того же агента, что и SLB-агент. Они используют те же порты управления: 50050, 50051.

    Таблица 2. Матрица сетевых взаимодействий (инициатор - получатель)

    Данная таблица обобщает разрешённые направления трафика.
    Направление указано от инициатора соединения (Source) к получателю (Destination).
    Для каждого правила приведён протокол, что необходимо для точной настройки firewall.

    От кого (Source — инициатор)К кому (Destination)ПортПротоколНазначение трафика
    Браузер пользователя/администратораСервер веб-интерфейса8443, 80TCPДоступ к веб-интерфейсу системы
    Браузер пользователя/администратораСервер управления9000TCPЗапросы от фронтенда к REST API
    Клиенты (через VIP-адрес)SLB-агенты80, а также порты, заданные в настройках сервисовTCPКлиентский трафик к балансируемым сервисам
    Сервер управленияСервер БД5432TCPЗапросы к базе данных
    Сервер управленияСервер БД (Redis)6379TCPОбращение к Redis
    Сервер управленияАгенты50050, 50051TCPПроверка статуса, отправка конфигурации
    Сервер мониторингаАгенты50050, 50090TCPПроверка статуса, сбор метрик
    АгентыСервер управления50052, 9001TCPРегистрация и получение конфигурации (gRPC)
    Агенты (с ролью GSLB)Сервер БД (Redis)6379TCPОбращение к Redis для консистентности GSLB-серверов
    Все компоненты (Сервер управления, Агенты)Сервер мониторинга1514TCP/UDPОтправка логов (syslog)
    Компьютер администратораСервер мониторинга3000, 9090TCPДоступ к интерфейсам Grafana и Prometheus
    Компьютер администратораСервер документации3001TCPДоступ к внутренней документации
    Клиенты, рекурсивные DNS-резолверыGSLB-агенты53UDP/TCPDNS-запросы для выбора ресурса сайта
  8. На каждом сервере установлены и настроены:

    • systemd в качестве менеджера системы служб;
    • включён ntpd с настроенным NTP-сервером, с которым синхронизируется сервер;
    • SELinux переведён в режим Disabled;
    • Docker.
    ℹ️

    Инструкции по настройке необходимых сервисов и приложений представлены в разделе Подготовка серверов