Kurento媒体服务器(Kurento Media Server ,KMS)必须安装在Ubuntu 14.04 LTS (64 bits)系统
上。安装过程中如果遇到一些意料之外的问题,通常重启可以有效解决。
在终端中键入下列命令:
echo "deb http://ubuntu.kurento.org trusty kms6" | sudo tee /etc/apt/sources.list.d/kurento.list
wget -O - http://ubuntu.kurento.org/kurento.gpg.key | sudo apt-key add -
sudo apt-get update
sudo apt-get install kurento-media-server-6.0
Kurento媒体服务器已经安装好了,键入下列命令来启动和停止Kurento媒体服务器:
sudo service kurento-media-server-6.0 start
sudo service kurento-media-server-6.0 stop
可以通过 sudo service kurento-media-server-6.0 status
来查看服务状态,以此判断服务是否成功启动,或者通过查看8888端口是否开启来判断如果服务启动失败则需要查看日志,寻找原因。日志存放在下列位置
/var/log/kurento-media-server/media-server.log
如果系统中已经安装了Kurento媒体服务器 5.0或更早的版本,务必更新到6.0
版,6.0版本比5.0版本更新了大量的API,并且不向下兼容。你可以用以下命令卸载旧版本的Kurento媒体服务器:sudo apt-get remove kurento-media-server sudo apt-get purge kurento-media-server sudo apt-get autoremove sudo rm /etc/apt/sources.list.d/kurento* sudo vi /etc/apt/sources.list
配置 STUN和 TURN 服务器。
如果Kurento媒体服务器部署在NAT后面的话,就需要STUN和 TURN来提供穿透服务。大部分情况下使用STUN就够了,TURN仅在对称NAT的情况下使用。
配置 STUN 服务器,先打开配置文件/etc/kurento/modules/kurento/WebRtcEndpoint.conf.ini
,找到下列语句先将这两句取消注释,把尖括号里的内容替换成具体的IP地址和端口号,如:
stunServerAddress= 77.72.169.166
stunServerPort=3478
参数serverIp应该是STUN服务器的IP地址而不是域名,可以找到如下一些免费的公共STUN服务器:
173.194.66.127:19302
173.194.71.127:19302
74.125.200.127:19302
74.125.204.127:19302
173.194.72.127:19302
74.125.23.127:3478
77.72.174.163:3478
77.72.174.165:3478
77.72.174.167:3478
77.72.174.161:3478
208.97.25.20:3478
62.71.2.168:3478
212.227.67.194:3478
212.227.67.195:3478
107.23.150.92:3478
77.72.169.155:3478
77.72.169.156:3478
77.72.169.164:3478
77.72.169.166:3478
77.72.174.162:3478
77.72.174.164:3478
77.72.174.166:3478
77.72.174.160:3478
54.172.47.69:3478
配置TURN 服务器,先打开配置文件/etc/kurento/modules/kurento/WebRtcEndpoint.conf.ini
,找到下列语句turnURL=user:password@address:port;
,取消注释,填上可用的TURN 服务器地址、端口、用户名和密码。
turnURL = <用户>:<密码> @ <serverIp>:<serverPort>
turnURL = user:password@66.228.45.110:3478
至此,你已经成功搭建了KMS 6 服务器,它是后面运行众多示例的基础
----------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------
Kurento Media Server 配置
KMS的通用配置文件位于/etc/kurento/kurento.conf.json中。 完成安装后,此文件如下:
{
"mediaServer" : {
"resources": {
// //Resources usage limit for raising an exception when an object creation is attempted
// "exceptionLimit": "0.8",
// // Resources usage limit for restarting the server when no objects are alive
// "killLimit": "0.7",
// Garbage collector period in seconds
"garbageCollectorPeriod": 240
},
"net" : {
"websocket": {
"port": 8888,
//"secure": {
// "port": 8433,
// "certificate": "defaultCertificate.pem",
// "password": ""
//},
// "registrar": {
// "address": "ws://localhost:8090",
// "localAddress": "localhost"
// },
"path": "kurento",
"threads": 10
}
}
}
}
从Kurento Media Server版本6开始,除了此通用配置文件外,KMS的特定功能还调整为单个模块。 每个模块都有自己的配置文件:
-
/etc/kurento/modules/kurento/MediaElement.conf.ini: Media Elements 通用参数。
-
/etc/kurento/modules/kurento/SdpEndpoint.conf.ini: SdpEndpoints的音频/视频参数( 例如: WebRtcEndpoint and RtpEndpoint)。
-
/etc/kurento/modules/kurento/WebRtcEndpoint.conf.ini: WebRtcEndpoint 特定参数。
-
/etc/kurento/modules/kurento/HttpEndpoint.conf.ini: HttpEndpoint 特定参数。
Kurento Media Server 安装验证
Kurento Media Server 进程
验证 KMS 启动并运行的命令:
ps -ef | grep kurento-media-server
kurento-media-server 进程应该包含以下输出:
nobody 1270 1 0 08:52 ? 00:01:00 /usr/bin/kurento-media-server
WebSocket 端口
除非另有配置,否则KMS将打开端口8888,以通过Kurento协议接收请求和发送响应。 要验证此端口是否正在侦听,请执行以下命令:
sudo netstat -putan | grep kurento
输出应该类似于下面输出:
tcp6 0 0 :::8888 :::* LISTEN 1270/kurento-media-server
Kurento Media Server 日志
Kurento Media Server日志文件存储在 /var/log/kurento-media-server/文件夹中。 此文件夹的内容如下:
- media-server_<timestamp>.<log_number>.<kms_pid>.log: Kurento Media Server的当前日志
- media-server_error.log: 第三方错误
- logs: 包含KMS已旋转日志的文件夹
当KMS正确启动, 此跟踪将写入日志文件中:
[time] [0x10b2f880] [info] KurentoMediaServer main.cpp:239 main() Mediaserver started