SlideShare a Scribd company logo
WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm.
Elastic streaming Cloud
How we build it .
Speaker
Nick Doikov
Sr.Devops Engineer @
nick.doikov@gmail.com
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
WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm.
WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm.
WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm.
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)

More Related Content

PDF
WebCamp 2016: DevOps. Ярослав Погребняк: Gobetween - новый лоад балансер для ...
PDF
[오픈소스컨설팅] EFK Stack 소개와 설치 방법
PDF
OpenNebulaconf2017US: Rapid scaling of research computing to over 70,000 cor...
PDF
openstack源码分析(1)
PDF
GoDocker presentation
PDF
Network Automation: Ansible 101
PPTX
Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios
PPTX
Windows Azure PowerShell CmdLets
WebCamp 2016: DevOps. Ярослав Погребняк: Gobetween - новый лоад балансер для ...
[오픈소스컨설팅] EFK Stack 소개와 설치 방법
OpenNebulaconf2017US: Rapid scaling of research computing to over 70,000 cor...
openstack源码分析(1)
GoDocker presentation
Network Automation: Ansible 101
Nagios Conference 2014 - Jeff Mendoza - Monitoring Microsoft Azure with Nagios
Windows Azure PowerShell CmdLets

What's hot (20)

PDF
OpenNebula Conf 2014 | Lightning talk: Proactive Autonomic Management Feature...
PDF
SaltConf14 - Eric johnson, Google - Orchestrating Google Compute Engine with ...
PPTX
Cyansible
PDF
OpenNebula Conf 2014 | Puppet and OpenNebula - David Lutterkort
PDF
Monitoring of OpenNebula installations
PDF
Kubernetes 1.3 - Highlights
PDF
Using Embulk at Treasure Data
PDF
Recent Updates at Embulk Meetup #3
PDF
DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...
PDF
OpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph Galuschka
PDF
Running at Scale: Practical Performance Tuning with Puppet - PuppetConf 2013
PDF
A user's perspective on SaltStack and other configuration management tools
PDF
[2018.10.19] Andrew Kong - Tunnel without tunnel (Seminar at OpenStack Korea ...
PDF
Cloudinit
PDF
[2018.10.19] 김용기 부장 - IAC on OpenStack (feat. ansible)
PDF
Arnold Bechtoldt, Inovex GmbH Linux systems engineer - Configuration Manageme...
PDF
OpenNebulaConf2015 1.09.02 Installgems Add-on - Alvaro Simon Garcia
PDF
Ansible with AWS
PDF
PuppetCamp Sydney 2012 - Building a Multimaster Environment
PDF
OpenNebula Conf 2014 | Lightning talk: OpenNebula at Etnetera by Jan Horacek
OpenNebula Conf 2014 | Lightning talk: Proactive Autonomic Management Feature...
SaltConf14 - Eric johnson, Google - Orchestrating Google Compute Engine with ...
Cyansible
OpenNebula Conf 2014 | Puppet and OpenNebula - David Lutterkort
Monitoring of OpenNebula installations
Kubernetes 1.3 - Highlights
Using Embulk at Treasure Data
Recent Updates at Embulk Meetup #3
DSLing your System For Scalability Testing Using Gatling - Dublin Scala User ...
OpenNebula Conf 2014: CentOS, QA an OpenNebula - Christoph Galuschka
Running at Scale: Practical Performance Tuning with Puppet - PuppetConf 2013
A user's perspective on SaltStack and other configuration management tools
[2018.10.19] Andrew Kong - Tunnel without tunnel (Seminar at OpenStack Korea ...
Cloudinit
[2018.10.19] 김용기 부장 - IAC on OpenStack (feat. ansible)
Arnold Bechtoldt, Inovex GmbH Linux systems engineer - Configuration Manageme...
OpenNebulaConf2015 1.09.02 Installgems Add-on - Alvaro Simon Garcia
Ansible with AWS
PuppetCamp Sydney 2012 - Building a Multimaster Environment
OpenNebula Conf 2014 | Lightning talk: OpenNebula at Etnetera by Jan Horacek
Ad

Viewers also liked (20)

PDF
WebCamp 2016: PHP.Алексей Петров.PHP at Scale: System Architect Toolbox
PDF
WebCamp 2016: DevOps. Егор Лопатин и Юрий Железко: How we build and deploy ou...
PDF
WebCamp 2016: PM. Яна Пролис: "Вредные" советы по конфликтам в команде и комп...
PDF
WebCamp 2016: PHP.Денис Потапов.Рефакторим код не задумываясь
PDF
WebCamp 2016: PM. Дмитрий Пискарев: Способы мотивации и продления LTV сотрудн...
PDF
WebCamp2016:Front-End_Роман Якобчук_Relay, GraphQL и остальные радости соврем...
ODP
WebCamp2016:Front-End_Андрей Копёнкин_Оптимизируем мобильный веб полностью
PDF
WebCamp 2016: PM. Роман Кравченко: Разработка требований и управление рисками...
PDF
WebCamp 2016: BizDev. Кейт Голдберг: Agile business development: как применят...
PDF
WebCamp 2016: Front-end. Виталий Бобров: JavaScript для мобильной разработки.
PDF
WebCamp2016:Front-End_Юрий Артюх_Современные подходы в верстке
PDF
WebCamp 2016: BizDev. Андрей Моспан: Правда ли, что продукт стоит ровно столь...
PDF
WebCamp2016:Front-End.Максим Климишин.Теоретические и практические концепции ...
PDF
WebCamp 2016: PHP. Александр Шкарбалюк: SSO: Кому оно нужно и как его готовить?
PDF
WebCamp2016:Front-End.Катерина Поршнева.Эволюция CSS: от темных времен до CSS...
PDF
WebCamp 2016: PHP.Сергей Яковлев.Phalcon 3
PDF
WebCamp 2016: Python_Кирилл Перевозчиков _Рецепты приготовления uWSGI
PDF
WebCamp 2016: PHP. Дмитрий Науменко: Рецепты для Yii2.
PDF
WebCamp 2016.PHP.Боднарчук Михаил.BDD на практике с Codeception
PDF
WebCamp 2016: Python. Михаил Бегерский: Использование asyncio-стека для разра...
WebCamp 2016: PHP.Алексей Петров.PHP at Scale: System Architect Toolbox
WebCamp 2016: DevOps. Егор Лопатин и Юрий Железко: How we build and deploy ou...
WebCamp 2016: PM. Яна Пролис: "Вредные" советы по конфликтам в команде и комп...
WebCamp 2016: PHP.Денис Потапов.Рефакторим код не задумываясь
WebCamp 2016: PM. Дмитрий Пискарев: Способы мотивации и продления LTV сотрудн...
WebCamp2016:Front-End_Роман Якобчук_Relay, GraphQL и остальные радости соврем...
WebCamp2016:Front-End_Андрей Копёнкин_Оптимизируем мобильный веб полностью
WebCamp 2016: PM. Роман Кравченко: Разработка требований и управление рисками...
WebCamp 2016: BizDev. Кейт Голдберг: Agile business development: как применят...
WebCamp 2016: Front-end. Виталий Бобров: JavaScript для мобильной разработки.
WebCamp2016:Front-End_Юрий Артюх_Современные подходы в верстке
WebCamp 2016: BizDev. Андрей Моспан: Правда ли, что продукт стоит ровно столь...
WebCamp2016:Front-End.Максим Климишин.Теоретические и практические концепции ...
WebCamp 2016: PHP. Александр Шкарбалюк: SSO: Кому оно нужно и как его готовить?
WebCamp2016:Front-End.Катерина Поршнева.Эволюция CSS: от темных времен до CSS...
WebCamp 2016: PHP.Сергей Яковлев.Phalcon 3
WebCamp 2016: Python_Кирилл Перевозчиков _Рецепты приготовления uWSGI
WebCamp 2016: PHP. Дмитрий Науменко: Рецепты для Yii2.
WebCamp 2016.PHP.Боднарчук Михаил.BDD на практике с Codeception
WebCamp 2016: Python. Михаил Бегерский: Использование asyncio-стека для разра...
Ad

Similar to WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm. (20)

ODP
The journey to container adoption in enterprise
PPTX
Patterns for building resilient and scalable microservices platform on AWS
PDF
Dean Bryen: Scaling The Platform For Your Startup
PDF
NLUUG print conference May 26 2016
PDF
introduction to micro services
PPT
The Enterprise Cloud
PPTX
AWS ECS LESSONS LEARNED
PDF
Running Docker clusters on AWS (November 2016)
PPTX
Provisioning in the cloud context, cloud computing, EC2, Amazon provisioning ...
PDF
Introduction into Cloud Foundry and Bosh | anynines
PDF
Designing Lean CloudStack Environments for the Edge - IndiQus - CloudStack E...
PPTX
Cloud Patterns Beuth Hochschule
PPTX
104 meets cloud
PPTX
State of the Container Ecosystem
PDF
6 Months Sailing with Docker in Production
PDF
Microservices and elastic resource pools with Amazon EC2 Container Service
PDF
[WSO2Con Asia 2018] Architecting for Container-native Environments
PPTX
Intro Docker to Loire Atlantique
PDF
Running Docker clusters on AWS (June 2016)
PDF
Containers Meetup (AWS+CNCF) Milano Jan 15th 2020
The journey to container adoption in enterprise
Patterns for building resilient and scalable microservices platform on AWS
Dean Bryen: Scaling The Platform For Your Startup
NLUUG print conference May 26 2016
introduction to micro services
The Enterprise Cloud
AWS ECS LESSONS LEARNED
Running Docker clusters on AWS (November 2016)
Provisioning in the cloud context, cloud computing, EC2, Amazon provisioning ...
Introduction into Cloud Foundry and Bosh | anynines
Designing Lean CloudStack Environments for the Edge - IndiQus - CloudStack E...
Cloud Patterns Beuth Hochschule
104 meets cloud
State of the Container Ecosystem
6 Months Sailing with Docker in Production
Microservices and elastic resource pools with Amazon EC2 Container Service
[WSO2Con Asia 2018] Architecting for Container-native Environments
Intro Docker to Loire Atlantique
Running Docker clusters on AWS (June 2016)
Containers Meetup (AWS+CNCF) Milano Jan 15th 2020

More from WebCamp (9)

PDF
WebCamp 2016: Python.Максим Климишин.Типизированный Python
PDF
WebCamp 2016: Python.Павел Коломиец.Использование микросервисов при написании...
PDF
WebCamp2016:BizDev_Алексей Иваница_Как построить и монетизировать мобильный п...
PDF
WebCamp 2016: BizDev. Марина Никитчук : Искусство продажи мечты, а не сервиса.
PDF
WebCamp 2016: BizDev. Александр Борняков: Маркетинг в США: как привлечь к себ...
PDF
WebCamp 2016: Front-end. Андрей Ситник: Stylelint — как и зачем линтить CSS
PPTX
WebCamp 2016: PHP. Николай Паламарчук: PHP и микросервисы
PDF
WebCamp 2016: PM. Александр Демура: Откуда берутся тупые заказчики, и что с н...
PDF
WebCamp 2016: PM. Евгений Лабунский: Командная безответственность
WebCamp 2016: Python.Максим Климишин.Типизированный Python
WebCamp 2016: Python.Павел Коломиец.Использование микросервисов при написании...
WebCamp2016:BizDev_Алексей Иваница_Как построить и монетизировать мобильный п...
WebCamp 2016: BizDev. Марина Никитчук : Искусство продажи мечты, а не сервиса.
WebCamp 2016: BizDev. Александр Борняков: Маркетинг в США: как привлечь к себ...
WebCamp 2016: Front-end. Андрей Ситник: Stylelint — как и зачем линтить CSS
WebCamp 2016: PHP. Николай Паламарчук: PHP и микросервисы
WebCamp 2016: PM. Александр Демура: Откуда берутся тупые заказчики, и что с н...
WebCamp 2016: PM. Евгений Лабунский: Командная безответственность

Recently uploaded (20)

PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Machine learning based COVID-19 study performance prediction
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPTX
Machine Learning_overview_presentation.pptx
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
Big Data Technologies - Introduction.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Encapsulation theory and applications.pdf
PDF
Approach and Philosophy of On baking technology
PPTX
Cloud computing and distributed systems.
PDF
MIND Revenue Release Quarter 2 2025 Press Release
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
Spectral efficient network and resource selection model in 5G networks
Machine learning based COVID-19 study performance prediction
Reach Out and Touch Someone: Haptics and Empathic Computing
sap open course for s4hana steps from ECC to s4
Network Security Unit 5.pdf for BCA BBA.
Dropbox Q2 2025 Financial Results & Investor Presentation
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Assigned Numbers - 2025 - Bluetooth® Document
Machine Learning_overview_presentation.pptx
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Programs and apps: productivity, graphics, security and other tools
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Big Data Technologies - Introduction.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Encapsulation theory and applications.pdf
Approach and Philosophy of On baking technology
Cloud computing and distributed systems.
MIND Revenue Release Quarter 2 2025 Press Release

WebCamp 2016: DevOps. Николай Дойков: Опыт создания клауда для потокового видео на docker swarm.

  • 3. Speaker Nick Doikov Sr.Devops Engineer @ nick.doikov@gmail.com
  • 4. Introductory - Over 1000 companies - Over 4000 separate users - Over 6000 streaming instances (cloud based and cloud attached) One
  • 5. - 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?)
  • 6. - 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?
  • 7. 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
  • 8. Streaming devices with bonding Bonding and streaming server
  • 9. Previous flow with binding streaming server (Sputnik) in Amazon EC2
  • 10. 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
  • 11. What we need - Static entry point that do not change due device unregister in Core - Static ports for stream capturing by 3rd party devices
  • 15. 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
  • 16. 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)