Upload
webcamp
View
63
Download
2
Embed Size (px)
Citation preview
Elastic streaming Cloud How we build it .
Introductory
- Over 1000 companies- Over 4000 separate users- Over 6000 streaming instances (cloud based and cloud attached)
One
- update mess (application and base OS )- partial access to client's infrastructure- To many resources need to support all this infrastructure- Instances are in active usage approx 10% max (3% in general) time- Users deploy own local servers (Distro? Kernel?)
- operational expenses - constant resource freeze (used or not) - core resources allocation (stats etc ...)- not suitable for rapid start-stop (can`t be used for instant start on connection)
What we can do with all of this?
Docker containers :
- Can be runned in a seconds - Real transparent start/stop for end customer- No os CPU,RAM overhead- Easily to update via images versioning
Streaming devices with bonding
Bonding and streaming server
Previous flow with binding streaming server (Sputnik) in Amazon EC2
Goals
- launch on device connect- Stop after streaming finished and all files uploaded- Centralized logging- Every time up to date container (no problems with software updates)- Oversell %)- Multi regions - Easy maintain and provisioning new points of presence
What we need
- Static entry point that do not change due device unregister in Core- Static ports for stream capturing by 3rd party devices
Few notes :
- Consul cluster behind elb- Swarm nodes announce themselves to Consul- Regions separated by DOCKER_OPTS Label- Container starts with region constraint- Inside container there are monitors that check application status and send
metrics to core.- After connections from devices and upload connections was closed container
“dies” after 30 minutes idle- Jobber delete stopped containers each 5 second - Centralized logging /alerting using async redis pubsub as a buffer and
elasticsearch as a storage
What we get :
- End user value (customer get enough resources exactly when he need it )- Easy few steps node deploy (can be deployed on cloud providers as well as
on colo)- Easy reached hybrid cloud model (cloud core and hardware calculation
nodes)- Oversell %)- Now we have 9 regions (cloud providers + hardware POP)