Комментарии 28
и по серверу для bbb подскажите — сколько одновременно онлайн конференций было на каком железе?
Да, именно BigBlueButtonBN использовался для интеграции BBB в Moodle.
В конце марта во время тестирования просили учителей включить всем веб-камеры. На трафике 250 мбит/с нагрузка на 2xXeon X5650 была не более 20%. К сожалению, в BBB нет инструментов сервера, которые позволили бы видеть количество подключившихся. В апреле в среднем на сервере работало 200-250 учеников одновременно, нагрузка на процессор не превышала 15%.
С аудио и видео BBB работает в режиме прокси, каждый поток аудио и видео просто рассылается всем клиентам. Это накладывает ограничение на количество одновременно включенных камер. Никакого Simulcast в нем нет, если каждый из 20 участников транслирует 500 кбит/с поток с камеры и в настройках комнаты всем разрешено видеть всех (например, родительское собрание), то в каждого клиента летит 19 видеопотоков по 500 кбит/с, которые клиентское устройство должно декодировать и показать пользователю.
В плане трансляции видео от каждого ученика интересней Zoom и Jitsi, которые поддерживают Simulcast. Каждый клиент транслирует на сервер видео минимум в 2 потока: например, основной в 500 кбит/с и дополнительный в 128 кбит/с, а на стороне клиента уже выбирается с какого именно потока воспроизводить видео в зависимости от места в раскладке на экране. Это значительно снижает требования к мощности клиентских устройств.
В BBB мы в основном пользовались режимом в котором все видят модератора (учителя), модератор видит всех, а друг друга ученики не видят, чтобы не нагружать устройства учеников.
В BBB мы в основном пользовались режимом в котором все видят модератора (учителя), модератор видит всех, а друг друга ученики не видят, чтобы не нагружать устройства учеников.
А где в BBB этот режим включается? Не могу найти.
Качество картинки (и ширину потока) можно выбирать при подключении камеры.
Как правило, для мероприятий вроде онлайн-обучения вряд ли нужна картинка HD-качества со стороны школьника/студента, обычно это «говорящая голова». Нужна грамотно сделанная презентация и хороший звук. Который больше зависит не от кодека и полосы, а от микрофона докладчика и постороннего шума вокруг него.
Про звук и презентацию в онлайн-обучении согласен. Учителя сами к этому пришли, картинка нужна только младшим классам и специфическим предметам типа иностранных языков. Видео учеников отчасти позволяет контролировать заинтересованность, но намного эффективнее давать простой тест в Moodle сразу по окончании урока, чем весь урок вглядываться в лица учеников.
Если не секрет, какой ширины канал использовался и хватало ли его?
Сильно зависит от того, что это за конференции
1) используется перезентация или трансляция рабочего стола (презентация это картинка статичная, трансляция стола — это видеопоток каждому участнику)
2) сколько человек одновременно в аудиоконференции с активным микрофоном — только ведущий или «все со всеми»
3) сколько камер подключено — ни одной, только у ведущего, несколько камер, у всех
4) кто видит активные камеры — только модератор видит все камеры, все видят все камеры
5) какое качество выставлено у камер — низкое, среднее, высокое
6) идет ли запись мероприятия
и все эти параметры мультплицируют нагрузку с какими-то коэфициентами. Чем больше функционала используете тем сильнее нагрузка возрастает, в геометрической прогрессии.
Лучше менять права примерно так:
find /var/www/html -type d -exec chmod 755 {} \;
find /var/www/html -type f -exec chmod 644 {} \;
А если надо временно дать доступ на запись в директорию движку, лучше делать это без ключа -R.
Столкнулись с проблемой, что примерно при 600+ пользователей онлайн на сервере звук начинает отставать. Причем 600+ может быть как и 10 мероприятий по 60 человек, и 60 мероприятий по 10 человек. Очевидной причины не найдено. Загрузка по CPU незначительная, сервер — 2xAMD EPYC 7402, в сумме 96 потоков, 256Гб ОЗУ
Временное решение было такое: на железном сервере сделано 3 виртуалки по 32 ядра на ноду, на каждой — инстанс BBB. Мероприятия условно равномерно распределяются по трем серверам. На момент создания мероприятия неизвестно, сколько в нем будет участников, поэтому балансируется «условно». Но, как правило, более 200 участников в одном мероприятии не бывает, более частый кейс — 10-30 человек.
Такой подход, на удивление, помог победить проблему со звуком на том же железе, и сейчас сервер без проблем «держит» до 1200-1300 онлайн пользователей в пике.
Greenlight практически не используем, «комнаты» создаются по API из нашего приложения управления расписанием. Там же выставляются параметры, а конкретно — режимы вроде «слушатель не может включать камеру» для лекций, «модератор видит всех, все видят только модератора» для практических занятий, разрешена ли запись мероприятия и т.п.
Там же сделана привязка имени пользователя к его логину, чтобы пользователи не назывались «Маша» и «Саша», а было ФИО и номер группы.
Написан небольшой шаблончик мониторинга bbb для zabbix, а так же «на коленке» система просмотра активных мероприятий и их истории (скачивает каждые 10 минут и по запросу xml-статистику по api с каждой ноды и потом отображает в человекочитаемом виде)
Из проблем с BBB — иногда все же «сходит с ума» Kurento media server, потребляя 10-20 ядер виртуалки на 100%. Временное решение — перезапуск сервисов BBB ежедневно в 4 утра вроде помог, после этого проблем больше не наблюдалось (прошло 2 недели)
Разбираться с проблемой более детально нет возможности, так как нужно срочно восстанавливать работоспособность сервиса, а не трейсы процессов делать. А в логах ничего необычного.
Greenlight мы сами не используем, это только для других школ. Сами создаем конференции BBB только в Moodle как раз из-за сквозной авторизации (учитель видит учеников по имени и фамилии).
Не поделитесь, как в zabbix получаете информацию о количестве активных пользователей?
Жаль только, что у Jitsi (пока) нет такой админки, как у BBB.
Jitsi удобнее хотя бы тем, что исп-ся всего 3-4 порта в отличие от BBB с Kurento и 100500 udp-портами.
Может в будущем авторы BBB и перейдут на jitsi (мечты).
Кириллица работать не будет?
\u041f\u0440\u0438\u0432\u0435\u0442, EvgenySerd!
У меня вопрос по настройкам видео, нужно чтобы ученик видел себя и учителей, но не видел остальных учеников. А учителя как модераторы видели всех. В одной конференции учителей может быть несколько.
PS. Если поставить lockSettingsDisableCam=true и lockSettingsLockOnJoin=true то у ученика просто блокируется камера, что не совсем то что нужно.
PS2 Кстати сталкивался с тем что не везде доступен ubuntu.bigbluebutton.org существует зеркало packages-eu.bigbluebutton.org
Разворачиваем школьный учебный портал на Moodle и BigBlueButton