Kurento Media Server Binary Install Guide - sgala/kurento-media-server GitHub Wiki
This guide focuses on the installation of Kurento Media Server (a.k.a KMS) on a single node. KMS needs to connect to a Kurento Application Server.
Hardware minimal recommended requirements:
- 8GB RAM
- 16GB HDD (this figure is not taking into account that multimedia streams could be stored in the same machine. If so, HDD size must be increased accordingly)
- Currently Kurento Media Server (KMS) only runs on Ubuntu Linux 13.10 64 Bits or newer. This is due to its dependency on the gstreamer 1.2.0 version.
First, add the Kurento repository to the sources by adding the line below to the file /etc/apt/sources.list.d/kurento.list:
deb http://jmaster01-64.kurento.com/ stable/
Install KMS by typing the following commands, one at a time and in the same order as listed here. When asked for any kind of confirmation, reply afirmatively:
$ sudo add-apt-repository ppa:kurento/kurento $ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get install libevent-dev kurento
KMS can receive requests from a Kurento Application Server (KAS) and from final users. The IP addresses and ports to receive these requests are configured in the configuration file /etc/kurento/kurento.conf. After a fresh install that file looks like this:
[Server] serverAddress=localhost serverPort=9090 sdpPattern=pattern.sdp [HttpEPServer] serverAddress=localhost serverPort=9091
That configuration implies that only requests from the localhost are accepted. The section [Server] allows to configure the IP address and port where KMS will listen to KAS requests. The section [HttpEPServer] controls the IP address and port to listen to the final users.
Finally, configure the server to run KMS when booted:
$ sudo update-rc.d kurento defaults
To verify that the installation has finished successfully start KMS by typing:
$ sudo /etc/init.d/kurento start
The Sanity Check Procedures are the steps that a System Administrator will take to verify that an installation is ready to be tested. This is therefore a preliminary set of tests to ensure that obvious or basic malfunctioning is fixed before proceeding to unit tests, integration tests and user validation.
To verify that KMS is up and running use the command:
$ ps -ef | grep kurento
The output should be similar to:
nobody 22527 1 0 13:02 ? 00:00:00 /usr/bin/kurento kuser 22711 2326 0 13:10 pts/1 00:00:00 grep --color=auto kurento
Unless configured otherwise, KMS opens the port 9090 to receive HTTP TCP requests from KAS and port 9091 for HTTP TCP requests from final users. To verify the open ports type the command:
$ sudo netstat -putan | grep kurento
The output should be similar to the following:
tcp 0 0 127.0.0.1:9091 0.0.0.0:* LISTEN 22527/kurento tcp6 0 0 :::9090 :::* LISTEN 22527/kurento
N/A
The Diagnosis Procedures are the first steps that a System Administrator will take to locate the source of an error in a node. Once the nature of the error is identified with these tests, the system admin will very often have to resort to more concrete and specific testing to pinpoint the exact point of error and a possible solution. Such specific testing is out of the scope of this section.
To guarantee the right working of the enabler RAM memory and HDD size shoud be at least:
- 8GB RAM
- 16GB HDD (this figure is not taking into account that multimedia streams could be stored in the same machine. If so, HDD size must be increased accordingly)
If KMS and KAS are deployed at separate nodes, the admin needs to ensure that the KMS node can reach the KAS Handler port (default 9990) and that the KAS node can reach the KMS service port (default 9090)
Resource consumption documented in this section has been measured in two different scenarios:
- Low load: all services running, but no stream being served.
- High load: heavy load scenario where 100 streams are requested at the same time.
KMS | |
---|---|
Machine Type | Physical Machine |
CPU | Intel(R) Xeon(R) CPU E5-2620 0 @ 2GHz |
RAM | 4GB |
HDD | 10GB |
Operating System | Ubuntu 13.10 |
KMS gave the following result:
Low Usage | Heavy Usage | |
---|---|---|
RAM | 122.88MB | 1.56GB |
CPU | 0.3% | 34.6% |
I/O HDD | 1.18GB | 2.47GB |
Unless configured otherwise, Kurento Media Server will listen at the following ports:
- KMS listens at port 9090 to receive HTTP requests from KAS
- KMS listens at port 9091 to receive HTTP requests from final users
- KMS needs to send and receive on the full UDP port range, used for RTP