Skip to content

Streaming Media Service

This page gives an overview of the Streaming Media Service, describing its current status, where and how it's developed and deployed, and who is responsible for maintaining it.

Warning

This service is being decommissioned. Please use alternative services for publishing new content (see the SMS closure news article for more information).

Service Description

The Streaming Media Service (SMS) provides a video and audio transcoding and hosting service.

Service Status

The Streaming Media Service is currently live/decommissioning.

Contact

Technical queries and support should be directed to sms-support@uis.cam.ac.uk and will be picked up by a member of the team working on the service. To ensure that you receive a response, always direct requests to sms-support@uis.cam.ac.uk rather than reaching out to team members directly.

Issues discovered in the service or new feature requests should be opened as GitLab issues here.

Environments

The Streaming Media Service is currently deployed to the following environments:

Name URL Supporting VMs
Production https://sms.cam.ac.uk sms-node1.sms.cam.ac.uk (web application)
sms-node2.sms.cam.ac.uk (web application)
smew.sms.csx.cam.ac.uk (downloads)
goldeneye.sms.csx.cam.ac.uk (downloads)
sms-nfs1.sms.private.cam.ac.uk (ceph->nfs gateway)
sms-nfs2.sms.private.cam.ac.uk (ceph->nfs gateway)
ruddy.sms.cam.ac.uk (nfs server)
pintail.sms.cam.ac.uk (nfs server)
pochard.sms.cam.ac.uk (nfs server)
transcode1.sms.private.cam.ac.uk (transcoding)
transcode2.sms.private.cam.ac.uk (transcoding)
transcode3.sms.private.cam.ac.uk (transcoding)
transcode4.sms.private.cam.ac.uk (transcoding)
sms-live-db.srv.uis.private.cam.ac.uk (DB) provided by Moa

Source code

The source code for the Streaming Media Service is spread over the following repositories:

Repository Description
Application Server The source code for the main application server
Transcode worker The source code for the transcode worker
Infrastructure Ansible infrastructure code for some management tasks

Technologies used

The following gives an overview of the Streaming Media Service is built on.

Category Language Framework(s)
Web application Groovy 2.4.12 Grails 1.3.10
DB Postgres 10.5

Operational documentation

The following gives an overview of how the Streaming Media Service is deployed and maintained.

How and where the Streaming Media Service is deployed

The Streaming Media Service application is deployed using RPM packages. These are built by Gitlab CI in the Application Server repository. These can be copied to the Bes RPM package repository run by infra-sas@uis by following these instructions. As a last resort RPMs can be manually copied and installed.

Deploying a new release

Once the RPM packages are added to the Bes RPM package repository installation is simply a matter of running zypper up as root.

Monitoring

The streaming Media Service is monitored by nagios There is also a status page that checks the various components of the service and returns 200 if everything is functioning normally.

Backups

See legacy application backups

Other Documentation

Service Management and tech lead

The service owner for the Streaming Media Service is Abraham Martin.

The service manager for the Streaming Media Service is Stephen Ison.

The tech lead for the Streaming Media Service is Stephen Ison.

System Dependencies

Contact Addresses