Конфигурирование Flussonic Media Server
Содержание:
- Управление конфигурацией
- Файл конфигурации flussonic.conf
- Перезапуск сервера Flussonic
- Глобальные опции сервера
- Настройки VOD
- HTTP API для управления конфигурацией
- Запуск Flussonic без файла конфигурации
Перезапуск сервера Flussonic
Для рестарта сервера выполните команду:
service flussonic restart
Глобальные опции сервера
В глобальных опциях указываются порты для протоколов и общие настройки. Актуальный список глобальных настроек и опций сервера вы можете найти в разделе config Flussonic Media Server API Reference.
Протоколы и порты
Опции сервера (Протоколы и порты) | Описание |
---|---|
https 443; |
Включает приём запросов по протоколу HTTPS на указанном порту. Можно указывать несколько раз. |
http 80; |
Включает приём запросов по протоколу HTTP на указанном порту. Можно указывать несколько раз. |
http 127.0.0.1:80; |
Включает приём запросов по протоколу HTTP на указанном порту и заданном IP-адресе. Можно указывать несколько раз. |
rtmp 80; |
Включает приём запросов по протоколу RTMP на указанном порту. |
rtmps 1443; |
Включает приём запросов по протоколу RTMPS на указанном порту. |
rtsp 554; |
Включает приём запросов по протоколу RTSP на указанном порту. |
rtsps 1554; |
Включает приём запросов по протоколу RTSPS на указанном порту. |
Замечания
При конфигурации протоколов HTTPS, RTMPS, и RTSPS Flussonic Media Server ожидает наличие сертификатов в каталоге /etc/flussonic
.
Для того, чтобы протокол RTMPS заработал, необходимо наличие валидного сертификата, который работает без каких-либо предупреждений или ошибок.
Flussonic Media Server ожидает приватный ключ сервера в файле /etc/flussonic/streamer.key
с паролем flussonic
.
Сертификат сервера будет читаться из файла /etc/flussonic/streamer.crt
.
Промежуточный и CA сертификаты будут браться из /etc/flussonic/streamer-ca.crt
.
Например, при получении купленного комплекта из ключа и сертификатов, надо сделать следующие действия:
cat intermediate.crt ca.crt > /etc/flussonic/streamer-ca.crt
cp server.crt /etc/flussonic/streamer.crt
openssl rsa -des3 -in server.key -out /etc/flussonic/streamer.key
Другие опции сервера
Опция сервера | Описание |
---|---|
loglevel debug; |
Меняет объём записываемых в журнал сообщений. Варианты: debug, notice, error. |
logrequests true; |
Включает запись всех HTTP запросов в /var/log/flussonic/access.log . |
total_bandwidth 10G; |
Указывает максимальную ёмкость канала. Необходим для балансировки серверов в кластере. |
auth_token TOKEN; |
Имя параметра в query string , который будет интерпретироваться как авторизационный токен. |
max_sessions 1000; |
Глобальный лимит по количеству сессий. |
cluster_key SECRETKEY; |
Строка, использующаяся для авторизации других серверов Flussonic Media Server входящих в кластер. |
view_auth USER PASSWORD; |
Включается авторизация для readonly доступа к API. |
edit_auth USER PASSWORD; |
Логин-пароль для административного доступа к серверу. |
api_allowed_from 10/8 192.168/16; |
Можно указать с каких адресов или сетей можно разрешать доступ к API. |
event_sink HANDLER_NAME {url http://backend/event.php;} , event_sink HANDLER_NAME {url /etc/flussonic/events.lua;} |
События Flussonic будут приходить на указанный URL или в указанный скрипт. Подробнее в Events API. |
pulsedb /var/lib/flussonic; |
Указывается, куда будет сохраняться статистика потоков. |
session_log /var/lib/flussonic; |
Указывается, куда будет сохраняться история сессий.c |
url_prefix PREFIX , url_prefix http://my.domain.address.com:80; |
При использовании протокола HLS или DASH, для всех потоков на сервере, адреса отдельных сегментов в сегментном плейлисте будут начинаться с указанного префикса. К вариантному плейлисту опция больше не применяется. Опция применяется для сегментных плейлистов, таких как tracks-v1a1/mono.m3u8 (но не для вариантных таких как index.m3u8 ). Эта опция может быть использована не только в глобальной части файла конфигурации, но и как часть настроек конкретного потока. Прописанная в настройках потока, опция применяется только к одному этому потоку. |
source SOURCE/PREFIX; , source SOURCE/PREFIX { } , source origin1.tv { } |
Директива, включающая автоматическое зеркалирование потоков с другого сервера на локальный. |
stream ntv { input tshttp://source/ntv.ts; } |
Директива stream включает перманентный поток, который будет поддерживаться рабочим всё время жизни сервера, даже если ни один из источников недоступен. |
ondemand ntv { input tshttp://source/ntv.ts; } |
Директива ondemand описывает поток, который будет запускаться по-запросу. Если он какое-то время недоступен, то он будет автоматически выключаться. |
live published { } |
Директива live включает возможность публикации на сервер потоков с именами, начинающимися с published . |
vod vod { storage /storage; } |
Директива vod включает вещание файлов, лежащих в каталоге /storage под именами, начинающимися с vod/ . См. опции директивы file. |
cache globalcache /var/www misses=4 2d 40G; |
Конфигурируется глобальный кэш по имени globalcache в каталоге /var/www с лимитом на 40 гигабайт и 2 дня. Файлы начнут кэшироваться только после 4 запросов от клиентов. |
nvidia_monitor true; |
Директива nvidia_monitor включает (true ) или выключает (false ) сохранение статистики о производительности Nvidia. Подробнее. |
geoip PATH_TO_DATABASE; |
Директива geoip задаёт путь до файла базы данных GeoLite2, которую Flussonic будет использовать для геолокации вместо встроенной базы. Подробнее. |
Запуск Flussonic без файла конфигурации
Файл конфигурации — не единственный источник данных для настройки Flussonic. Некоторые настройки могут быть определены в следующих местах:
- includes — файлы частичной конфигурации в
/etc/flussonic/flussonic.conf.d/*.conf
(они не имеют ничего общего со старой опцией конфигурацииincludes
). Эти файлы, как правило, создаются системой, запускающей Flussonic (например, Kubernetes). - переменные окружения (environment variables). Для запуска Flussonic без файла конфигурации достаточно определить переменные
HTTP_PORT
иEDIT_AUTH
. Например:HTTP_PORT=80
,EDIT_AUTH=login pass
.
Настройки Flussonic применяются в следующем порядке:
- Includes на диске
- Файл конфигурации на диске
- Переменные окружения
Таким образом, переменные окружения перекрывают все остальные настройки. Если результирующая конфигурация Flussonic окажется невалидной, Flussonic не запустится и отобразится экран техобслуживания.