webcamp 2016: devops. Николай Дойков: Опыт создания клауда для...
TRANSCRIPT
![Page 1: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/1.jpg)
![Page 2: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/2.jpg)
Elastic streaming Cloud How we build it .
![Page 4: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/4.jpg)
Introductory
- Over 1000 companies- Over 4000 separate users- Over 6000 streaming instances (cloud based and cloud attached)
One
![Page 5: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/5.jpg)
- 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?)
![Page 6: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/6.jpg)
- 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?
![Page 7: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/7.jpg)
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
![Page 8: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/8.jpg)
Streaming devices with bonding
Bonding and streaming server
![Page 9: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/9.jpg)
Previous flow with binding streaming server (Sputnik) in Amazon EC2
![Page 10: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/10.jpg)
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
![Page 11: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/11.jpg)
What we need
- Static entry point that do not change due device unregister in Core- Static ports for stream capturing by 3rd party devices
![Page 12: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/12.jpg)
![Page 13: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/13.jpg)
![Page 14: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/14.jpg)
![Page 15: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/15.jpg)
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
![Page 16: WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm](https://reader034.vdocuments.site/reader034/viewer/2022042610/58a3ff791a28ab64528b5eaf/html5/thumbnails/16.jpg)
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)