MTV is a large Finnish media house with a variety of services. MTV started as the first commercial TV network in Finland back in 1957 and nowadays has one of the biggest audiences in Finland. Services provided includes TV channels, Intenet media sites, Mobile applications and Video on demand services.
Video on demand offering includes Katsomo and Cmore VOD services which provides users the freedom to watch TV where, when and how they like.
The CMS system and video transcoding workers were running on dedicated hardware an on-premise data center. System was labor intensive to maintain. Utilization rates were spiked by nature and the transcoding system had poor scalability when running near full capacity.
Cybercom, jointly with other companies, was tasked to start leveraging cloud computing, best practices and DevOps to provide recommendations and implementation for a new version of the service.
We at Cybercom help companies build Amazon Web Services (AWS) based cloud services. We have several years' experience in cloud technologies and DevOps. We take care of our clients’ AWS accounts, and give assistance with certified AWS experts, who have hands-on knowledge of different cloud environments. Our customers can focus on their core business, and we will take care of the transition projects, new cloud-based architecture designs, data security and 24/7 operations for them.
With all this extensive experience with AWS, it was only natural that we suggested AWS to be the cloud platform to build the new implementation. AWS has all the right services we need to be able to implement state of the art solution. Our established DevOps best practices leverage the variety of AWS technologies and services and let’s our customers to focus on their core business.
After deeply analyzing and assessing the current infrastructure and application architecture, we were able to design and implement a new version of the application environment. The new version leverages AWS best practices and relays heavily on our AWS DevOps practices.
Cloudformation enables easy provision of multiple versions, or stacks, of every needed environment. Developers can easily have their dev stacks up and running in no time. Cloudformation templates are deployed using Jenkins based deployment pipeline which also utilizes Cloudformation userdata to configure the system AMIs.
Cloudformation templates, application code and configuration are stored in a Git version control utilizing AWS CodeCommit. Changes for code are first tested in development branches and development environments before merging to master/production branches. All branching and merging is done using development best practices and no changes will ever make its way to master without a review.
EC2 instances are used as container hosts and for hosting the application platform for the CMS. CMS server is deployed to auto scaling group, which enables easy updates. System software is deployed from S3 while bootstrapping the instance.
Spot instances are used for low-priority batch processing queue to achieve cost-effectiveness whereas on-demand instances cover the high-priority queue.
Batch jobs are used for video transcoding. Batch job triggers a new transcoding container deployment which is responsible for producing the final transcoded video file.
AWS SQS service is used to decouple the transcoding process. Every time a new video file is uploaded to a S3 bucket, SQS event is triggered in corresponding priority queue.
The network design is following the AWS best practices and is utilizing various subnets and availability zones. The solution is also utilizing AWS Direct Connect to reduce the networking costs and for consistent network performance.
Some parts of the solution and implementation are provided by an external operator. To leverage their offering, we created a VPC peering connection to their VPC to have access to the system.
AWS CloudWatch is used for system monitoring together with CloudTrail and Trusted Advisor.
Architectural & DevOps overview
After the new system was implemented, the benefits were easily spotted