Для резервирования систем автоматизированного вещания на базе ФорвардТА мы можем предложить несколько схем:
1.Обход. Позволяет переключиться на "проходящий" сигнал в случае возникновения проблем на вещательном сервере.
2. Зеркало. Позволяет в случае возникновения проблем на вещательном сервере переключиться на резервный видеосервер.
3. Зеркало с обходом. Позволяет в случае возникновения проблем на вещательном сервере переключиться на резервный видеосервер или на "проходящий" сигнал.
Комментарии к рисункам.
Сервер – сервер автоматизации вещания ФорвардТА/ТП/ТП2. Коммутатор – Коммутатор видео/аудио сигналов 2-> 1. Например:
Компания Профитт: http://www.profitt.ru/RUSSIAN/kommut.html
Компания ЛЭС ТВ http://www.les.ru/devices/devices2.php УМ – Forward WatchDog Box: устройство мониторинга состояния видеосервера (отслеживается работоспособность операционной системы, платы FD300, вещательного сервера). Устройство регулярно получает сообщения от сервера по интерфейсу USB. В случае отсутствия сообщения в течение определенного времени, устройство переключает коммутатор на резерв через GPI.
Зеркалирование осуществляется за счет встроенного в OnAir (основная вещательная программа ФорвардТА) механизма передачи сообщений другим экземплярам программы. Другими словами, все действия (загрузка расписания, запуск титров, запуск видеоматериалов......), которые оператор производит на одной машине автоматичсеки выполняются и на машине-зеркале.
Forward WatchDog Box - устройство для мониторинга мониторинга состояния видеосервера (отслеживается работоспособность операционной системы, платы FD300, вещательного сервера).
В настоящее время разработка и тестирование этого устройства полностью завершены. В новом прайс-листе (появится в ближайшее время) Forward WatchDog Box будет добавлен отдельной позицией.
Руководство одной региональных телекомпаний поставило мне задачу спроектировать видeосервер с высокой степенью готовности.
Сразу на вскидку мне в голову пришло поставить 2 сервера (Win2k3 EE) с 2 комлектами Forward TA и объеденить их в кластер с одним кворумным устройством
(внешний накопитель с iSCSI). В соответствии с этим возникли резонные вопросы:
1. Есть ли опыт постороения подобных схем, и на что стоит обратить внимание.
2. Можете ли Вы сказать что-либо о времени переключения с ведущего на ведомый сервер с помощью приведённых выше схем.
to nEwUR
можете написать какой сервер iSCSI вы используете? и какие сетевые карты на клиентских машинах, а также какой софт для подключения iSCSI (родной от виды или другой)? я слышал что с iSCSI не все так просто.
Не могли бы Вы объяснить что под этим подразумевается?
кворумное устройство = разделяемое запоминающее устройство, то есть 2 компьютера работают с одним общим носителем. (это из области NAS, SAN)
Насколько это всё рабочее я не знаю, строю свой проект исключительно на своих знаниях, и поэтому если у специалистов SoftLab есть готовое решение и менее сложное в реализации, с радостью выслушаю, да и форумчанам будет полезно послушать. Заранее спасибо.
Системы ФорвардТ пользуются стандартной файловой системой Windows, поэтому все будет нормально работать и с локальными и сетевыми дисками. В том числе можно пользоваться как SAN, так и NAS. NAS дешевле и мы испытывали недорогой нас от Maxtronix. Он себя отлично показал при работе с хранилищами PostPlay, когда чтение и запись данных ведется очень большими блоками. А вот при работе с грабилкой, которая пишет маленькими блоками (по одному кадру), накладные расходы были очень большими!!! Воспроизведение видео в OnAir-е проходило достаточно успешно (чтение делается достаточно большими блоками).
А если говорить чисто теоретически, то для гарантированной работы без сбоев требуется обеспечить QoS (Quality of Service) от Вашей кворумной системы. Т.е. если Вам удастся выделить гарантированный поток на чтение/запись между кворумным устройством и каждым из компьютеров с ФорвардТА/ТП, то система будет работать без проблем.
А теперь совсем другой совет - а зачем вообще использовать кворумное устройство? Распределенный диск является также "узким" местом в системе. Можно использовать дешевые обычные локальные диски (IDE или SATA), просто поставив на каждый из компьютеров свой набор дисков. Без зеркалирования без RAID-контроллера и т.п. Просто обычные диски как и для одного компьютера. Т.е. я предлагаю сделать два компьютера, в каждом из которых стоит по плате FD300 и по паре (или больше) локальных дисков. Один компьютер является основным, второй - резервным. Данные на оба компьютера копируются оператором программой CopyDR, которая гарантирует QoS для основных программ (грабилка, плеер, система PostPlay). Такое зеркалирование по цене оказывается не дороже (а порой и дешевле) построения кластера с выделенным файловым сервером (кворумным устройством). Зато в обслуживании такое решение горазол дешевле - в любой момент времени Вы можете остановить и полностью пересобрать один компьютер, заменить в нем диски, плату и что угодно, вообще заменить этот компьютер на полностью новый. После этого в правилах работы системы, оператора и внешних пользователей ничего не изменится. Время починки умершего диска никак не ограничено и после его включение восстановление будет делаться прямым копированием данных с работающего сервера программой CopyDR, что также контролируется оператором с абсолютной точностью. Аппаратные RAID-ы восстанавливаются по своим законам, управлять которыми очень трудно. И часто в процессе восстановления они особенно чувствительны к высокой нагрузке. Здесь же один сервер работает с обычной (высокой) загрузкой, а второй сервер "чинится". Требуется только, чтобы во время починки не сломался и второй сервер. Однако вероятность такой ситуации в 100-1000 раз меньше: если сервер ломается раз в год и его починка занимаем один день, то вероятность поломки составляет 1/365=0,003. Соответственно, вероятность того, что второй компьютер сломается именно в этот день равна произведению вероятней поломки двух серверов в один день (1/365)*(1/365) = 0,0000075 = 7,5 миллионных. Т.е. в примерно в тысячу раз меньше.
Вот собственно такого ответа я и хотел услышать. Большое спасибо.
Вся загвоздка была именно в том, чтобы обеспечить ведомый сервер теми же данными, что и ведущий. Поэтому так и заморочился, а если есть программа которая всё это автоматизирует, прекрасно вдвойне.
В составе нашего ПО есть программа CopyDR. Она предназначена для копирования файлов (директорий) с заданным пользователем потоком. Это позволяет настроить процесс копирования так, чтобы он не забирал все ресурсы системы. Этой програмой мы и советуем пользоваться при копировании файлов.
Возник вопрос по работе утилиты copyDR.
У нас 2 сервера, зеркалированы как на 2 схеме в начале топика. На обоих имеются разделы под видео одинакового размера (с четверть терабайта). Раздел ведущего сервера доступен ведомому, как сетевой диск. CopyDR мониторит на авторепите его состояние (со вложенными поддиректориями) и копирует новые или измененные файлы на локальный раздел ведомого сервера. Проблема возникает, когда диски оказываются заполнены более чем на ~100ГБ. CopyDR отказывается копировать новые файлы, ссылаясь на недостаток места, хотя его совершенно достаточно: http://s42.radikal.ru/i095/0908/5b/664bad2aaa5e.png
Чем это может быть вызвано?
Еще вопросик по copydr, можно ли запоминать список папок копируемых, а то при ребуте компа, хоть и редко, приходится забивать все заново.
И про Onair вопрос. В данный момент первый сервер ведет второй. Команды все исполняются безупречно. Но хочется, чтобы выбор титровальных объектов также поддерживался. Допустим оперативная загрузка титров через "свойства" титровальной кнопки.
Еще вопросик по copydr, можно ли запоминать список папок копируемых, а то при ребуте компа, хоть и редко, приходится забивать все заново.
Вообще-то программа CopyDR сохраняет список файлов/папок при закрытии. Можем добавить сохранение этих настроек и после выхода из диалога выбора. Устроит?
И про Onair вопрос. В данный момент первый сервер ведет второй. Команды все исполняются безупречно. Но хочется, чтобы выбор титровальных объектов также поддерживался. Допустим оперативная загрузка титров через "свойства" титровальной кнопки.
А почему нельзя менять файл традиционным способом? Т.е. выбрать его на файловой страничке и сделать даблклик?
Вообще-то программа CopyDR сохраняет список файлов/папок при закрытии. Можем добавить сохранение этих настроек и после выхода из диалога выбора. Устроит?
Не сохраняет релиз свежий вроде бы.
А почему нельзя менять файл традиционным способом? Т.е. выбрать его на файловой страничке и сделать даблклик?
Надо попробовать, редко пользовался, забыл уже.
ps. техподдержка по поводу обмена BOB не отвечает, что не так?