搭建在线教育系统-BigBlueButton

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搭建在线教育系统-BigBlueButton相关的知识,希望对你有一定的参考价值。

服务器规格

BigBlueButton 是一个使用 ActionScript 开发的在线视频会议系统或者是远程教育系统,主要功能包括在线PPT演示、视频交流和语音交流,还可以进行文字交流、举手发言等功能,特别适合用在网上教学,支持中文等多种语音。
官方首页 http://bigbluebutton.org/
官方demo http://demo.bigbluebutton.org/
1.1 检查服务器规格
1.2 服务器的语言环境en_US.UTF-8

[email protected]:~# cat /etc/default/locale 
# File generated by update-locale
LANG="en_US.UTF-8"
如果看不到LANG="en_US.UTF-8",请输入以下命令将本地设置为en_US.UTF-8。
$ sudo apt-get install language-pack-en
$ sudo update-locale LANG=en_US.UTF-8

1.3 检查你的服务器有(至少)4G的内存使用

[email protected]:~# free -m
total used free shared buff/cache available
Mem: 7966 99 7682 8 184 7615
Swap: 8191 0 8191

1.4 检查服务器是否有Ubuntu是16.04

[email protected]:~# cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"

[email protected]:~# uname -m
x86_64

1.5 检查你的服务器是否支持IPV6。

[email protected]:~# ip addr | grep inet6
inet6 ::1/128 scope host 
inet6 fe80::20c:29ff:fe8e:f426/64 scope link...
如果inet6 ::1/128 scope host在安装BigBlueButton后没有看到该行,则需要修改FreeSWITCH的配置以禁用对IPV6的支持。
关于Linux发行版的选择。我们(核心开发人员)在Ubuntu上设计,开发,安装和测试了BigBlueButton 1.116.04 64位(Xenial Xerus)。这就是我们推荐你使用的。我们还没有在任何其他版本的Ubuntu(或Linux)上测试BigBlueButton 1.1

安装BigBlueButton

2.1 更新服务器
如果您是在VM上安装BigBlueButton进行测试和开发的开发人员,则BigBlueButton的某些组件(如Tomcat)在启动时需要一个熵源。在虚拟机中,可用的熵可能会降低,导致Tomcat在完成启动之前长时间(有时几分钟)阻塞。为了赋予虚拟机大量的熵,安装一个名为haveged(简单的熵守护进程)的封装:

apt-get install haveged

接下来,将您的服务器升级到最新的软件包(和安全修复程序)。

apt-get update
apt-get dist-upgrade

如果您有一段时间没有更新,apt-get可能会建议您在dist-upgrade完成后重新启动服务器。在继续下一步之前重新启动。
2.2 为BigBlueButton存储库安装apt-get密钥Anchor链接:2安装apt获取bigbluebutton存储库的密钥
BigBlueButton的所有包都使用项目公钥进行数字签名。在安装BigBlueButton之前,您需要将项目的公钥添加到您的服务器,以便apt-get验证已签名的包。为此,请输入以下命令:

wget http://ubuntu.bigbluebutton.org/repo/bigbluebutton.asc -O- | apt-key add -

接下来,所以你的服务器需要知道在哪里下载BigBlueButton包。要配置软件包存储库,请输入以下命令:

echo "deb http://ubuntu.bigbluebutton.org/xenial-110/ bigbluebutton-xenial main" | tee /etc/apt/sources.list.d/bigbluebutton.list

最后,运行apt-get下拉链接到最新的BigBlueButton包。

apt-get update

2.3 安装bigbluebutton
我们现在准备安装BigBlueButton。

apt-get install bigbluebutton

而已。一个命令。这个命令将安装BigBlueButton的所有核心组件以及所有必需的依赖关系。
注意:在安装过程中,您可能会看到错误“无法下载额外的数据文件”的ttf-mscorefonts-installer包。这是Ubuntu 16.04的一个已知问题。你可以忽略这个错误。
如果安装出错退出完成之前,要经过在检查安装前的准备,看看是否有与服务器配置错误。
如果您发现解决了任何配置错误,则可以尝试使用该命令完成安装

apt-get install -f

安装完成后,使用以下命令以正确的顺序重新启动所有BigBlueButton服务:

bbb-conf --restart

接下来,运行BigBlueButton配置实用程序bbb-conf --check。此实用程序检查BigBlueButton的配置和日志文件,并查找可能导致运行时出现问题的任何潜在错误。
您应该看到类似于以下的输出(当然使用不同于10.0.3.192的IP地址)。
技术分享

技术分享

技术分享

技术分享

[email protected]:~# bbb-conf 
BigBlueButton Configuration Utility - Version 1.1.0

bbb-conf [options]

Configuration:
--version Display BigBlueButton version (packages)
--setip <IP/hostname> Set IP/hostname for BigBlueButton
--setsecret <secret> Change the shared secret in bigbluebutton.properties

Monitoring:
--check Check configuration files and processes for problems
--debug Scan the log files for error messages
--watch Scan the log files for error messages every 2 seconds
--network View network connections on 80 and 1935 by IP address
--secret View the URL and shared secret for the server
--lti View the URL and secret for LTI (if installed)

Administration:
--restart Restart BigBlueButton
--stop Stop BigBlueButton
--start Start BigBlueButton
--clean Restart and clean all log files
--status Display running status of components
--zip Zip up log files for reporting an error

安装API演示

如果您想通过登录页面登录到BigBlueButton服务器,请使用该命令安装API演示

apt-get install bbb-demo

安装后,您可以在主页上输入您的姓名,然后点击“加入”。这将使您参加默认会议“演示会议”。
您也可以通过单击API examples主页上的链接查看其他示例。这些是在http://demo.bigbluebutton.org上安装的相同的API演示。
如果您正在使用自定义前端设置生产服务器,则可能需要临时安装API演示以进行测试。
稍后,要删除API演示,请输入以下命令:

apt-get purge bbb-demo

输入ip地址进行访问

技术分享

技术分享

配置BigBlueButton使用域名

请以root身份运行本节中的所有命令。
为了获得服务器的有效SSL证书,您必须已经为您的BigBlueButton服务器分配了一个主机名。
出于文档的目的,我们将使用域名“example.com”,以“bigbluebutton.example.com”托管的BigBlueButton服务器。
一旦你有一个域名,并配置了DNS主机,添加一个指向你的服务器的A记录。然后,您可以使用bbb-conf setip命令来配置BigBlueButton以使用该域名,例如:

[email protected]:~# bbb-conf --setip www.123.com
Assigning www.123.com for testing for firewall in /var/www/bigbluebutton/client/conf/config.xml
Assigning www.123.com for rtmp:// in /var/www/bigbluebutton/client/conf/config.xml
Assigning www.123.com for servername in /etc/nginx/sites-available/bigbluebutton
Assigning www.123.com for http[s]:// in /var/www/bigbluebutton/client/conf/config.xml
Assigning www.123.com for publishURI in /var/www/bigbluebutton/client/conf/config.xml
Assigning www.123.com for web application URL in /var/lib/tomcat7/webapps/bigbluebutton/WEB-INF/classes/bigbluebutton.properties
Assigning www.123.com for web application URL in /usr/share/bbb-apps-akka/conf/application.conf
Assigning www.123.com for api demos in /var/lib/tomcat7/webapps/demo/bbb_api_conf.jsp
Assigning www.123.com for record and playback in /usr/local/bigbluebutton/core/scripts/bigbluebutton.yml
Assigning www.123.com for playback of recordings: 
Assigning www.123.com for client self check to /var/www/bigbluebutton/check/conf/config.xml
Restarting the BigBlueButton 1.1.0 ...
Stopping BigBlueButton

Starting BigBlueButton

[email protected]:~# hostname -I
10.0.0.50

本地做好hosts

技术分享

BigBlueButton html5客户端

升级BigBlueButton 2.0-beta服务器在安装之前,先安装Anchor链接
在安装HTML5客户端之前,您需要一个BigBlueButton 2.0-beta服务器(以下简称为BigBlueButton 2.0)。HTML5客户端的所有开发现在都发生在2.0代码库上。

echo "deb http://ubuntu.bigbluebutton.org/xenial-200/ bigbluebutton-xenial main" | sudo tee /etc/apt/sources.list.d/bigbluebutton.list

安装BigBlueButton。

apt-get install bigbluebutton

安装完成后检查一下版本

[email protected]:~# bbb-conf 
BigBlueButton Configuration Utility - Version 2.0.0-beta

bbb-conf [options]

Configuration:
--version Display BigBlueButton version (packages)
--setip <IP/hostname> Set IP/hostname for BigBlueButton
--setsecret <secret> Change the shared secret in bigbluebutton.properties

Monitoring:
--check Check configuration files and processes for problems
--debug Scan the log files for error messages
--watch Scan the log files for error messages every 2 seconds
--network View network connections on 80 and 1935 by IP address
--secret View the URL and shared secret for the server
--lti View the URL and secret for LTI (if installed)

Administration:
--restart Restart BigBlueButton
--stop Stop BigBlueButton
--start Start BigBlueButton
--clean Restart and clean all log files
--status Display running status of components
--zip Zip up log files for reporting an error

为确保您拥有BigBlueButton 2.0的最新版本,请执行以下操作

apt-get update
apt-get dist-upgrade

安装MongDB

BigBlueButton HTML5客户端使用mongodb(一个非常有效的数据库)来保持用户与当前会议状态同步。要安装MongoDB,请执行以下操作

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
"deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
apt-get update
apt-get install -y mongodb-org curl
service mongod start

安装NodeJS
HTML5客户端使用nodeJS服务器与BigBlueButton服务器进行通信。要安装nodeJS,请执行以下操作

curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
sudo apt-get install -y nodejs

你只需要安装一次mongodb和nodeJS。
安装html5客户端
要安装HTML5客户端,请输入

apt-get install -y bbb-html5

 重新启动BigBlueButton服务器

bbb-conf --restart

在我们向HTML5客户端(正在开发中)发布更新时,您可以使用这些命令升级到最新版本

apt-get update
apt-get dist-upgrade

加载html5客户端
浏览器输入:
https://<your_server>/demo/demoHTML5.jsp

 

  技术分享

技术分享

如果你想手动重新启动(或停止),你可以用命令来完成

systemctl restart bbb-html5.service

组件的日志位于/var/log/bigbluebutton/html5/html5client.log
客户端的代码位于/usr/share/meteor/bundle/
客户端的配置文件位于/usr/share/meteor/bundle/programs/server/assets/app/config
如果修改它们,则需要重新启动bbb-html5.service才能使新配置生效。
删除HTML5客户端

apt-get purge bbb-html5

  

以上是关于搭建在线教育系统-BigBlueButton的主要内容,如果未能解决你的问题,请参考以下文章

BigBlueButton简介

Bigbluebutton安装过程

如何搭建BigBlueButton开发环境

Bigbluebutton服务执行过程及相关配置文件

BigBlueButton-设置自己的开发环境

Bigbluebutton中文乱码问题