Kurento media server服務搭建
該服務的搭建有兩種方式:一種是本篇文章講述的方式;另外一種用docker的方式搭建,具體可參考:docker搭建方式
一、下載ubuntu18.04服務器
1、安裝gunpg
apt-get update
apt-get install --no-install-recommends --yes gnupg
2、確定ubuntu版本
cat /etc/issue
輸出結果如下:
Ubuntu 18.04.2 LTS \n \l
3、設置變量
根據上一步的結果 ,配置下面的參數,如我的ubuntu版本是18.04,需要執行DISTRO="bionic"
。
#Run ONLY ONE of these lines:
DISTRO="xenial" # KMS for Ubuntu 16.04 (Xenial)
DISTRO="bionic" # KMS for Ubuntu 18.04 (Bionic)
4、添加key
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5AFA7A83
5、設置kurento.list
tee "/etc/apt/sources.list.d/kurento.list" >/dev/null <<EOF
#Kurento Media Server - Release packages
deb [arch=amd64] http://ubuntu.openvidu.io/6.10.0 $DISTRO kms6
EOF
注:這一步的作用,實際就是在"/etc/apt/sources.list.d/kurento.list" 這個文件中,追加一行deb [arch=amd64] http://ubuntu.openvidu.io/6.10.0 $DISTRO kms6
。
執行時,terminal終端中,按順序把上面4行,都複製進去就行。
6、安裝kurento media server
apt-get update
apt-get install --yes kurento-media-server
7、啓動/停止/狀態/重啓
service kurento-media-server start
service kurento-media-server stop
service kurento-media-server status
service kurento-media-server restart
我這裏在使用service kurento-media-server status
查看服務器的狀態時,看到狀態是fail
* Checking Kurento Media Server...
/etc/init.d/kurento-media-server: 152: [: Illegal number:
/etc/init.d/kurento-media-server: 156: [: Illegal number:
/etc/init.d/kurento-media-server: 159: [: Illegal number:
* Unable to determine /usr/bin/kurento-media-server status... [fail]
但是經過測試,服務已經正常工作。
二、kurento tutorial java服務搭建
git clone https://github.com/Kurento/kurento-tutorial-java.git
cd kurento-tutorial-java/kurento-one2one-call
git checkout 6.9.0
mvn -U clean spring-boot:run -Dkms.url=ws://11.0.6.156:8888/kurento
注意:當你的系統是一個很乾淨的系統時,你在按照上面執行最後一步的時候會失敗,你需要安裝mvn、jdk、tomcat這些環境,這些都配置成功後,你就可以在打開chrome瀏覽器,在上面輸入https://localhost:8443進行訪問。
三、kurento相關配置
1、Kurento Media Server 日誌
Kurento Media Server日誌文件存儲在 /var/log/kurento-media-server/
文件夾中。 此文件夾的內容如下:
- media-server_.<log_number>.<kms_pid>.log: Kurento Media Server的當前日誌
- media-server_error.log: 第三方錯誤
- logs: 包含KMS已旋轉日誌的文件夾
2、Kurento Media Server 配置
/etc/default/kurento-media-server
默認配置/etc/kurento/kurento.conf.json
通用配置/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 特定參數。
四、問題記錄:
1、啓動服務報錯
問題描述:
2019-01-09 10:41:46,347925 31224 [0x00007f619a08c880] info KurentoWebSocketTransport WebSocketTransport.cpp:209 WebSocketTransport() Secure websocket server not enabled
解決方案:
不影響,可忽略。
2、git拉取失敗
問題描述:
root@41ac2ba27dcc:/# git clone https://github.com/Kurento/kurento-tutorial-java.git
Cloning into ‘kurento-tutorial-java’…
fatal: unable to access ‘https://github.com/Kurento/kurento-tutorial-java.git/’: Problem with the SSL CA cert (path? access rights?)
解決方案:
apt remove ca-certificates
apt install ca-certificates
mvn命令找不到
問題描述:
root@41ac2ba27dcc:/kurento-tutorial-java# mvn -U clean spring-boot:run
bash: mvn: command not found
解決方案:安裝mvn
wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.2/binaries/apache-maven-3.6.2-bin.tar.gz
mv apache-maven-3.6.2-bin.tar.gz /usr/local/
tar -zxvf apache-maven-3.6.2-bin.tar.gz
vim /etc/profile
export M2_HOME=/usr/local/apache-maven-3.6.2
export PATH=${M2_HOME}/bin:$PATH
source /etc/profile
搭建mvn環境,參考https://blog.csdn.net/weixx3/article/details/80331538