Skip to content

Начало работы с Flussonic Central

Эта статья поможет вам начать работу с Flussonic Central.

Вы узнаете:

Flussonic Central доступен как через пользовательский интерфейс, так и через API.

Предварительные требования

Прежде чем перейти к установке Flussonic Central:

  1. Обновите Flussonic Media Server на стримерах (пирах) до последней версии. Убедитесь в том, что в конфигурации стримеров указаны cluster-key и http порт.
  2. Создайте и настройте базу банных по инструкции ниже. Рекомендованная версия PostgreSQL 14.4.

Установка и запуск Flussonic Central

Чтобы установить Flussonic Central на выбранный сервер:

  1. Выполните следующие команды в терминале:

    echo "deb http://apt.flussonic.com/repo binary/" > /etc/apt/sources.list.d/flussonic.list

    wget http://apt.flussonic.com/binary/gpg.key -O /etc/apt/trusted.gpg.d/flussonic.gpg

    apt-get update && apt-get install flussonic-central

  2. После успешной установки Flussonic Central откройте файл конфигурации /etc/central/central.conf и задайте обязательные параметры:

    • DATABASE_URL — строка подключения к вашей базе PostgreSQL. Важно поменять логин и пароль на те, которые вы задали при установке PostgreSQL.

      Если ваша база требует поддержки SSL, то укажите параметр sslmode в строке URI с одним из возможных значений: disable, prefer или require. Например, postgres://central:pass@localhost:5432/central_dev?sslmode=prefer&search_path=central. Значения параметра соотносятся со значениями sslmode в libpq.

    • API_KEY — API-ключ, необходимый для взаимодействия Flussonic Central с другими серверами Flussonic. Выбирается произвольно.

    • API_URL — адрес в формате http://CENTRAL-HOSTNAME:PORT, который будет использоваться для формирования ссылки config_external, по которой стримеры будут обращаться к Flussonic Central для получения конфигурации.

    • EDIT_AUTH — логин и пароль администратора сервера Flussonic Central, которые потребуются для входа в веб-интерфейс. Если вы не планируете использовать веб-интерфейс, то этот параметр можно не задавать.

  3. Вы также можете указать в файле конфигурации номер HTTP-порта (HTTP_PORT) отличный от используемого по умолчанию 9019, например если он уже занят. Обратите внимание, что этот же порт нужно будет указать в API_URL.

  4. Сохраните изменения и выйдите из редактора.

    Warning

    В будущем после того, как вы внесете изменения в файл конфигурации, перезапустите Flussonic Central с помощью команды service central restart, чтобы применить изменения.

  5. Запустите сервис Flussonic Central, выполнив в консоли следующую команду:

    service central start

  6. Откройте веб-интерфейс администратора Flussonic Central по следующей ссылке:

    http://CENTRAL-HOSTNAME:PORT_NUMBER/admin

    , где:

    • CENTRAL-HOSTNAME — это IP-адрес или URL сервера, на котором установлен Flusssonic Central,
    • PORT_NUMBER — это номер HTTP-порта, указанный в HTTP_PORT. По умолчанию 9019.
  7. В открывшемся окне введите логин и пароль сервера Flussonic Central и нажмите Sign, чтобы войти на сервер:

Стартовая страница

Вы увидите веб-интерфейс Flussonic Central:

Веб-интерфейс Flussonic Central

Запуск Flussonic Central в Docker-контейнере

Для запуска Flussonic Central в Docker выполните команду:

docker run flussonic/central:latest

Для настройки Flussonic Central в контейнере используйте переменные среды, одноименные параметрам в файле конфигурации.

Подключение стримера

Чтобы подключить стример в Flussonic Central:

  1. Откройте боковое меню слева, перейдите в раздел Streamers и нажмите + для добавления нового стримера.

  2. Введите уникальное имя стримера, который вы хотите подключить, в поле New peer hostname. Если используете спецсимволы, они должны быть закодированы в формат URL.

  3. Нажмите Save. Будут открыты настройки созданного стримера.

  4. В поле API URL введите адрес стримера Flussonic Media Server в формате http://FLUSSONIC_HOSTNAME:HTTP_PORT. По этому адресу Flussonic Central будет отправлять API-запросы к стримеру.

    Если вы используете здесь адрес, доступный только из локальной сети, то укажите публично доступный адрес в поле Public payload URL, чтобы потоки были доступны через Интернет.

    Если API URL не указан, Flussonic Central попытается использовать Hostname для доступа к стримеру.

  5. Укажите ключ кластера (cluster_key) в поле Cluster key. Тот же ключ кластера должен быть указан в конфигурации стримера Flussonic Media Server, который вы подключаете.

  6. Нажмите Save, чтобы применить настройки. Если все параметры заданы правильно, Flussonic Central подключится к стримеру и пропишет в его конфигурации опциюconfig_external, чтобы Flussonic Media Server получал конфигурацию с Flussonic Central. Если опция config_external не появляется в конфигурационном файле стримера, проверьте заданные настройки или обратитесь в службу поддержки.

  7. Вернитесь в раздел Streamers, где должны отображаться данные о состоянии стримера. Убедитесь в том, что стример подключен.

Overview tab

Создание потока

Создать поток в Flussonic Central можно как через пользовательский интерфейс, так и с помощью Flussonic Central API.

Note

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

Warning

Конфигурация потока, определённая в Flussonic Central, не будет записана в конфигурационном файле Flussonic Media Server, на котором запущен поток. Активный поток будет отображаться только в веб-интерфейсе сервера и будет доступен по API-запросу.

Создание потока через веб-интерфейс

Чтобы создать поток через веб-интерфейс:

  1. Перейдите в раздел Media в боковом меню слева.

  2. Нажмите на кнопку + и укажите название вашего потока в поле Stream name и источник в поле Source URL. Затем нажмите Create, чтобы применить изменения.

    Создание потока

  3. Перейдите на вкладку Streams и убедитесь, что ваш поток запущен.

    Запущенный поток

Для проигрывания используйте ссылки на вкладке Output в профиле потока.

Создание потока с помощью API

Чтобы добавить поток с помощью API, используйте запрос PUT /streams/{name}.

Ниже представлен пример PUT-запроса для создания потока:

curl --request PUT --url http://CENTRAL-IP:CENTRAL_PORT/streamer/api/v3/streams/STREAM_NAME \
--header 'Authorization: Basic YWRtaW46YWRtaW4=' \
--header 'Content-Type: application/json' \
--data '{"name": "STREAM_NAME", "inputs": [{"url": "fake://fake"}]}'

Note

Этот запрос можно использовать как для создания потока, так и для изменения его настроек, поэтому имя потока указывается дважды — в пути и в теле запроса. Если в пути и в теле указать разные значения name, то приоритет имеет тот, что в теле.

Результат выполнения запроса будет следующим:

{"config_on_disk":{"inputs":[{"url":"fake://fake"}],"name":"STREAM_NAME"},"inputs":[{"url":"fake://fake"}],"name":"STREAM_NAME","named_by":"config"}

Создание базы данных PostgreSQL

Чтобы создать базу данных PostgreSQL:

  1. Установите PostgreSQL по инструкции на сайте.

  2. После успешной установки PostgreSQL создайте пользователя, выполнив следующую команду в терминале:

    sudo -u postgres -i createuser -P central

    Затем система попросит дважды ввести пароль, который будет у суперпользователя:

    Caution

    Логин и пароль не должны содержать символов @, ;, #, [, \, /, =, $

    Enter password for new role: (придумайте и введите пароль суперпользователя базы данных) Enter it again: (повторите пароль суперпользователя)

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

    sudo -u postgres -i createdb -O central -e -E UTF8 -T template0 central_dev

    Ответ системы в случае успешного создания базы данных будет следующим:

    CREATE DATABASE central_dev OWNER central ENCODING 'UTF8' TEMPLATE template0;