О сервере


Описание сервера и его функциональности

Сервер (стример) – это компьютер, работающий на операционной системе Ubuntu (версии 20.04 LTS; 18.04 LTS; 22.04 LTS) или Debian (версия 10 и 11). На сервере функционирует специальная служба под названием "main-streamer", которая отвечает за получение видео с камер, последующую трансляцию этого видео по запросу и хранение видеозаписей. Стример способен передавать RTSP-потоки для ретрансляции видео с подключенных камер, снижая нагрузку на сами камеры.

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

Полное управление камерами на сервере осуществляется через Личный Кабинет партнера. Для этого необходимо предварительно добавить сервер в Личный Кабинет партнера. Личный кабинет партнера является центральным сервером управления для всех серверов.

На сервере хранятся следующие данные: видеозаписи, журналы камер, журналы сервера и список камер. Информация о пользователях и их правах доступа к камерам хранится на управляющем сервере.

Когда клиент обращается к личному кабинету или мобильному приложению для просмотра видео, управляющий сервер проверяет права доступа клиента к указанной камере, определяет, на каком сервере хранится запрашиваемая камера, и отправляет запрос на сервер для получения видео.

Все взаимодействия между клиентом, управляющим сервером и сервером хранения осуществляются через защищенное соединение SSL. Сервер хранения использует бесплатные SSL-сертификаты Let’s Encrypt сроком действия 90 дней. Процесс выдачи сертификатов полностью автоматизирован и выполняется через командную строку сервера. Для корректной работы необходимо однократно получить сертификат, после чего сервер хранения будет автоматически продлевать его действие.

Состояние сервера можно проверить с помощью проверочного скрипта, который можно запустить в командной строке стримера, либо можно просмотреть статистику работы сервера в личном кабинете партнера. Кроме того, имеется система автоматического информирования об отказах сервера через Telegram-канал и E-mail.

Регулярно выпускаются обновления для сервера, их можно установить через командную строку. Информация по выходу обновлений доступна в Личном Кабинете и Telegram-канале.

Характеристики сервера и место размещения

Технические характеристики сервера

Минимальные требования к серверу:

  • Центральный процессор (ЦП): Любой одноядерный процессор на архитектуре x86-x64 с тактовой частотой 1 ГГц и выше.
  • Оперативная память (ОЗУ): Минимум 4 ГБ или больше.
  • Жесткий диск: Емкость от 50 ГБ и выше.

Конфигурация сервера, необходимая для работы с определенным количеством камер, напрямую зависит от их числа. В таблице приведены примеры рекомендуемой "железной" конфигурации для подключения камер с разрешением 2 мегапикселя и средним битрейтом 2 Мбит/с.

Характеристики сервера для разного количества камер:

В качестве носителей под архив рекомендуется использовать жёсткие диски, подключённые локально напрямую в сервер с файловой системой EXT4.

Для хранения архива рекомендуется использовать специализированные жесткие диски линеек:

  • Seagate SkyHawk
  • Western Digital Blue
  • Western Digital Purple
Внимание!
  • Для хранения видеоархива крайне нежелательно использование сетевых хранилищ (NAS). Часто сетевые хранилища показывают гораздо меньшую скорость работы, нежели жесткие диски расположенные локально – непосредственно в сервере.

Размещение собственного сервера

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

Дата-центр: Этот вариант подходит для проектов с высоким бюджетом. Размещение сервера в профессиональном дата-центре обеспечивает высокий уровень надежности, безопасности и высокоскоростное соединение с интернетом.

Собственный дата-центр: Этот вариант подходит для провайдеров, у которых есть собственные инфраструктуры и ресурсы для размещения сервера. Он предоставляет большую гибкость и контроль над инфраструктурой, но требует значительных инвестиций.

Размещение на объекте: Рекомендуется для многоквартирных домов (МКД). Этот вариант позволяет использовать более ограниченный интернет-канал и экономить на затратах, особенно при объединении нескольких домов.

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

Домашнее размещение: Этот вариант прост и быстр в установке, но не является наиболее надежным. Он бюджетен, так как использует интернет и электричество по тарифу для физических лиц.

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

Аренда и размещение сервера в дата-центре

Арендованный сервер - можно арендовать физический сервер или виртуальный в специализированном дата-центре.

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

Рекомендованные дата-центры:

Для обеспечения стабильной работы сервера требуется соответствующее интернет-соединение. Ниже приведены требования к интернет-соединению для сервера:

  1. Статический IP-адрес: Для удаленного доступа к серверу необходим статический IP-адрес, который позволит постоянно идентифицировать сервер в сети.
  2. Скорость соединения: Определение необходимой скорости зависит от способа передачи видеопотока и расположения сервера относительно камер.
  • Сервер на объекте: Если сервер находится на объекте вместе с камерами и использует локальную сеть для передачи видеопотока, то достаточно стабильного канала upload-соединения для отдачи видео клиентам.
  • Удаленный сервер: Если сервер удаленно расположен от камер, видеопоток будет передаваться через интернет. В этом случае требуется широкий канал download-соединения для принятия потоков с камер и стабильный канал upload-соединения для передачи видео клиентам.

Для определения необходимой скорости на download можно просуммировать битрейты потоков со всех камер. Например, для 10 камер с разрешением 2 мегапикселя и средним битрейтом 2 Мбит/с, рекомендуется иметь интернет-канал пропускной способностью не менее 20 Мбит/с.

Скорость на upload зависит от ожидаемого количества интернет-соединений от клиентов. Если предполагается, что одновременно будет подключено, например, 20 пользователей, и битрейт одной камеры составляет 2 Мбит/с, то рекомендуется иметь скорость upload соединения не менее 40 Мбит/с.

Схема работы: