天天看點

kurento 6.14.0文檔翻譯 第四章 安裝指南

KMS可以通過很多方法安裝

    1.使用EC2在亞馬遜AWS雲服務安裝,使用AWS可以不用擔心配置服務,因為安裝的時候自動配置。

    2.使用Kurento 的Docker鏡像安裝,docker可以保證Kurento在任何機器上運作,比如Fedora或者CentoOS系統,當然也可以運作在Windows上,但是Kurento團隊沒有在Window上适配過,是以你需要承擔一定的風險。

    3.通過apt-get install 指令本地安裝,這個方法你可以控制安裝選項。

除了安裝Kurento外還要安裝STUN/TURN服務,特别KMS或者用戶端在NAT路由或者防火牆之後。(PS:在公網上安裝或者有防火牆的時候需要安裝STUN/TURN服務)

如果你需要即時編譯KMS服務,你可以跳轉到安裝每日建構章節。(ps:第五章)

4.1AWS雲服務安裝

    Kurento項目已經在AWS雲上提供了模闆檔案,你可以通過建立一個EC2安裝可以幫你完成所有的配置工作,包括TURN服務

    這個模闆預設在部署在亞馬遜私有虛拟雲網絡,你需要亞馬遜私有虛拟雲網絡

    部署步驟如下:

    1.通路亞馬遜AWS雲控制台

    2.點選建立堆棧(Create Stack)

    3.檢視選擇模闆,選擇Specify選項S3模闆URL,可以粘貼如下URL  

   https://s3-eu-west-1.amazonaws.com/aws.kurento.org/KMS-Coturn-cfn-6.14.0.yaml

    4.再通過配置向導配置    

    4.1堆名:堆的描述。

    4.2安裝類型:選擇一個安裝所需适當的大小,選其中一個。

    4.3Key名:你需要建立一個RSA的key,你可以檢視AWS文檔如何去建立

    4.4SSH登入:基于安全的原因你需要設定隻能允許指定的規格SSH連接配接。

    4.5TRUN使用者:5TRUN使用者名

    4.6TRUN密碼:使用TRUN的密碼

    ---------------------------------------------------

    提示:模闆檔案包括STUN服務和TURN,預設使用者名密碼是kurento/kuento,你可以改變使用者名,但是必須修改預設密碼

    ---------------------------------------------------

    5.當狀态顯示為CREATE_COMPLETE就完成建立過程

·    6.運作伺服器,你可以通過公網ip打開應用服務的URL

4.2Docker鏡像安裝

    Kurento服務的鏡像在Docker Hub上有各種釋出版本,隻需要跳轉到kms的docker hub 頁面,你就可以看到安裝步驟

    -----------------------------------------------------

    提示:在docker容器内你不需要開放大的端口範圍,相反你更應該使用 --network host 

    要詳細的說明一下,正如Yorgos Saslis提到的:問題是鑒于Docker目前的狀态,你不應該嘗試開放大量的端口,你應該在任何地方都用主機網絡,大量的端口會有很大的性能開銷(你可以通過通路https://www.percona.com/blog/2016/02/05/measuring-docker-cpu-network-overhead/檢視詳細說明)

·    你也可以檢視docker的11185問題

    -----------------------------------------------------

4.3本地安裝

    使用這個方法安裝Kurento服務,需要本地的Ubuntu包倉庫使得kurento項目是可用的,KMS是提供兩種Ubuntu版本:16.04(xenial)和Ubuntu18.04(BIonic)64位

    打開指令行運作以下指令

    1.確定GnuPG已經安裝

    sudo apt-get update

    sudo apt-get install --no-install-recommends --yes gnupg

    2.添加kurento倉庫到系統配置裡

    #導入kurento  倉庫的key    

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5AFA7A83

    #擷取ubuntu版本定義

    source /etc/upstream-release/lsb-release 2>/dev/null || source /etc/lsb-release

    #添加kerento倉庫配置到apt

    sudo tee "/etc/apt/source.list.d/kurento.list" >/dev/null <<EOF

    #安裝kurento服務包

    deb [arch=amd64] http://ubuntu.openvidu.io/6.14.0  $DISTRIB_CODENAME kms6 

    EOF

    3.安裝KMS

    注意:這些步驟隻适合于第一次安裝,如果你已經安裝并希望更新,可以使用以下步驟

    sudo apt-get update && sudo apt-get install --no-install-recommends --yes kurento-media-server

    你可以使用以下指令啟動和停止服務

    sudo service  kurento-media-server start

    sudo service  kurento-media-server stop

    日志資訊可以在/var/log/kurento-media-server/檢視,想看更多KMS日志,可以打開調試日志(ps:可以跳到檢視調試日志那章)

4.4本地更新

    想要更新本地安裝的kurento服務,你必須在/etc/apt/source.list.d/kurento.list檔案添加一個新版本,編輯這個檔案之後,你可選擇兩種更新方法

    A.更新所有系統包。

    這是維護Debian和Unbuntu标準方法,更新所有系統包能保證所有都是最新版本,所有的Bug都解決,是以這是一個推存的方法,指令如下

    sudo apt-get update && sudo apt-get dist-upgrade

    不要在docker容器内運作上面的指令,相反你應該更新最新版本的kurento服務的docker鏡像

    B。解除安裝老的kurento版本,後安裝新的版本

    使用apt-get 去解除安裝kurento版本不是一個好的方法,可以使用aptitude可能會更好用

    sudo aptitude remove '?installed?version(kurento)'

    sudo apt-get update&& sudo apt-get install --no-install-recommends --yes kurento-media-server    ----------------------------------

    注意:如果你更新kurento包失敗,你會得到錯誤的行為和崩潰,kurento由以下幾個包

    kurento-media-server

    kurento-module-creator

    kms-core

    kms-elements

    kms-filters

    libnice10

    libusrsctp

    openh264

    openwebrtc-gst-plugins

    等等

    更新kurento包你必須更新所有的包,不僅僅是第一個

    ----------------------------------

4.5.STUN/TURN服務安裝

    使用WebRTC必須要開發者知道NAT,ICE,STUN,和TURN所有資訊,如果不知道這些,你應該看一下這個 關于NAT,ICE,STUN,TURN。

    當使用本地連接配接KMS像WebRTC一樣可以工作的很好,如果隻運作在本地網絡,隻需要安裝KMS就可以。

    以後你可能會把服務部署到雲環境中,允許KMS可以運程用戶端連接配接服務,遠端用戶端不能在NAT路由到伺服器,是以你你的應用程式需要NAT穿透,你可以安裝STUN服務或者TRUN,然後配置KMS伺服器和浏覽器。

    下面的連結包括配置你的在你的KMS服務配置STUN/TURN服務

     怎樣安裝cotrun?

    怎麼測試你的STUN/TURN服務

    怎麼配置STUN/TURN

4.6安裝檢查

    驗證你的kurento服務已經啟動并運作,使用下面指令檢視你的kurento服務狀态

    ps -FC kurento-media-server

UID PID PPID C STIME TTY TIME CMD
kurento 7688 1 0 13:36 ? 00:00:00 /usr/bin/kurento-media-server
           

    除非配置成别的,KMS監聽IPV6協定端口是8888,接收kurento協定的RPC請求和發送kurento協定的RPC的響應

    sudo netstat -tupln |grep -e kurento -e 8888

tcp6 0 0 :::8888 :::* LISTEN 7688/kurento-media
           

    你可以修改/etc/kurento/kurento.conf.json 檔案内的參數

    檢查KMS是啟動并監聽連接配接可以使用以下指令:

curl \
--include \
--header "Connection: Upgrade" \
--header "Upgrade: websocket" \
--header "Host: 127.0.0.1:8888" \
--header "Origin: 127.0.0.1" \
http://127.0.0.1:8888/kurento
           

    你可以看到如下響應:

HTTP/1.1 500 Internal Server Error
Server: WebSocket++/0.7.0
           

    忽略這個服務錯誤資訊,這個傳回是正常的,這個傳回就證明KMS服務已經啟動并開始監聽

    如果你需要自動化配置,你可以寫一個與healthchecker.sh相似的腳本,healthchecker.sh檔案是用在kurento的docker鏡像的。

繼續閱讀