Brian Christner
21 September 2016
Agenda
• Introduction
• Monitoring Overview
• Monitoring Components
• Demo
2
Brian Christner
Brian.Christner@swisscom.com / @idomyowntricks
> Swisscom Cloud Architect
> Docker Captain
> Background in Containers, Cloud, & Engineering
About me
Swisscom Developer Portal
Home for innovators and passionate developers
developer.swisscom.com
@Swisscom_Dev
Monitoring Overview
Monitoring & Docker Swarm Overview
Did someone say
Monitoring?
Monitoring Best Practices
• Label your Containers (key value pair)
• --label environment="production"
• Set Resource Limits
• Don’t overlert yourself
Long vs Short Lived Containers
Long Lived Short Lived
Monitoring Components
What were building
https://github.com/vegasbrianc/prometheus
13
https://github.com/google/cadvisor
https://hub.docker.com/r/google/cadvisor
(Container Advisor)
Prometheus Node Exporter
https://github.com/r/prom/node-exporter
• Machine Metrics
• Pluggable Metrics
Prometheus Integrations
Official 3rd Party Exporters
• Blackbox
• CollectD
• Consul
• Graphite
• HAProxy
• InfluxDB
• JMX
• MEMcached
• Mesos
• MySQL
• SNMP
• StatsD
Official Client Libraries
• GO
• Java or Scala
• Python
• Ruby
Un-Official Client Libraries
• Bash
• Lisp
• Elixr
• Erlang
• Haskell
• Nua (NGINX)
• .NET / C#
• Node.js
• PHP
Directly Instrumented Software
• cAdvisor
• Node Ecporter
• Doorman
• Etcd
• Kubernetes-Mesos
• Kubernetes
• RobustIRC
• SkyDNS
• Weave Flux
MacBook Swarm
Internal Network Routing
Prometheus
MGR
Node01
cAdvisor My App
cAdvisor My App
Node02
cAdvisor My App
Grafana
Alert Manager
Promtheus Stack
Compose File
Let’s have a look:
DEMO
Great Docker Resource –
http://veggiemonk.github.io/awesome-docker/
My Docker Projects - https://github.com/vegasbrianc
Docker Resources
Questions?

Monitoring mayhem - Using Prometheus