20
Monitoring Mayhem Brian Christner 21 September 2016

Monitoring mayhem - Using Prometheus

Embed Size (px)

Citation preview

Page 1: Monitoring mayhem - Using Prometheus

Monitoring Mayhem

Brian Christner21 September 2016

Page 2: Monitoring mayhem - Using Prometheus

Agenda

• Introduction• Monitoring Overview• Monitoring Components• Demo

2

Page 3: Monitoring mayhem - Using Prometheus

Brian [email protected] / @idomyowntricks

> Swisscom Cloud Architect

> Docker Captain

> Background in Containers, Cloud, & Engineering

About me

Page 4: Monitoring mayhem - Using Prometheus

Swisscom Developer Portal Home for innovators and passionate developers

developer.swisscom.com

@Swisscom_Dev

Public Cloud

Offering

Page 5: Monitoring mayhem - Using Prometheus

Monitoring Overview

Page 6: Monitoring mayhem - Using Prometheus

Monitoring & Docker Swarm Overview

Did someone say Monitoring?

Page 7: Monitoring mayhem - Using Prometheus
Page 8: Monitoring mayhem - Using Prometheus

Monitoring Best Practices

• Label your Containers (key value pair)• --label environment="production"

• Set Resource Limits

• Don’t overlert yourself

Page 9: Monitoring mayhem - Using Prometheus

Long vs Short Lived ContainersLong Lived Short Lived

Page 10: Monitoring mayhem - Using Prometheus

Monitoring Components

Page 11: Monitoring mayhem - Using Prometheus

What were building

https://github.com/vegasbrianc/prometheus

Page 12: Monitoring mayhem - Using Prometheus
Page 13: Monitoring mayhem - Using Prometheus

13

https://github.com/google/cadvisorhttps://hub.docker.com/r/google/cadvisor

(Container Advisor)

Page 14: Monitoring mayhem - Using Prometheus

Prometheus Node Exporter

https://github.com/r/prom/node-exporter

• Machine Metrics

• Pluggable Metrics

Page 15: Monitoring mayhem - Using Prometheus

Prometheus IntegrationsOfficial 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

Page 16: Monitoring mayhem - Using Prometheus

MacBook Swarm

Internal Network Routing

Prometheus

MGR

Node01

cAdvisor My App

cAdvisor My App

Node02

cAdvisor My App

Grafana

Alert Manager

Promtheus Stack

Page 17: Monitoring mayhem - Using Prometheus

Compose File

Page 18: Monitoring mayhem - Using Prometheus

Let’s have a look: DEMO

Page 19: Monitoring mayhem - Using Prometheus

Great Docker Resource – http://veggiemonk.github.io/awesome-docker/

My Docker Projects - https://github.com/vegasbrianc

Docker Resources

Page 20: Monitoring mayhem - Using Prometheus

Questions?