SlideShare a Scribd company logo
1 of 51
Download to read offline
Docker Usage Patterns
No Hype, Just Data
Docker Meetup Paris

Nov 10, 2015
Benjamin Fernandes
Software Engineer — Datadog

@LotharSee

About Me
• MS, CS degree from Ecole Centrale Paris

Former chairman at VIA Centrale Réseaux

• Joined Datadog 3 years ago

• Worked on Datadog’s integration with
Docker and its ecosystem
Benjamin Fernandes

Software Engineer
Datadog
@LotharSee
Quick Overview of Datadog
Datadog gathers performance data from all your application and infrastructure components.
• Monitoring for modern applications

1. Dynamic Infrastructure

2. Containers (Docker, ECS, Mesos, k8s, and more…)

3. Microservices

• Time series storage of metrics and events

• Trending, alerting and anomaly detection

!
• We’re hiring! (New York, Paris, Remote)
Monitor Everything
Datadog gathers performance data from all your application components.
Why so much Docker?
Avoid Dependency Hell
Who is running Docker today?
Docker Adoption
What about in production?
Docker Adoption
Adopter: the average number of containers running during
the month was at least 50% the number of distinct hosts run,
or there were at least as many distinct containers as distinct
hosts run during the month.
Dabbler: used Docker during the month, but did not reach the
“adopter” threshold.
Abandoner: a currently active company that used Docker in
the past, but hasn't used it at all in the last month.
Study from 7000 organizations.
Docker Adoption
Turns out you aren’t alone!
Docker Adoption
Source: http://dtdg.co/dckr-adopt
Fact 1: Docker Adoption Up 5x in 1 Year
Docker Adoption Growth
We’ve see 5x increase of Docker adoption over the last year.
Fact 2: Docker now runs on 6% of hosts we monitor
Fact 3: Larger Companies Are the Early Adopters!
Fact 4: 2/3 of Companies That Try Docker Adopt It
Fact 5: Users 3x the Number of Containers They Use in 5
Months
Fact 6: Most Widely Used Images Are Registry, NGINX,
and Redis
Fact 7: Docker Hosts Often Run Four Containers at a
Time
Fact 8: VMs Live 4x Longer Than Containers
Bonus fact. Thanks The Onion.
Operational Complexity
• Average containers per host: N (N=4, 10/2015)!
• N-times as many “hosts” to manage!
• Affects!
• provisioning: prep’ing & building containers!
• configuration: passing config to containers!
• orchestration: deciding where/when containers run!
• monitoring: making sure containers run properly
Operational Complexity: Scale
100
instances
400
containers
Operational Complexity: Scale
160
metrics per host
640
metrics per host
Assuming 4 containers per host
Operational Complexity: Scale
100
instances
64,000
metrics
Assuming 4 containers per host
Operational Complexity: Velocity
So what does that mean for
monitoring and management?
Monitoring Needs and Pains
• Avoid Static config files tracking dynamic infrastructure.
Monitoring Needs and Pains
• Avoid Static config files tracking dynamic infrastructure.
• Avoid a host centric view. Focus on service level.
Monitoring Needs and Pains: Host Centric vs Service
Centric
Monitoring Needs and Pains
• Avoid Static config files tracking dynamic infrastructure.
• Avoid a host centric view. Focus on service level.
• Use tags, labels, etc on your hosts and metrics to form queries.
Monitoring Needs and Pains: Query Based Monitoring
“Show me rate of HTTP 500 responses from nginx”
“… in region us-east-1 across all availability zones”
“… running my app version 2….”
• Use tags, labels, etc on your hosts and metrics to form queries.
• Pull in labels from your infrastructure whether EC2, Docker or your
scheduler.
• Ask questions that will ring true regardless of your scale that day.
Monitoring Needs and Pains
• Avoid Static config files tracking dynamic infrastructure.
• Avoid a host centric view. Focus on service level.
• Use tags, labels, etc on your hosts and metrics to form queries.
• Know your underlying tech. In this case Docker and how to pull
metrics from it.
Collecting Docker Metrics
Collecting Docker Metrics: stats
• Continuous live stream of basic CPU, memory, & network metrics.!
• At least version 1.5.0 of Docker (released Feb 2015)!
!
• docker stats --no-stream $(docker ps -q)
Collecting Docker Metrics: stats api
• Stream of JSON, more detailed
Collecting Docker Metrics: Pseudo Files
• If you want to do it manually!
!
• CPU/Mem metrics!
• Access via sysfs in /sys/fs/cgroup or /cgroup!
• By default do not require root access!
• Network metrics!
• /proc/$PID/net/dev!
• Disk IO metrics!
• /proc/$PID/io
What to do with that?
Appendix A:
Monitoring 101 Crash Course
More at: http://goo.gl/t1Rgcg
Monitoring 101: Categorize Your Metrics
More at: http://goo.gl/t1Rgcg
Monitoring 101: Focus on symptoms
More at: http://goo.gl/t1Rgcg
Recurse until you find root cause.
More at: http://goo.gl/t1Rgcg
Woof!

More Related Content

What's hot

What's hot (19)

Running & Monitoring Docker at Scale
Running & Monitoring Docker at ScaleRunning & Monitoring Docker at Scale
Running & Monitoring Docker at Scale
 
Just enough web ops for web developers
Just enough web ops for web developersJust enough web ops for web developers
Just enough web ops for web developers
 
Velocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ NetflixVelocity NYC 2016 - Containers @ Netflix
Velocity NYC 2016 - Containers @ Netflix
 
Datadog- Monitoring In Motion
Datadog- Monitoring In Motion Datadog- Monitoring In Motion
Datadog- Monitoring In Motion
 
Netflix Container Runtime - Titus - for Container Camp 2016
Netflix Container Runtime - Titus - for Container Camp 2016Netflix Container Runtime - Titus - for Container Camp 2016
Netflix Container Runtime - Titus - for Container Camp 2016
 
Netflix Cloud Architecture and Open Source
Netflix Cloud Architecture and Open SourceNetflix Cloud Architecture and Open Source
Netflix Cloud Architecture and Open Source
 
Application Monitoring using Datadog
Application Monitoring using DatadogApplication Monitoring using Datadog
Application Monitoring using Datadog
 
Diagnosing Problems in Production: Cassandra Summit 2014
Diagnosing Problems in Production: Cassandra Summit 2014Diagnosing Problems in Production: Cassandra Summit 2014
Diagnosing Problems in Production: Cassandra Summit 2014
 
Scalable and Reliable Logging at Pinterest
Scalable and Reliable Logging at PinterestScalable and Reliable Logging at Pinterest
Scalable and Reliable Logging at Pinterest
 
QCon NYC: Distributed systems in practice, in theory
QCon NYC: Distributed systems in practice, in theoryQCon NYC: Distributed systems in practice, in theory
QCon NYC: Distributed systems in practice, in theory
 
Distributed architecture in a cloud native microservices ecosystem
Distributed architecture in a cloud native microservices ecosystemDistributed architecture in a cloud native microservices ecosystem
Distributed architecture in a cloud native microservices ecosystem
 
Serverless Swift for Mobile Developers
Serverless Swift for Mobile DevelopersServerless Swift for Mobile Developers
Serverless Swift for Mobile Developers
 
Cassandra Day Denver 2014: Setting up a DataStax Enterprise Instance on Micro...
Cassandra Day Denver 2014: Setting up a DataStax Enterprise Instance on Micro...Cassandra Day Denver 2014: Setting up a DataStax Enterprise Instance on Micro...
Cassandra Day Denver 2014: Setting up a DataStax Enterprise Instance on Micro...
 
AgileTW Feat. DevOpsTW: 維運 Kubernetes 的兩三事
AgileTW Feat. DevOpsTW: 維運 Kubernetes 的兩三事AgileTW Feat. DevOpsTW: 維運 Kubernetes 的兩三事
AgileTW Feat. DevOpsTW: 維運 Kubernetes 的兩三事
 
The new Netflix API
The new Netflix APIThe new Netflix API
The new Netflix API
 
Python & Cassandra - Best Friends
Python & Cassandra - Best FriendsPython & Cassandra - Best Friends
Python & Cassandra - Best Friends
 
NetflixOSS Meetup S6E2 - Spinnaker, Kayenta
NetflixOSS Meetup S6E2 - Spinnaker, KayentaNetflixOSS Meetup S6E2 - Spinnaker, Kayenta
NetflixOSS Meetup S6E2 - Spinnaker, Kayenta
 
QConSF18 - Disenchantment: Netflix Titus, its Feisty Team, and Daemons
QConSF18 - Disenchantment: Netflix Titus, its Feisty Team, and DaemonsQConSF18 - Disenchantment: Netflix Titus, its Feisty Team, and Daemons
QConSF18 - Disenchantment: Netflix Titus, its Feisty Team, and Daemons
 
Arc305 how netflix leverages multiple regions to increase availability an i...
Arc305 how netflix leverages multiple regions to increase availability   an i...Arc305 how netflix leverages multiple regions to increase availability   an i...
Arc305 how netflix leverages multiple regions to increase availability an i...
 

Viewers also liked

Caching with Varnish
Caching with VarnishCaching with Varnish
Caching with Varnish
schoefmax
 
Chaos patterns - architecting for failure in distributed systems
Chaos patterns - architecting for failure in distributed systemsChaos patterns - architecting for failure in distributed systems
Chaos patterns - architecting for failure in distributed systems
Jos Boumans
 

Viewers also liked (20)

Datadog + VictorOps Webinar
Datadog + VictorOps WebinarDatadog + VictorOps Webinar
Datadog + VictorOps Webinar
 
Dataday Texas 2016 - Datadog
Dataday Texas 2016 - DatadogDataday Texas 2016 - Datadog
Dataday Texas 2016 - Datadog
 
Data Warehouse vs. Live Datamart - Comparison and Differences
Data Warehouse vs. Live Datamart - Comparison and DifferencesData Warehouse vs. Live Datamart - Comparison and Differences
Data Warehouse vs. Live Datamart - Comparison and Differences
 
Caching, Scaling, and What I've Learned from WordPress.com VIP
Caching, Scaling, and What I've Learned from WordPress.com VIPCaching, Scaling, and What I've Learned from WordPress.com VIP
Caching, Scaling, and What I've Learned from WordPress.com VIP
 
Matthew Kaufman Future Of Communication With Rtmfp Final Revised
Matthew Kaufman Future Of Communication With Rtmfp Final RevisedMatthew Kaufman Future Of Communication With Rtmfp Final Revised
Matthew Kaufman Future Of Communication With Rtmfp Final Revised
 
Keeping web servers safe and profitable with Imunify360
Keeping web servers safe and profitable with Imunify360Keeping web servers safe and profitable with Imunify360
Keeping web servers safe and profitable with Imunify360
 
Content marketing @ Server Density
Content marketing @ Server DensityContent marketing @ Server Density
Content marketing @ Server Density
 
How to optimize CloudLinux OS limits
How to optimize CloudLinux OS limitsHow to optimize CloudLinux OS limits
How to optimize CloudLinux OS limits
 
cache concepts and varnish-cache
cache concepts and varnish-cachecache concepts and varnish-cache
cache concepts and varnish-cache
 
how to mesure web performance metrics
how to mesure web performance metricshow to mesure web performance metrics
how to mesure web performance metrics
 
Caching with Varnish
Caching with VarnishCaching with Varnish
Caching with Varnish
 
Nginx monitoring with graphite
Nginx monitoring with graphiteNginx monitoring with graphite
Nginx monitoring with graphite
 
Varnish Cache and its usage in the real world!
Varnish Cache and its usage in the real world!Varnish Cache and its usage in the real world!
Varnish Cache and its usage in the real world!
 
How lve stats2 works for you and your customers
How lve stats2 works for you and your customersHow lve stats2 works for you and your customers
How lve stats2 works for you and your customers
 
LVE Manager's New UI
LVE Manager's New UILVE Manager's New UI
LVE Manager's New UI
 
Supercharging your PHP pages with mod_lsapi in CloudLinux OS
Supercharging your PHP pages with mod_lsapi in CloudLinux OSSupercharging your PHP pages with mod_lsapi in CloudLinux OS
Supercharging your PHP pages with mod_lsapi in CloudLinux OS
 
Redis vs Memcached
Redis vs MemcachedRedis vs Memcached
Redis vs Memcached
 
Monitoring NGINX (plus): key metrics and how-to
Monitoring NGINX (plus): key metrics and how-toMonitoring NGINX (plus): key metrics and how-to
Monitoring NGINX (plus): key metrics and how-to
 
Chaos patterns - architecting for failure in distributed systems
Chaos patterns - architecting for failure in distributed systemsChaos patterns - architecting for failure in distributed systems
Chaos patterns - architecting for failure in distributed systems
 
Single tenant software to multi-tenant SaaS using K8S
Single tenant software to multi-tenant SaaS using K8SSingle tenant software to multi-tenant SaaS using K8S
Single tenant software to multi-tenant SaaS using K8S
 

Similar to Docker Usage Patterns - Meetup Docker Paris - November, 10th 2015

Similar to Docker Usage Patterns - Meetup Docker Paris - November, 10th 2015 (20)

DockerCon EU 2015: Monitoring Docker
DockerCon EU 2015: Monitoring DockerDockerCon EU 2015: Monitoring Docker
DockerCon EU 2015: Monitoring Docker
 
(APP309) Running and Monitoring Docker Containers at Scale | AWS re:Invent 2014
(APP309) Running and Monitoring Docker Containers at Scale | AWS re:Invent 2014(APP309) Running and Monitoring Docker Containers at Scale | AWS re:Invent 2014
(APP309) Running and Monitoring Docker Containers at Scale | AWS re:Invent 2014
 
Monitoring in Motion: Monitoring Containers and Amazon ECS
Monitoring in Motion: Monitoring Containers and Amazon ECSMonitoring in Motion: Monitoring Containers and Amazon ECS
Monitoring in Motion: Monitoring Containers and Amazon ECS
 
DCSF19 Container Security: Theory & Practice at Netflix
DCSF19 Container Security: Theory & Practice at NetflixDCSF19 Container Security: Theory & Practice at Netflix
DCSF19 Container Security: Theory & Practice at Netflix
 
Containers 101
Containers 101Containers 101
Containers 101
 
Tampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday DockerTampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday Docker
 
You're monitoring Kubernetes Wrong
You're monitoring Kubernetes WrongYou're monitoring Kubernetes Wrong
You're monitoring Kubernetes Wrong
 
Webinar : Docker in Production
Webinar : Docker in ProductionWebinar : Docker in Production
Webinar : Docker in Production
 
Webinar Docker Tri Series
Webinar Docker Tri SeriesWebinar Docker Tri Series
Webinar Docker Tri Series
 
Docker at and with SignalFx
Docker at and with SignalFxDocker at and with SignalFx
Docker at and with SignalFx
 
Demystifying Containerization Principles for Data Scientists
Demystifying Containerization Principles for Data ScientistsDemystifying Containerization Principles for Data Scientists
Demystifying Containerization Principles for Data Scientists
 
What's New in Docker - February 2017
What's New in Docker - February 2017What's New in Docker - February 2017
What's New in Docker - February 2017
 
Docker {at,with} SignalFx
Docker {at,with} SignalFxDocker {at,with} SignalFx
Docker {at,with} SignalFx
 
Monitoring in 2017 - TIAD Camp Docker
Monitoring in 2017 - TIAD Camp DockerMonitoring in 2017 - TIAD Camp Docker
Monitoring in 2017 - TIAD Camp Docker
 
AWS re:Invent 2016: Netflix: Container Scheduling, Execution, and Integration...
AWS re:Invent 2016: Netflix: Container Scheduling, Execution, and Integration...AWS re:Invent 2016: Netflix: Container Scheduling, Execution, and Integration...
AWS re:Invent 2016: Netflix: Container Scheduling, Execution, and Integration...
 
Containers: DevOp Enablers of Technical Solutions
Containers: DevOp Enablers of Technical SolutionsContainers: DevOp Enablers of Technical Solutions
Containers: DevOp Enablers of Technical Solutions
 
10 tips for Cloud Native Security
10 tips for Cloud Native Security10 tips for Cloud Native Security
10 tips for Cloud Native Security
 
State of the Container Ecosystem
State of the Container EcosystemState of the Container Ecosystem
State of the Container Ecosystem
 
Docker, the Future of Distributed Applications | Docker Tour de France 2014
Docker, the Future of Distributed Applications | Docker Tour de France 2014Docker, the Future of Distributed Applications | Docker Tour de France 2014
Docker, the Future of Distributed Applications | Docker Tour de France 2014
 
Dockers and kubernetes
Dockers and kubernetesDockers and kubernetes
Dockers and kubernetes
 

More from Datadog

Fact based monitoring
Fact based monitoringFact based monitoring
Fact based monitoring
Datadog
 

More from Datadog (18)

What it Means to be a Next-Generation Managed Service Provider
What it Means to be a Next-Generation Managed Service ProviderWhat it Means to be a Next-Generation Managed Service Provider
What it Means to be a Next-Generation Managed Service Provider
 
PyData NYC 2015 - Automatically Detecting Outliers with Datadog
PyData NYC 2015 - Automatically Detecting Outliers with Datadog PyData NYC 2015 - Automatically Detecting Outliers with Datadog
PyData NYC 2015 - Automatically Detecting Outliers with Datadog
 
Monitoring Docker containers - Docker NYC Feb 2015
Monitoring Docker containers - Docker NYC Feb 2015Monitoring Docker containers - Docker NYC Feb 2015
Monitoring Docker containers - Docker NYC Feb 2015
 
Treating Infrastructure as Garbage
Treating Infrastructure as GarbageTreating Infrastructure as Garbage
Treating Infrastructure as Garbage
 
Big (IT) data
Big (IT) dataBig (IT) data
Big (IT) data
 
Deep dive into Nagios analytics
Deep dive into Nagios analyticsDeep dive into Nagios analytics
Deep dive into Nagios analytics
 
Customer Ops: DevOps <3 customer support
Customer Ops: DevOps <3 customer supportCustomer Ops: DevOps <3 customer support
Customer Ops: DevOps <3 customer support
 
I <3 graphs in 20 slides
I <3 graphs in 20 slidesI <3 graphs in 20 slides
I <3 graphs in 20 slides
 
Effective monitoring with StatsD
Effective monitoring with StatsDEffective monitoring with StatsD
Effective monitoring with StatsD
 
Alerting: more signal, less noise, less pain
Alerting: more signal, less noise, less painAlerting: more signal, less noise, less pain
Alerting: more signal, less noise, less pain
 
Fact based monitoring
Fact based monitoringFact based monitoring
Fact based monitoring
 
Fact-Based Monitoring
Fact-Based MonitoringFact-Based Monitoring
Fact-Based Monitoring
 
What’s in this Cookbook? - Mike Fiedler
What’s in this Cookbook? - Mike FiedlerWhat’s in this Cookbook? - Mike Fiedler
What’s in this Cookbook? - Mike Fiedler
 
I Love Graphs - Alexis Lê-Quôc
I Love Graphs - Alexis Lê-QuôcI Love Graphs - Alexis Lê-Quôc
I Love Graphs - Alexis Lê-Quôc
 
Why Puppet Sucks - Rob Terhaar
Why Puppet Sucks - Rob TerhaarWhy Puppet Sucks - Rob Terhaar
Why Puppet Sucks - Rob Terhaar
 
Welcome to a Computing Revolution - Alex Lesser
Welcome to a Computing Revolution - Alex LesserWelcome to a Computing Revolution - Alex Lesser
Welcome to a Computing Revolution - Alex Lesser
 
Cosa Nostra - Tom Santero
Cosa Nostra - Tom SanteroCosa Nostra - Tom Santero
Cosa Nostra - Tom Santero
 
Bulk Exporting from Cassandra - Carlo Cabanilla
Bulk Exporting from Cassandra - Carlo CabanillaBulk Exporting from Cassandra - Carlo Cabanilla
Bulk Exporting from Cassandra - Carlo Cabanilla
 

Recently uploaded

introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 

Recently uploaded (20)

MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 

Docker Usage Patterns - Meetup Docker Paris - November, 10th 2015

  • 1. Docker Usage Patterns No Hype, Just Data Docker Meetup Paris
 Nov 10, 2015 Benjamin Fernandes Software Engineer — Datadog @LotharSee

  • 2. About Me • MS, CS degree from Ecole Centrale Paris
 Former chairman at VIA Centrale Réseaux
 • Joined Datadog 3 years ago
 • Worked on Datadog’s integration with Docker and its ecosystem Benjamin Fernandes
 Software Engineer Datadog @LotharSee
  • 3. Quick Overview of Datadog Datadog gathers performance data from all your application and infrastructure components. • Monitoring for modern applications 1. Dynamic Infrastructure 2. Containers (Docker, ECS, Mesos, k8s, and more…) 3. Microservices • Time series storage of metrics and events • Trending, alerting and anomaly detection ! • We’re hiring! (New York, Paris, Remote)
  • 4. Monitor Everything Datadog gathers performance data from all your application components.
  • 5. Why so much Docker?
  • 7. Who is running Docker today? Docker Adoption
  • 8. What about in production? Docker Adoption
  • 9. Adopter: the average number of containers running during the month was at least 50% the number of distinct hosts run, or there were at least as many distinct containers as distinct hosts run during the month. Dabbler: used Docker during the month, but did not reach the “adopter” threshold. Abandoner: a currently active company that used Docker in the past, but hasn't used it at all in the last month. Study from 7000 organizations. Docker Adoption
  • 10. Turns out you aren’t alone! Docker Adoption Source: http://dtdg.co/dckr-adopt
  • 11. Fact 1: Docker Adoption Up 5x in 1 Year
  • 12. Docker Adoption Growth We’ve see 5x increase of Docker adoption over the last year.
  • 13. Fact 2: Docker now runs on 6% of hosts we monitor
  • 14.
  • 15. Fact 3: Larger Companies Are the Early Adopters!
  • 16.
  • 17. Fact 4: 2/3 of Companies That Try Docker Adopt It
  • 18.
  • 19. Fact 5: Users 3x the Number of Containers They Use in 5 Months
  • 20.
  • 21. Fact 6: Most Widely Used Images Are Registry, NGINX, and Redis
  • 22.
  • 23. Fact 7: Docker Hosts Often Run Four Containers at a Time
  • 24. Fact 8: VMs Live 4x Longer Than Containers
  • 25.
  • 26. Bonus fact. Thanks The Onion.
  • 27.
  • 28. Operational Complexity • Average containers per host: N (N=4, 10/2015)! • N-times as many “hosts” to manage! • Affects! • provisioning: prep’ing & building containers! • configuration: passing config to containers! • orchestration: deciding where/when containers run! • monitoring: making sure containers run properly
  • 30. Operational Complexity: Scale 160 metrics per host 640 metrics per host Assuming 4 containers per host
  • 33. So what does that mean for monitoring and management?
  • 34.
  • 35. Monitoring Needs and Pains • Avoid Static config files tracking dynamic infrastructure.
  • 36. Monitoring Needs and Pains • Avoid Static config files tracking dynamic infrastructure. • Avoid a host centric view. Focus on service level.
  • 37. Monitoring Needs and Pains: Host Centric vs Service Centric
  • 38. Monitoring Needs and Pains • Avoid Static config files tracking dynamic infrastructure. • Avoid a host centric view. Focus on service level. • Use tags, labels, etc on your hosts and metrics to form queries.
  • 39. Monitoring Needs and Pains: Query Based Monitoring “Show me rate of HTTP 500 responses from nginx” “… in region us-east-1 across all availability zones” “… running my app version 2….” • Use tags, labels, etc on your hosts and metrics to form queries. • Pull in labels from your infrastructure whether EC2, Docker or your scheduler. • Ask questions that will ring true regardless of your scale that day.
  • 40. Monitoring Needs and Pains • Avoid Static config files tracking dynamic infrastructure. • Avoid a host centric view. Focus on service level. • Use tags, labels, etc on your hosts and metrics to form queries. • Know your underlying tech. In this case Docker and how to pull metrics from it.
  • 42. Collecting Docker Metrics: stats • Continuous live stream of basic CPU, memory, & network metrics.! • At least version 1.5.0 of Docker (released Feb 2015)! ! • docker stats --no-stream $(docker ps -q)
  • 43. Collecting Docker Metrics: stats api • Stream of JSON, more detailed
  • 44. Collecting Docker Metrics: Pseudo Files • If you want to do it manually! ! • CPU/Mem metrics! • Access via sysfs in /sys/fs/cgroup or /cgroup! • By default do not require root access! • Network metrics! • /proc/$PID/net/dev! • Disk IO metrics! • /proc/$PID/io
  • 45.
  • 46. What to do with that?
  • 47. Appendix A: Monitoring 101 Crash Course More at: http://goo.gl/t1Rgcg
  • 48. Monitoring 101: Categorize Your Metrics More at: http://goo.gl/t1Rgcg
  • 49. Monitoring 101: Focus on symptoms More at: http://goo.gl/t1Rgcg
  • 50. Recurse until you find root cause. More at: http://goo.gl/t1Rgcg
  • 51. Woof!