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

Система Триафлай представляет собой программно-технологическую платформу для построения информационно-аналитических систем (ИАС).

Система должна быть доступна для работы в режиме 24х7 (24 часа, 7 дней в неделю). Допускается остановка для проведения плановых профилактических работ.

Требования к аппаратному обеспечению

В зависимости от объема используемых данных, количества пользователей, интенсивности работы Система может быть развернута в обычном и высоконагруженном режимах работы. При развертывании не рекомендуется использовать системы виртуализации.

Высоконагруженный режим работы

Для работы в высоконагруженном режиме Система Триафлай может быть развернута в нижеописанной распределенной конфигурации с балансировкой нагрузки:

  • Сервер приложений - 3 шт. Процессор с тактовой частотой не менее 3.5GHz, 8 ядер, 64 Гб ОЗУ DDR4, не менее двух жестких дисков размером 500 Гб, объединенных в RAID1-массив.

  • Сервер СУБД - 1 шт. Процессор с тактовой частотой не менее 3.5GHz, 8 ядер, 64 Гб ОЗУ DDR4, не менее двух SSD NVMe дисков размером 1 Тб, объединенных в RAID1-массив.

  • Балансировщик нагрузки - 1 шт. Процессор с тактовой частотой не менее 3.5GHz, 2 ядра, 16 Гб ОЗУ, 200 Гб жёсткий диск.

Обычный режим работы

Для работы в обычном режиме Система Триафлай может быть развернута в следующей конфигурации:

  • Сервер приложений - 1 шт. Процессор с тактовой частотой не менее 3.5GHz, 8 ядер, 64Гб ОЗУ DDR4, не менее двух жестких дисков размером 500 Гб, объединенных в RAID1-массив.

  • Сервер СУБД - 1 шт. Процессор с тактовой частотой не менее 3.5GHz, 8 ядер, 64Гб ОЗУ DDR4, не менее двух SSD дисков размером 1 Тб, объединенных в RAID1-массив.

Минимальная конфигурация серверного оборудования:

Сервер приложений и сервер СУБД располагаются на одном стенде, для которого необходимы следующие характеристики:

  • 16 Гб ОЗУ DDR4.

  • 4-ядерный процессор.

  • 2x72 Гб жестких диска, объединенных в RAID1-массив.

АРМ Пользователя

Система Триафлай реализована как приложение с веб-интерфейсом. В качестве клиентов используются рабочие места пользователей. Работа с информацией осуществляется посредством программной оболочки с веб-интерфейсом с использованием веб-браузера. Технические средства (ТС), обеспечивающие функционирование АРМ Пользователя Триафлай, должны иметь характеристики не ниже указанных:

  • 2 ядра.

  • 2 Гб ОЗУ.

  • 10 Гб жёсткий диск.

  • Сетевой порт (LAN): не менее 1 Mbit/сек.

  • Веб-браузер:
    • Google Chrome (не ниже версии 84);

    • Mozilla Firefox (не ниже версии 87);

    • MS Edge (не ниже версии 84);

    • Спутник (не ниже версии 4.1.х);

    • Safari (не ниже версии 14);

    • Yandex Browser (не ниже версии 17).

Требования к программному обеспечению

Для функционирования Триафлай необходима установка на серверах приложения и СУБД следующего приведенного ниже системного ПО.

Рекомендуемые ОС:

  • CentOS версий 7.x;

  • Ubuntu версий 16.04 и 18.04;

  • AstraLinux версий 1.6.

В качестве веб-сервера может использоваться:

  • Apache версий 2.4.6 и выше;

  • Nginx версий 1.4.6 и выше.

Используемый для разработки Триафлай язык программирования Python 3.5.

Система управления базами данных PostgreSQL версий 9.6 и выше.

Методы оптимизации конфигурации Системы

  1. Система масштабируется по объему и производительности вычислений путём модернизации используемого комплекса технических средств (горизонтальное и вертикальное масштабирование) и перехода на более совершенные версии используемого системного (операционная система) и базового (СУБД) программного обеспечения.

  2. Система состоит из нескольких компонентов:

    • Веб-сервер, который занимается обработкой входящих запросов, отдает статические css-, js-, html-файлы, передает динамические запросы к серверу приложений (Apache).

    • Сервер приложений, который обрабатывает запросы пользователей, рассчитывает данные и строит отчеты, генерирует динамический контент на основе данных БД (uWSGI; многопроцессорный, многопоточный).

    • БД хранения данных в оперативной памяти: MemDB. Отвечает серверу приложений на запросы к данным, недостающие данные подгружает из БД постоянного хранения. Однопоточная.

    • БД постоянного хранения данных PostgreSQL. Многопоточная.

  3. В зависимости от условий использования Системы могут выделяться следующие типы нагрузки:

    • Количество пользователей: выражается в большом количестве запросов к серверу приложений в секунду или минуту.

    • Объем расчетов: выражается в высокой загрузке процессора сервером приложений.

    • Объем данных: выражается в высокой загрузке процессора сервером БД, большом объеме MemDB.

  4. Примерный порядок обработки запросов:

    • Веб-сервер раздает запросы нескольким (возможно, одному) серверам приложений по алгоритму «round-robin».

    • Сервер приложений обращается к одной (возможно, нескольким) БД оперативной памяти.

    • БД оперативной памяти обращается к одной БД постоянного хранения.

  5. Принципы расчета увеличения технических характеристик:

    • Один сервер приложений занимает одно ядро процессора. 2 рабочих процесса приложения («воркера») на ядро.

    • Минимум - 10 запросов в минуту, для которого необходимо 2 ядра и два экземпляра MemDB.

  6. На каждые дополнительные 10 запросов в минуту необходимо добавить 1 сервер приложений и 0.5 MemDB (с округлением вверх).

  7. На 30 млн записей в БД постоянного хранения необходимо 10Гб оперативной памяти в каждом экземпляре MemDB.

  8. На сложный расчет (обычно их 10% от запросов), запускаемый параллельно с основной работой, нужен сервер приложений и дополнительное ядро процессора.

  9. Для нормальной работы сервера приложений необходимо наличие 3Гб свободной оперативной памяти.

  10. Для нормальной работы сервера СУБД необходимо 25% свободной оперативной памяти Системы.

  11. Таким образом, в зависимости от типа нагрузки возможны разнообразные варианты настройки Системы.

  12. Оптимальную конфигурацию необходимо подобрать принимая во внимание варианты использования Системы.

  13. Ниже представлена таблица с общим сайзингом оборудования для Системы, состоящей из нескольких серверов, выдающей отчеты в «условно реальном» времени. Нагрузка от пользователей «сбора данных» в данном расчете не учитывается (СП - сервер приложения БД - сервер базы данных, объем RAM и количество ядер процессора)

    20 млн данных

    100 млн данных

    200 млн данных

    10 запросов в минуту

    СП:32 Гб, 4 ядра БД:32 Гб, 4 ядра

    СП:64 Гб, 4 ядра БД:64 Гб, 4 ядра

    СП:128 Гб, 4 ядра БД:64 Гб, 4 ядра

    30 запросов в минуту

    СП:32 Гб, 6 ядер БД:32 Гб, 6 ядер

    СП:128 Гб, 8 ядер БД:64 Гб, 8 ядер

    СП:256 Гб, 8 ядер БД:64 Гб, 8 ядер

    50 запросов в минуту

    СП:64 Гб, 8 ядер БД:64 Гб, 8 ядер

    СП:256 Гб, 16 ядер БД:128 Гб, 16 ядер

    СП:384 Гб, 16 ядер БД:128 Гб, 16 ядер

Конфигурации могут отличаться в зависимости от режима использования Системы. При активном использовании компонента «сбор данных», а также при большом количестве и высокой периодичности интеграций рекомендуется повышение поличества ядер и воркеров.

  1. Повышение надежности Системы обеспечивается следующими мерами:

    • Резервирование компонент серверного оборудования (дисковые массивы, блоки питания).

    • Резервирование базы данных.

  2. Обязанности администратора Системы.

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

  • Управление каталогом пользователей.

  • Обеспечение информационного взаимодействия с внешними системами.

  • Настройка разграничения прав доступа пользователей к объектам.

  • Ведение системных справочников.

  • Мониторинг ресурсов Системы, контроль и обеспечение работоспособности и доступности сервисов Системы.

  • Установка и перенос Системы в случае необходимости.

  • Обслуживание Системы согласно принятому регламенту обслуживания, резервное копирование данных и ПО.

  • Восстановление Системы после сбоев в случае необходимости.

  1. Режим работы службы эксплуатации - 24 часа, 7 дней в неделю.