Encapsulating video streaming Microservices for Planet-scale deployment of video streaming solutions.
In the past few weeks we’ve been working on a project that should greatly simplify the deployment of video streaming services anywhere in the planet at either small scale or planet scale, leveraging Kubernetes clusters and encapsulating traditional streaming technologies such as NGINX on top of container technology such as Docker.
The benefits of such deployment are many since this kind of continuously integrated deployment wouldn’t be dictated by any one company or centralized gatekeeper. Any user could deploy an enterprise level video streaming service at their command in order to meet any particular demand and devoid of arbitrary limits imposed by SaaS providers.
This tecnology leverages the benefits of public cloud infrastructure including elastic load balancing, autoscaling to be able to horizontally scale out for more compute intense solutions and to scale out in case of any spike in traffic in conjuction with the loadbalancer. Kubernetes combined with any major public cloud provider would make this omnidirectional scaling possible.
The problem which each StreamPod solves has most likely be solved in the aggregate by other service providers, what StreamPods aims to aid is for those small use-cases in which an expensive yearly or monthly contract might not be needed and a more ephemeral and localized solution is required.
The long-term solution should be able to allow VOD or Livestreaming deployments to be elastic and dispersed in any desired region(s) of the planet. As of now the current encapsulated pods can be deployed as containers and more importantly as Pods within a Kubernetes cluster in any major public cloud provider as well as any premises which support Kubernetes.
Why and how was this built?
To simplify deployment and scaling of adaptive live-streaming services. We built this as set of tools in order to have a simple turnkey technology which can allow to set indepedent and self hosted streamnig solutions devoid of any monthly/yearly contracts and tailor to any specific and ever evolving use-case or need.
The Technology Stack for StreamPods consists of the following:
- Traditional Video Player and Livestreaming Server technology.
- CI/CD workflows in GIT.
- Docker Containers.
- AWS's Cloudformation, ECS, ECR, EKS & ELB.
The following URLs contain the repositories and containers, currently deployed in a fully managed orchestrated service provided by AWS's AppRunner.
Feel free to reach out to us for any questions about StreamPods.