How to create your own Intranet Video Streaming Server

Create using Kaltura Open Source software your own video streaming server for publishing videos within your firewall.
4.1 (8 ratings) Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
113 students enrolled
$25
Take This Course
  • Lectures 16
  • Contents Video: 2 hours
    Other: 4 mins
  • Skill Level Expert Level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 7/2013 English

Course Description

Video is the most powerful communication tool; it’s the fastest way to share knowledge and information.

Now all companies can adopt easily this technology using Open Source Video Solutions like Kaltura. Kaltura is a powerful video streaming solution which supports Flash & HTML 5 sharing.

In this video course you’ll learn how to setup your own video streaming server behind your corporate firewall.

You’ll be able to embed the videos into your Intranet website just like you do with Youtube or Vimeo sites but keeping the content under your control.

We’re going to setup a new VMware Virtual Machine, install Kaltura Open Source version and configure it for store and stream videos. 

We'll install another Ubuntu server with WordPress and an specific template for sharing videos (very similar to Youtube) and will publish the videos uploaded to Kaltura into this server.

The combination of these both technologies is like having an own corporate Youtube in your company where share videos with meetings, manuals, procedures, presentations but always keeping the knowledge behind your firewalls.

We are going to follow all the process from the beginning until finish creating a video and uploading it to kaltura up to embedding it into a WordPress post.

After the course you'll be able to adopt this technology just like some bigger companies are doing.

What are the requirements?

  • All the Sorftware used in this course is Open source
  • You'll need a Hypervisor where create your server Virtual Machine
  • You need to know how to setup a Virtual Machine and Web Server Administration basics
  • Understand my "special" english :)

What am I going to get from this course?

  • Setup Kaltura OpenSource video streaming server
  • Embed videos from your server into posts or webpages

What is the target audience?

  • Intranet Site Administrators
  • Media Companies

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: Course Presentation
03:42

Step 1 – InstallCentOS Server
  over a Vmware virtual Machine

Step 2 – PreparingtheServer 
 installingprerequisites

Step 3 – InstallingKaltura

Step 4 – ConfiguringKaltura

Step 5 – Publishing Videos

Step 6 – Setting up the Video Player

Step 7 – Embedding Videos intowebpages

Section 2: New RPM based method of installation
35:14

New procedure for Kaltura installation. If you follow this method you can continue directly to clase 9.

At the end of the video there is a solution for fixing an issue that perhaps you can suffer.

Code for the database fix:

#mysql -uroot -p

mysql>use kaltura;

mysql> select status from permission WHERE permission.NAME='FEATURE_KMC_ENFORCE_HTTPS';

(it's set to 1)

mysql> update permission set status=3 where permission.NAME='FEATURE_KMC_ENFORCE_HTTPS';

mysql> select status from permission WHERE permission.NAME='FEATURE_KMC_ENFORCE_HTTPS';

(now it's set to 3)

Section 3: Kaltura installation
08:33
You can use a phisical or virtual server.

You can use any Virtrualization software, there are a lot of programs free: I recommend you VMware ESXi (free) for corporate dedicated hosts. If you are going to install it in your own PC (over Windows) I recommend you VMware player (free) or VirtualBox (free).


Linux CentOS download page: http://www.centos.org/modules/tinycontent/index.php?id=30

Select the correct distribution depending on your Hardware Processor architecture (x86 / 64)

I recommend you to use HTTP dounload instead FTP. 

Use last available version (6.4) and the minimal ISO, for example: 
http://sunsite.rediris.es/mirror/CentOS/6.4/isos/x86_64/CentOS-6.4-x86_64-minimal.iso 

Putty download page: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html 
download de putty.exe file (unlock it) and place it in C:WindowsSystem32 folder)

WinSCP download page: http://winscp.net/eng/download.php 
use the installation package

Remember to add a line with the definitive and static IP to your C:windowssystem32driversetchosts file or ask for a A record registration in your corporate DNS server in order to be able to resolve the FQDN hostname and access the server using a fqdn instead a IP address.

06:00

Use the attache txt file to copy/paste te code

yum update
yum install git wget dos2unix php-cli php-mysql php-gd 
                memcached httpd mailx ImageMagick 
                php-pecl-apc php-pecl-memcache php-xml cronie
Edit /etc/selinux/config and change SELINUX=enforcing to SELINUX=disabled
http://www.oracle.com/technetwork/java/javase/downloads/index.html
NOTE: Although the video describes another way of JRE installation, use this one; simply execute:
yum install java-1.6.0-openjdk
yum --enablerepo=centosplus install mod_php
reboot
		
09:24
Edit /etc/hosts and add the hosntame to 127.0.0.1 line
yum install ntp 
ntpdate pool.ntp.org
Edit /etc/httpd/conf/httpd.conf
Uncomment line: LoadModule filter_module modules/mod_filter.so
cp /etc/php.ini php.ini.apache.backup
sed -e "s/^request_order = "GP"/request_order = "CGP"/g" 
    /etc/php.ini > /tmp/php.ini.configured && 
    sudo cp /tmp/php.ini.configured /etc/php.ini
/etc/init.d/httpd start
/etc/init.d/memcached start
chkconfig --level 2345 httpd on
chkconfig --level 2345 ntpd on
chkconfig --level 2345 memcached on
service iptables stop
chkconfig iptables off
********************** DEPRECATED ************************
* It seems an error on the repository or perhaps the structure has changed. I'm going to * put the files available for you in another URL in order to enable you the downloading.
* 
* Instead sync from the source using git download the .tar.gz package from
* http://www.techture.es/wp-content/uploads/kalturaCEinstaller.tar.gz
* cd ~/
* git clone https://github.com/kaltura/ce-packager.git
* cd ~/ce-packager/  
* git submodule update --init
* cd git-repositories/KalturaServer
* git reset --hard origin/falcon
* cd..
* cd..
* git submodule update git-repositories/ce*
* find ~/ce-packager/git-repositories/ce* -type d -name .git -print -execdir git pull * origin master ;
* cd ~/ce-packager/git-repositories/ce-branding
* git checkout f79d56cd9026e2474ef82f2c7a39ee8f43a2c7ee
* cd ~/ce-packager/git-repositories/ce-configurations/auto_install
* Edit user_input.ini file and customize your own options.
* 
* cd ~/ce-packager/packaging/
* 
* php package.php /tmp/kalturaCEinstaller false CE v6.2.0 dev
* 
* rsync -av ~/ce-packager/git-repositories/ce-configurations/auto_install/ * /tmp/kalturaCEinstaller
*
********************** END OF DEPRECATED
cd /
wget http://www.techture.es/wp-content/uploads/kalturaCEinstaller.tar.gz
tar -xvf kalturaCEinstaller.tar.gz
02:53

Review your /tmp/kalturaCEinstaller/user_input.ini file

I suggest you update the MySQL driver download URL in the file updating these parameters in the file:

MYSQL_JAVA_CONNECTOR="http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.26.tar.gz/from/http://cdn.mysql.com/"
MYSQL_JAVA_CONNECTOR_VER=5.1.26

After this execute the installer running these commands:

cd /tmp/kalturaCEinstaller
./main.sh
Section 4: post installation task and configuration
02:34
Use the attached txt document to copy / paste the code:
mkdir /opt/kaltura/dwh/logs/  
/opt/kaltura/dwh/etlsource/execute/etl_hourly.sh  
/opt/kaltura/dwh/etlsource/execute/etl_update_dims.sh  
/opt/kaltura/dwh/etlsource/execute/etl_daily.sh  
/opt/kaltura/dwh/etlsource/execute/etl_perform_retention_policy.sh  
echo `date` >> /opt/kaltura/log/cron.log && /opt/kaltura/app/scripts/dwh/dwh_plays_views_sync.sh >> 
/opt/kaltura/log/cron.log 
cp /etc/my.cnf my.cnf.backup
sed -e "s/^thread_stacktt= 192K/thread_stacktt= 256K/g"
    /etc/my.cnf > /tmp/my.cnf.configured &&
   
cp /tmp/my.cnf.configured /etc/my.cnf
sed -e "s/^[mysqld]/[mysqld]nlower_case_table_names = 1/g"
    /etc/my.cnf > /tmp/my.cnf.configured &&
    sudo cp /tmp/my.cnf.configured /etc/my.cnf
service mysqld restart
chkconfig --level 2345 mysqld on
01:11
Execute, from terminal shell:
ln -s /opt/kaltura/app/scripts/sphinx_watch.sh /etc/init.d/sphinx_watch.sh
chkconfig --add sphinx_watch.sh
chkconfig sphinx_watch.sh on
03:22
Create a "publisher" user is the first task an it's necessary to upload and share contents.

This video describes how to login in the Admin interface and create a publisher user

01:10

Log in in the "Server Admin tools interface" and in the Actions colums of the publisher user select de "KMC 

users" option, now in the Action combo select "Reset password".

You have to use a complex password: letters, numbers & special characters

07:22
Due to a bug it's necessary to delete the default players associated to the new publisher user and create new ones. It's an opportunity to create your own player customized as your preferences. 

You can remove the Kaltura Logo player, you've to:

Copy the following UIVars string to the ”Paste your plug-in line here” box and then click the “go” button.

kalturaLogo.visible=false&kalturaLogo.includeInLayout=false

Section 5: Installing WopdPress Video flavour
23:49

Download the ISO file: http://www.ubuntu.com/download/server/thank-you?distro=server&bits=64&release=lts

upload the ISO to your Hypervisor and create a virtual machine with the ISO configured in the startup

Install the last version of Ubuntu server LTS (long term support)

select LAMP + OpenSSH server when promted

create a user/password during setup 

sudo su
passwd root
ifconfig
Edit /etc/network/interfaces file and modify it with your own TCP/IP settings for this server:
auto eth0
iface eth0 inet static 
address 192.168.0.210
netmask 255.255.255.0 
network 192.168.0.0
broadcast 192.168.0.255 
gateway 192.168.0.1
# dns-* options are implemented by the resolvconf package, if installed 
dns-nameservers 192.168.0.1
/etc/init.d/networking restart
exit
aptitude safe-upgrade
Create a file called Video in /etc/apache2/sites-available
 
ServerName video.company.com 
ServerAlias video.company.com 
DocumentRoot /var/www/video/

Options FollowSymLinks
AllowOverride None
 

Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# This directive allows us to have apache2's default start page
# in /apache2-default/, but still have / go to the right place
# Commented out for Ubuntu
#RedirectMatch ^/$ /apache2-default/


a2ensite video
cd /var/www/
wget http://wordpress.org/latest.tar.gz
tar -xvf latest.tar.gz
mysqladmin -uroot -ppassword create video_db
mysql -uroot -ppassword 
mysql>create user video_user@'localhost' identified by 'password';
mysql>grant all privileges on video_db.* to video_user WITH GRANT OPTION;
mysql>exit
chown -R www-data:www-data video/
cd video/wp-content/themes/
wget http://templatic.com/_data/freethemes/Video.zip?2003bf
unzip Video.zip 
apt-get install unzip
unzip Video.zip 
service apache2 restart
a2dissite default
service apache2 reload
exit

      • Video template docummentation: http://templatic.com/freethemes/video

Section 6: Publishing Videos
01:24
We are going to review the Video template interface and upload our first video to Kaltura platform.
09:18
A more detailed explanation of the software possibilities and sharing process.


Section 7: Extra content
Article
Extra lesson with common administrative tasks.

Remember that you can download the entire folder of the virtual machine Exploring the ESXi Datastore with the console browser (shutown the server before backup the Virtual Machine files).
You can, also, extract files from the Virtual Machine file system using WinSCP.
Don't forget performing regular backups! 
Section 8: Conclusion
00:48

This is the end of the course but just the real starting of your experience with the system.

Explore possibilities, think how this technology can improve your company or how you can contribute to your company. Here you have some links with some inspirational videos about how big companies are adopting this technology:

http://www.youtube.com/watch?v=ymCmL2h6xUQ

http://www.youtube.com/watch?v=T_pML1jXJys

http://www.eduvideo.org/category/Enterprise+Summit+2013/12457641

Good luck & squeeze all possibilities !!

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Alberto Sanz, IT Consultant

Profesional con más de 10 años de experiencia, actualmente prestando servicio en una de las grandes multinacionales de servicios de IT. 

Durante mi vida profesional he pasado por prácticamente todos los roles relacionados con la Administración de Sistemas y soporte IT desde el soporte hasta la gestión de niveles de servicio y costes.

He crecido rodeado de grandes profesionales y he trabajado para pequeñas empresas y grandes multinacionales.

Siempre he tenido gran interés por la tecnología e Internet. Desde el año 2004 administro un portal literario on-line que cuenta con millones de visitas a lo largo de su vida. Gracias al software libre fui capaz de poner en marcha el proyecto sin ninguna inversión.

Ready to start learning?
Take This Course