SlideShare ist ein Scribd-Unternehmen logo
Prometheus Monitoring
For Fun and Profit
Christoph Petrausch München, 06.12.16
Christoph Petrausch
Linux Systems Engineer
Automatisierung, Monitoring, Go
2
› Orchestrator für Container
› Cluster System
› Unabhängig von der Container Implementierung
› Verschiedene SDN & SDS Integrationen
3
Kubernetes
… was ist das?
› Kubernetes Worker
› Startet Pods
› Verdrahtet Pods mit SDN und SDS
4
Kubernetes
… Kubelet
› Fasst ein oder mehrere Container zusammen
› Kleinste schedulbare Einheit
› Hat eigenen Network Namespace
› Kann Volumes mounten
5
Kubernetes
… Pods
› Managed mehrere Pods
› Rollout
› Autoscale
6
Kubernetes
… Deployment
› Beliebige Key Value Paare
› Für alle Ressourcen verfügbar
7
Kubernetes
… Labels
› vIP / Loadbalancer
› DNS
› Primär cluster-intern
› Endpoints per API
8
Kubernetes
… Service
› Konfiguration auf dem Master
› Monitoring-Agents um Check-Scripte erweiterbar
› Integrierte Dashboards
9
Klassisches Monitoring
…Icinga/Nagios/CheckMK/Zabbix
1. Hostgruppe definieren
2. Checks definieren
3. Alarme definieren
10
Klassisches Monitoring
… neuer Service
› Alarm für: 80% aller HTTP Requests sind 503er
11
Klassisches Monitoring
… Probleme
› Container/VMs sind Wegwerfprodukt
› Container haben keine festen Hostnamen oder IPs
› Ein Monitoring-Agent pro Container?
› Ein Monitoring-Agent pro Kubelet?
12
Klassisches Monitoring
… Probleme
13
Prometheus
Application
OS
Network
Node Exporter
SNMP Exporter
Prometheus
› Static File
› Kubernetes API
› Consul
› DNS (A / AAAA / SRV)
14
Prometheus
… wie findet es Exporter?
15
Prometheus
… Metrik
http_count
{
}
731321
Metrikname
Wert
16
Prometheus
… Metrik
# HELP Total Number of HTTP Requests
# TYPE http_count counter
http_count
{
}
731321
Dokumentation
17
Prometheus
… Metrik
# HELP Total Number of HTTP Requests
# TYPE http_count counter
http_count
{
handler="/ui/static",
instance="10.254.65.34:9100",
job="physical_hosts",
rack="fra01/v1"
}
731321
Label
› Angelehnt an SQL
› Aggregationen über Labels
› Mathematische Funktionen
› Range und Offset Selektoren
18
Prometheus
… PromQL
19
Prometheus
… PromQL Aggregationen
Query:
sum by (rack) ( http_count{handler="/ui/static"} )
Beispiel:
http_count{handler="/ui/static",rack="a", i="a"} 5
http_count{handler="/ui/static",rack="a", i="y"} 5
http_count{handler="/ui/static",rack="b", i="z"} 5
Resultat: {rack="a"} =10, {rack="b"} = 5
20
Prometheus
… PromQL Funktionen
rate( http_count{handler="/ui/static"} [1m] )
HTTP Requests pro Sekunde
für die URI /ui/static
21
Prometheus
… PromQL Offset Selektoren
http_count – ( http_count offset 5m)
Differenz der HTTP Requests
zwischen jetzt und vor 5 Minuten
› Alarme
› Dashboards
› Third Party Tools
22
Prometheus
… PromQL wofür?
ALERT rate(http_count[1m]) < 1
FOR 5m
LABELS {level="warn“, component= "web"}
ANNOTATIONS {summary="HTTP down {{$labels.instance}}"}
23
Prometheus
… PromQL Alarm
› Unix Philosophie
› Grafana
› AlertManager
24
Prometheus
… Dashboards und Alarm Management
› Langzeitspeicherung
› Datenreplikation
25
Prometheus
… welche Probleme löst es nicht?
› Libraries für viele Sprachen
› OS, MySQL, Memcached, RabbitMQ, IPMI, SNMP,
Apache, Github, …
26
Prometheus
… Exporter
Demo Time
27
› Konfiguration über die Service Discovery macht das
Monitoring genauso flexibel wie die Umgebung
› Prometheus wurde für dynamische Umgebungen
geschrieben
28
Fazit
Vielen Dank
Christoph Petrausch
Linux Systems Engineer
Slides & Code:
github.com/hikhvar/prometheus-
kubernetes-demo
christoph.petrausch@inovex.de
jobs@inovex.de
www.inovex.de/jobs
+49 721 619 021 50
Wir suchen Verstärkung in den Bereichen
• Digital Consulting
• Web Frontend & Backend
• Replatforming
• Apps & Smart Devices
• Big Data
• Data Science
• Search
• Business Intelligence
• DevOps
• Cloud
• Operations
Durchstarten
bei inovex

Weitere ähnliche Inhalte

PDF
Moderne App-Entwicklung am Beispiel waipu.tv
PDF
SysDig Metriken zentralisieren
PDF
Stackstorm – Event driven Automation
PDF
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...
PDF
Devops
PDF
Infrastructure as code: Cloud-Umgebungen mit Terraform verwalten
PPT
PPTX
Lasttest auf Zuruf CloudTest on Demand webinar presentation
Moderne App-Entwicklung am Beispiel waipu.tv
SysDig Metriken zentralisieren
Stackstorm – Event driven Automation
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...
Devops
Infrastructure as code: Cloud-Umgebungen mit Terraform verwalten
Lasttest auf Zuruf CloudTest on Demand webinar presentation

Was ist angesagt? (19)

PDF
Reaktive Programmierung in verständlichen Worten
PPTX
EventDB - Hamburg 2013
PPT
Einführung in Laravel und GulpJS
PDF
OSMC 2018 | Netzwerkmonitoring mit Prometheus by Matthias Gallinger
PPTX
check_sap_health
PDF
oVirt 3.5 - Einführung und Evaluierungsergebnisse
PDF
Elasticsearch und Big Data - Webinar vom 23.07.2014
PDF
Slides
PPTX
Einführung in NoSQL-Datenbanken
PDF
Reaktive Programmierung in verständlichen Worten
PDF
Reaktive Programmierung in verständlichen Worten
PDF
Reaktive Programmierung in verständlichen Worten
PDF
Einführung in Elasticsearch - August 2014
PDF
Eventzentrierte Architekturen
PDF
JavaScript Performance
PDF
Hands-on Hystrix - Best Practices und Stolperfallen
PDF
zmon.io – Not yet another Prometheus Talk
PDF
Java in the Cloud - am Beispiel der Google App Engineg
PPTX
JTL-Connector | Entwicklung neuer Schnittstellen und Anbindung weiterer Platt...
Reaktive Programmierung in verständlichen Worten
EventDB - Hamburg 2013
Einführung in Laravel und GulpJS
OSMC 2018 | Netzwerkmonitoring mit Prometheus by Matthias Gallinger
check_sap_health
oVirt 3.5 - Einführung und Evaluierungsergebnisse
Elasticsearch und Big Data - Webinar vom 23.07.2014
Slides
Einführung in NoSQL-Datenbanken
Reaktive Programmierung in verständlichen Worten
Reaktive Programmierung in verständlichen Worten
Reaktive Programmierung in verständlichen Worten
Einführung in Elasticsearch - August 2014
Eventzentrierte Architekturen
JavaScript Performance
Hands-on Hystrix - Best Practices und Stolperfallen
zmon.io – Not yet another Prometheus Talk
Java in the Cloud - am Beispiel der Google App Engineg
JTL-Connector | Entwicklung neuer Schnittstellen und Anbindung weiterer Platt...
Anzeige

Andere mochten auch (20)

PDF
Gitlab meets Kubernetes
PDF
Datenprodukte für Deutschlands größten Fahrzeugmarkt
PDF
Advanced Cojure Microservices
PDF
Erfolgsfaktoren von Datenprodukten
PDF
Automated Application Management with SaltStack
PDF
Haltet den (Daten-) Dieb! Echtzeiterkennung von Anomalien in Computernetzwerk...
PDF
Der Cloud Native Stack in a Nutshell. #CloudExpoEurope
PDF
Bacula Workshop - Teil 2
PDF
Análisis de series temporales r
PPTX
Cirrus Insight + Nuvem Consulting: Create a Winning Salesforce Roadmap
PDF
Kubernetes: Wie Chefkoch.de mit Containern arbeitet
PDF
Docker orchestration with Kubernetes
PPTX
Kubernetes Workshop
PDF
Kubernetes Frankfurt
PDF
OpenStack und Containers
PDF
Die dunkle Seite der Microservices - und wie du sie besiegen kannst
PDF
Continous Deployment - Schneller entwickeln
PPTX
Docker meets Kubernetes
PDF
Dockerized Microservices
PDF
Microservices under the microscope
Gitlab meets Kubernetes
Datenprodukte für Deutschlands größten Fahrzeugmarkt
Advanced Cojure Microservices
Erfolgsfaktoren von Datenprodukten
Automated Application Management with SaltStack
Haltet den (Daten-) Dieb! Echtzeiterkennung von Anomalien in Computernetzwerk...
Der Cloud Native Stack in a Nutshell. #CloudExpoEurope
Bacula Workshop - Teil 2
Análisis de series temporales r
Cirrus Insight + Nuvem Consulting: Create a Winning Salesforce Roadmap
Kubernetes: Wie Chefkoch.de mit Containern arbeitet
Docker orchestration with Kubernetes
Kubernetes Workshop
Kubernetes Frankfurt
OpenStack und Containers
Die dunkle Seite der Microservices - und wie du sie besiegen kannst
Continous Deployment - Schneller entwickeln
Docker meets Kubernetes
Dockerized Microservices
Microservices under the microscope
Anzeige

Mehr von inovex GmbH (20)

PDF
lldb – Debugger auf Abwegen
PDF
Are you sure about that?! Uncertainty Quantification in AI
PDF
Why natural language is next step in the AI evolution
PDF
WWDC 2019 Recap
PDF
Network Policies
PDF
Interpretable Machine Learning
PDF
Jenkins X – CI/CD in wolkigen Umgebungen
PDF
AI auf Edge-Geraeten
PDF
Prometheus on Kubernetes
PDF
Deep Learning for Recommender Systems
PDF
Azure IoT Edge
PDF
Representation Learning von Zeitreihen
PDF
Talk to me – Chatbots und digitale Assistenten
PDF
Künstlich intelligent?
PDF
Dev + Ops = Go
PDF
Das Android Open Source Project
PDF
Machine Learning Interpretability
PDF
Performance evaluation of GANs in a semisupervised OCR use case
PDF
People & Products – Lessons learned from the daily IT madness
PDF
Infrastructure as (real) Code – Manage your K8s resources with Pulumi
lldb – Debugger auf Abwegen
Are you sure about that?! Uncertainty Quantification in AI
Why natural language is next step in the AI evolution
WWDC 2019 Recap
Network Policies
Interpretable Machine Learning
Jenkins X – CI/CD in wolkigen Umgebungen
AI auf Edge-Geraeten
Prometheus on Kubernetes
Deep Learning for Recommender Systems
Azure IoT Edge
Representation Learning von Zeitreihen
Talk to me – Chatbots und digitale Assistenten
Künstlich intelligent?
Dev + Ops = Go
Das Android Open Source Project
Machine Learning Interpretability
Performance evaluation of GANs in a semisupervised OCR use case
People & Products – Lessons learned from the daily IT madness
Infrastructure as (real) Code – Manage your K8s resources with Pulumi

Prometheus Monitoring