Im #Neuland gibt es noch heute stark in die Jahre gekommene Host- und Service-Monitoring-Lösungen, die zu den unliebsamen Langzeitbaustellen vieler Teams und Unternehmen gehören. Wer kennt es nicht, dass regelmäßige „False-Positive“-Alarme sich in Form von E-Mails oder SMS lästig bekannt machen, dass Webinterfaces schnell an ihre Grenzen stoßen, dass komplexe und benutzerfreundliche Graphen generiert werden sollen oder dass das Monitoring-Konstrukt nicht mit der großen Zahl an hippen neuen Docker-basierten Services/Checks zurechtkommt. Ganz zu schweigen von den lückenhaften oder fehlenden Programmierschnittstellen vieler Monitoring-Monolithen. In diesem Vortrag möchten wir euch eine auf Prometheus und Kubernetes basierende Musterlösung vorstellen, die eine Webapplikation über verschiedene Metriken hinweg überwacht und das DevOps-Betriebsteam zum richtigen Zeitpunkt auf konkrete Probleme aufmerksam macht.
Event: DevOpsCon, 06.12.2016
Speaker: Christoph Petrausch, inovex GmbH
Mehr Tech-Vorträge: https://www.inovex.de/de/content-pool/vortraege/
3. › Orchestrator für Container
› Cluster System
› Unabhängig von der Container Implementierung
› Verschiedene SDN & SDS Integrationen
3
Kubernetes
… was ist das?
4. › Kubernetes Worker
› Startet Pods
› Verdrahtet Pods mit SDN und SDS
4
Kubernetes
… Kubelet
5. › Fasst ein oder mehrere Container zusammen
› Kleinste schedulbare Einheit
› Hat eigenen Network Namespace
› Kann Volumes mounten
5
Kubernetes
… Pods
11. › Alarm für: 80% aller HTTP Requests sind 503er
11
Klassisches Monitoring
… Probleme
12. › 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
16. 16
Prometheus
… Metrik
# HELP Total Number of HTTP Requests
# TYPE http_count counter
http_count
{
}
731321
Dokumentation
17. 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
18. › Angelehnt an SQL
› Aggregationen über Labels
› Mathematische Funktionen
› Range und Offset Selektoren
18
Prometheus
… PromQL
28. › Konfiguration über die Service Discovery macht das
Monitoring genauso flexibel wie die Umgebung
› Prometheus wurde für dynamische Umgebungen
geschrieben
28
Fazit
30. 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