Skip to content

Переход с Flussonic Media Server

Catena умеет забрать конфигурацию работающего Flussonic Media Server и завести по ней свои стримы: мастер импорта читает конфигурацию по API источника, показывает, что именно переедет и что потеряется, и записывает документы только после вашего подтверждения.

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

Что нужно до начала

  • Flussonic Media Server работает и доступен central по сети. Импорт читает конфигурацию через API источника, а не разбирает файл с диска. Выключенный сервер импортировать нечем.
  • Учётная запись с правом читать конфигурацию — та же, которой вы заходите в интерфейс источника (edit_auth или api_auth).
  • Инсталляция Catena уже поднята: central с консолью и хотя бы один стример. Если её ещё нет — начните с быстрого старта, а сюда вернитесь потом.

Учётные данные источника central нигде не сохраняет: они живут только на время построения плана и не попадают ни в базу, ни в логи.

Что переносит импорт, а что вы настроите сами

Импорт переносит контент:

  • стримы,
  • секции шаблонов (транскодер, архив, превью, таймауты),
  • бэкенды авторизации — в единую политику допуска кластера.

Импорт не переносит устройство машины, потому что оно описывает конкретный сервер, а не ваш эфир:

  • листенеры и порты,
  • диски и раскладку архива,
  • VOD-локации,
  • реверс-прокси и TLS-сертификаты.

Всё это вы задаёте при заведении стримера — см. добавление стримера и настройки ноды. Импорт перечислит найденные у источника непереносимые секции в отчёте, чтобы ничего не потерялось из виду.

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

Кластер переносится по одной машине

Импорт знает один адрес за прогон. Если у вас кластер Flussonic, запустите мастер по разу на каждый сервер: конфигурация в кластере разложена по машинам, и на каждой своя.

Стримы, которые сервер видит от соседей, документами не станут — они не его конфигурация, а состояние. Так же не переедут стримы, заведённые публикацией: их создаёт эфир, а не оператор.

Топология кластера Flussonic — peers, балансировщики, cluster_ingest — в Catena не переносится вообще. Здесь размещением занимается лейаутер: вы говорите, какие стримы нужны, а он решает, на какой машине их поднять.

Как пройти мастер

Откройте в консоли Импорт из Flussonic и укажите адрес источника и учётные данные.

Адрес источника и учётные данные

Мастер построит план — что именно будет сделано, до единой записи:

  • сколько документов будет создано, а сколько пропущено или перезаписано (и каких именно — поимённо);
  • укладывается ли импорт в вашу лицензию;
  • какая политика допуска действует сейчас и какая её заменит;
  • какие секции источника не переносятся;
  • предупреждения, о которых ниже.

План импорта с предупреждениями

План живёт пятнадцать минут и применяется один раз. Применяется ровно то, что вы видели на экране: если за это время конфигурацию источника поправят, изменения в этот импорт не попадут — постройте план заново.

При конфликте имён есть две политики. Пропустить (по умолчанию) не трогает то, что уже есть в кластере, — поэтому повторный импорт безвреден и им удобно дозаливать. Перезаписать приводит документы к источнику; в плане такие имена перечислены, и учтите, что перезапись сотрёт и ваши собственные правки в Catena.

Стримы с собственной авторизацией

В Flussonic допуск можно задать отдельно каждому стриму. В Catena политика допуска одна на весь кластер — своей авторизации у стрима нет.

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

Поэтому мастер такие стримы не пропускает молча: он покажет их число и спросит, что делать — импортировать под кластерной политикой или не импортировать вовсе и завести их отдельно. Пока вы не ответите, применение недоступно.

Решение по стримам с собственным допуском

Импортированные стримы включаются сразу

Стрим переезжает включённым, если он не был выключен в источнике. Пока старый сервер ещё в эфире, это имеет цену, и мастер о ней предупредит:

  • у источников появляется второй потребитель. RTSP-камера с ограничением на число соединений отдаст поток одному из серверов; SRT- и RTMP-pull может выбить старое соединение.
  • раздача поедет в те же приёмники. Если у стримов настроены пуши, на транспондере или в CDN получится дубль, и увидит его зритель.

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

Почему часть стримов может не подняться

Размещением в Catena занимается лейаутер, и стрим может уехать на любую подходящую машину. Если вход стрима локален для старого сервера — мультикаст, файл на диске, карта захвата, — на другой машине его просто нет, и стрим не заведётся.

Такие стримы импорт перечисляет в отчёте. После применения мастер показывает, сколько импортированных стримов поднялось и какие нет: это и есть проверка, что переезд удался. Счётчик не мгновенный — консоль опрашивает кластер, пока стримы поднимаются, поэтому сразу после применения он какое-то время меньше итогового.

Результат: поднялось три стрима из пяти

На снимке не поднялись ровно те два, что и должны были: sport-hd слушает мультикаст, доступный только старому серверу, а lobby-cam смотрит на камеру не из этой сети.

Как читать отчёт

Отчёт свёрнут по причинам: одна строка — одна причина, со счётчиком затронутых стримов; имена самих стримов раскрываются по стрелке слева. Категорий четыре:

Категория Что значит Что делать
Перенесено приближённо Значение переехало, но не дословно: настройка сузилась к ближайшей поддерживаемой или поведение сместилось Проверить эфир на этих стримах
Не поддерживается В Catena такой настройки нет Искать замену; для части возможностей она есть в других разделах документации
Неизвестное поле Поле есть у источника, но эта сборка Catena про него не знает Прислать отчёт в поддержку: скорее всего, ваш Flussonic новее
Не создано Документ или его секция не записаны Разобраться отдельно: этот стрим или секция не переехали

Отчёт с раскрытой причиной

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

Перечня всех непереносимых полей на этой странице нет намеренно: он живёт в самом отчёте и меняется вместе с продуктом, а список в документации разошёлся бы с действительностью.

Архив остаётся на месте

Записанный архив никуда переносить не нужно и не следует: Catena читает архив, записанный Flussonic, прямо с диска — см. архив. Импорт файлов архива не трогает вовсе.

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

Ссылки плеера и ваши интеграции

Ссылки воспроизведения не меняются. Имена стримов переезжают как есть — поэтому импорт и не предлагает переименование при конфликте: переименованный стрим означал бы сломанную ссылку у каждого зрителя и сломанный путь архива.

API v3 доступен только на чтение. Если ваши скрипты создавали или правили стримы через API Flussonic, их придётся перевести на API v4 — в Catena конфигурацией управляет central, и запись идёт через него. Чтение статистики и списков через v3 продолжает работать.

Порядок переключения и откат

  1. Заведите стример в Catena и настройте на нём машинную часть: листенеры, диски архива, VOD-локации.
  2. Прогоните импорт и прочитайте отчёт. Разберитесь с записями «не создано» и «перенесено приближённо».
  3. Дождитесь, пока стримы поднимутся, и проверьте эфир по нескольким ссылкам — особенно там, где был транскодер.
  4. Проверьте архив: откройте запись за прошедшие сутки.
  5. Переключите зрителей на новый адрес.
  6. Только после этого останавливайте старый сервер.

Откат до шага 5 ничего не стоит: старый сервер продолжает работать всё это время, и вернуться значит просто не переключать трафик. После шага 5 откат — это возврат прежнего адреса в раздаче; конфигурацию источника импорт не менял и не удалял, она осталась на месте.