SlideShare una empresa de Scribd logo
1 de 12
Descargar para leer sin conexión
SysDig Metriken zentralisieren
Brownbag
Alexander Köhler Karlsruhe, 18.11.16
2
Sysdig
http://www.sysdig.org/
• Sysdig = “strace + tcpdump + htop + iftop + lsof + transaction tracing +
awesome sauce“
• Lokal auf einem System: csysdig
• Es gibt Repos für viele Linux-Major-Distributionen:
• Jeweils ab Rhel6 ff, Centos6 ff., Debian6 ff., Ubuntu 10.04 ff
3
Sysdig
http://www.sysdig.org/
• Auf mehren Systemen?
A	fake	it is :-)
4
Sysdig
https://sysdig.com/
• Oder doch die On-Premise/Cloud Lösung?
• Cloud: 20 $ Host/Monat (bei Jahresvertrag) oder 25 $ Host/Monat (Monatlicher
Abrechnung)
• 1	Host	darf	maximal	20	Container	hosten
• On-Premise: Preise nur auf Anfrage.
5
Sysdig
• Mit Sysdig mehrere Systeme analysieren? Also doch mit einem neuen Rudel
Monitore?
6
Sysdig Events zentralisieren
Idee: Sysdig Events per ELK auswertbar machen
7
Basics
Demo
> sysdig # Infinite scroll
> sysdig –n 10 # Limitierung auf 10 Events
> sysdig -n 10 "not (proc.name = sysdig)" # Capture Filter
> sysdig -n 10 "not (proc.name = sysdig) and not (proc.name = java)“ # Capture Filter
kombiniert
8
Basics
Sysdig-Events mit Logstash parsen
# Über das STDIN Input Logstash Plugin
> sysdig -n 10 | /opt/logstash/bin/logstash -f /etc/logstash/sysdig-logstash-plain.conf
grok { match => { 'message' => "^%{NUMBER:num:int} %{NUMBER:time:float} %{INT:cpu:int} %{NOTSPACE:procname}
%{NOTSPACE:tid} (?<direction>[<>]) %{WORD:event} %{DATA:args}$"} }
# Geht das Aufbereiten der Events noch besser?
> sysdig -n 10 –j "not (proc.name = sysdig)“ # Output Format JSON
> sysdig -l # Verfügbare Felder
> sysdig -p '{"proc_name":"%proc.name"}‘ # Eigenes JSON-Output Format
9
Basics
Sysdig-Events mit Logstash parsen
# Das ganze Bild:
input {
stdin { codec => 'json_lines' }
}
output {
stdout { codec => 'json_lines' }
elasticsearch {
hosts => [ ’elasticsearch:9200' ]
index => "sysdig-%{+YYYY.MM.dd}"
}
}
> sysdig -p '{"proc_name":"%proc.name", "evt_category": "%evt.category",
"evt_time":"%evt.time","evt_type":"%evt.type","evt_cpu":"%evt.cpu", "evt_args": "%evt.args"}'
"not(proc.name = sysdig) and not(proc.name = java)" | /opt/logstash/bin/logstash -f
/etc/logstash/sysdig-logstash-json.conf
10
Summary
• Vorgehen einfach
• ELK haben
• Voraussetzung Sysdig + Logstash (+ JRE) installieren
• Metriken erfassen
• Nachteil:
• sysdig ist gesprächig und Logstash (Java) braucht unter Last viele Ressourcen
• Ohne Filter kommen viele Events: 270.000 in 10 Minuten auf einem idlenden System
• Mögliche Optimierungen
• Einsatz geeigneter Filter für Sysdig
• Asynchrone Verarbeitung der Events:
sysdig > Cache > Logstash
• On-Demand Aktivierung für Deep-Dive Analysen
11
More fancy
Kleine Beispiel Auswertungen für Sysdig
# Und was ist mit Container?
> sysdig -c lscontainers
> sysdig -pc -A -c echo_fds "fd.ip=172.17.0.2” # more fancy
--> https://sysdig.com/blog/let-light-sysdig-adds-container-visibility/
# User Tracking
> sysdig -pc -c spy_users
Vielen Dank
Alexander Köhler
DevOps Engineer Linux
inovex GmbH
Ludwig-Erhard-Allee 6
76131 Karlsruhe
alexander.koehler@inovex.de
0173 3181 034

Más contenido relacionado

La actualidad más candente

Einführung in Elasticsearch - August 2014
Einführung in Elasticsearch - August 2014Einführung in Elasticsearch - August 2014
Einführung in Elasticsearch - August 2014inovex GmbH
 
EventDB - Hamburg 2013
EventDB - Hamburg 2013EventDB - Hamburg 2013
EventDB - Hamburg 2013NETWAYS
 
oVirt 3.5 - Einführung und Evaluierungsergebnisse
oVirt 3.5 - Einführung und EvaluierungsergebnisseoVirt 3.5 - Einführung und Evaluierungsergebnisse
oVirt 3.5 - Einführung und Evaluierungsergebnisseinovex GmbH
 
Reaktive Programmierung in verständlichen Worten
Reaktive Programmierung in verständlichen WortenReaktive Programmierung in verständlichen Worten
Reaktive Programmierung in verständlichen WortenQAware GmbH
 
Skalierbare Anwendungen mit Google Go
Skalierbare Anwendungen mit Google GoSkalierbare Anwendungen mit Google Go
Skalierbare Anwendungen mit Google GoFrank Müller
 
PostgreSQL: Eigene Aggregate schreiben
PostgreSQL: Eigene Aggregate schreibenPostgreSQL: Eigene Aggregate schreiben
PostgreSQL: Eigene Aggregate schreibenHans-Jürgen Schönig
 
Docker Entwicklungsumgebung für TYPO3 mit xdebug
Docker Entwicklungsumgebung für TYPO3 mit xdebugDocker Entwicklungsumgebung für TYPO3 mit xdebug
Docker Entwicklungsumgebung für TYPO3 mit xdebugAlexander Bohndorf
 
Monitoring von SAP mit check_sap_health
Monitoring von SAP mit check_sap_healthMonitoring von SAP mit check_sap_health
Monitoring von SAP mit check_sap_healthGerhard Lausser
 
Reaktive Programmierung in verständlichen Worten
Reaktive Programmierung in verständlichen WortenReaktive Programmierung in verständlichen Worten
Reaktive Programmierung in verständlichen WortenQAware GmbH
 
Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln OPITZ CONSULTING Deutschland
 

La actualidad más candente (10)

Einführung in Elasticsearch - August 2014
Einführung in Elasticsearch - August 2014Einführung in Elasticsearch - August 2014
Einführung in Elasticsearch - August 2014
 
EventDB - Hamburg 2013
EventDB - Hamburg 2013EventDB - Hamburg 2013
EventDB - Hamburg 2013
 
oVirt 3.5 - Einführung und Evaluierungsergebnisse
oVirt 3.5 - Einführung und EvaluierungsergebnisseoVirt 3.5 - Einführung und Evaluierungsergebnisse
oVirt 3.5 - Einführung und Evaluierungsergebnisse
 
Reaktive Programmierung in verständlichen Worten
Reaktive Programmierung in verständlichen WortenReaktive Programmierung in verständlichen Worten
Reaktive Programmierung in verständlichen Worten
 
Skalierbare Anwendungen mit Google Go
Skalierbare Anwendungen mit Google GoSkalierbare Anwendungen mit Google Go
Skalierbare Anwendungen mit Google Go
 
PostgreSQL: Eigene Aggregate schreiben
PostgreSQL: Eigene Aggregate schreibenPostgreSQL: Eigene Aggregate schreiben
PostgreSQL: Eigene Aggregate schreiben
 
Docker Entwicklungsumgebung für TYPO3 mit xdebug
Docker Entwicklungsumgebung für TYPO3 mit xdebugDocker Entwicklungsumgebung für TYPO3 mit xdebug
Docker Entwicklungsumgebung für TYPO3 mit xdebug
 
Monitoring von SAP mit check_sap_health
Monitoring von SAP mit check_sap_healthMonitoring von SAP mit check_sap_health
Monitoring von SAP mit check_sap_health
 
Reaktive Programmierung in verständlichen Worten
Reaktive Programmierung in verständlichen WortenReaktive Programmierung in verständlichen Worten
Reaktive Programmierung in verständlichen Worten
 
Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln
 

Destacado

Datenprodukte für Deutschlands größten Fahrzeugmarkt
Datenprodukte für Deutschlands größten FahrzeugmarktDatenprodukte für Deutschlands größten Fahrzeugmarkt
Datenprodukte für Deutschlands größten Fahrzeugmarktinovex GmbH
 
Erfolgsfaktoren von Datenprodukten
Erfolgsfaktoren von DatenproduktenErfolgsfaktoren von Datenprodukten
Erfolgsfaktoren von Datenprodukteninovex GmbH
 
Gitlab meets Kubernetes
Gitlab meets KubernetesGitlab meets Kubernetes
Gitlab meets Kubernetesinovex GmbH
 
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...inovex GmbH
 
Automated Application Management with SaltStack
Automated Application Management with SaltStackAutomated Application Management with SaltStack
Automated Application Management with SaltStackinovex GmbH
 
Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...
Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...
Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...inovex GmbH
 
Arnold Bechtoldt, Inovex GmbH Linux systems engineer - Configuration Manageme...
Arnold Bechtoldt, Inovex GmbH Linux systems engineer - Configuration Manageme...Arnold Bechtoldt, Inovex GmbH Linux systems engineer - Configuration Manageme...
Arnold Bechtoldt, Inovex GmbH Linux systems engineer - Configuration Manageme...SaltStack
 
Configuration Management vs. Container Automation
Configuration Management vs. Container AutomationConfiguration Management vs. Container Automation
Configuration Management vs. Container Automationinovex GmbH
 
Die dunkle Seite der Microservices - und wie du sie besiegen kannst
Die dunkle Seite der Microservices - und wie du sie besiegen kannst Die dunkle Seite der Microservices - und wie du sie besiegen kannst
Die dunkle Seite der Microservices - und wie du sie besiegen kannst inovex GmbH
 
Continuous Integration for Fun and Profit
Continuous Integration for Fun and ProfitContinuous Integration for Fun and Profit
Continuous Integration for Fun and Profitinovex GmbH
 
Continous Deployment - Schneller entwickeln
Continous Deployment - Schneller entwickelnContinous Deployment - Schneller entwickeln
Continous Deployment - Schneller entwickelnMartin Seibert
 
Dockerized Microservices
Dockerized MicroservicesDockerized Microservices
Dockerized Microservicesinovex GmbH
 
Microservices under the microscope
Microservices under the microscopeMicroservices under the microscope
Microservices under the microscopeRoss Garrett
 
Microservices, geerdet
Microservices, geerdetMicroservices, geerdet
Microservices, geerdetinovex GmbH
 
Advanced Cojure Microservices
Advanced Cojure MicroservicesAdvanced Cojure Microservices
Advanced Cojure Microservicesinovex GmbH
 
Axway Introduction & Digital Business (by Jo Van Audenhove & Rogier van Boxtel)
Axway Introduction & Digital Business (by Jo Van Audenhove & Rogier van Boxtel)Axway Introduction & Digital Business (by Jo Van Audenhove & Rogier van Boxtel)
Axway Introduction & Digital Business (by Jo Van Audenhove & Rogier van Boxtel)ACA IT-Solutions
 
Intelligent infrastructure with SaltStack
Intelligent infrastructure with SaltStackIntelligent infrastructure with SaltStack
Intelligent infrastructure with SaltStackLove Nyberg
 
Test and Protect Your API
Test and Protect Your APITest and Protect Your API
Test and Protect Your APISmartBear
 
Stackstorm – Event driven Automation
Stackstorm – Event driven AutomationStackstorm – Event driven Automation
Stackstorm – Event driven Automationinovex GmbH
 

Destacado (20)

Datenprodukte für Deutschlands größten Fahrzeugmarkt
Datenprodukte für Deutschlands größten FahrzeugmarktDatenprodukte für Deutschlands größten Fahrzeugmarkt
Datenprodukte für Deutschlands größten Fahrzeugmarkt
 
Erfolgsfaktoren von Datenprodukten
Erfolgsfaktoren von DatenproduktenErfolgsfaktoren von Datenprodukten
Erfolgsfaktoren von Datenprodukten
 
Gitlab meets Kubernetes
Gitlab meets KubernetesGitlab meets Kubernetes
Gitlab meets Kubernetes
 
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...
Cloud Wars – what‘s the smartest data platform? Vergleich Microsoft Azure, Am...
 
Automated Application Management with SaltStack
Automated Application Management with SaltStackAutomated Application Management with SaltStack
Automated Application Management with SaltStack
 
Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...
Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...
Bootstrapping Forman with Vagrant - Setting up a local Provision & Deployment...
 
Arnold Bechtoldt, Inovex GmbH Linux systems engineer - Configuration Manageme...
Arnold Bechtoldt, Inovex GmbH Linux systems engineer - Configuration Manageme...Arnold Bechtoldt, Inovex GmbH Linux systems engineer - Configuration Manageme...
Arnold Bechtoldt, Inovex GmbH Linux systems engineer - Configuration Manageme...
 
Configuration Management vs. Container Automation
Configuration Management vs. Container AutomationConfiguration Management vs. Container Automation
Configuration Management vs. Container Automation
 
Die dunkle Seite der Microservices - und wie du sie besiegen kannst
Die dunkle Seite der Microservices - und wie du sie besiegen kannst Die dunkle Seite der Microservices - und wie du sie besiegen kannst
Die dunkle Seite der Microservices - und wie du sie besiegen kannst
 
Continuous Integration for Fun and Profit
Continuous Integration for Fun and ProfitContinuous Integration for Fun and Profit
Continuous Integration for Fun and Profit
 
Continous Deployment - Schneller entwickeln
Continous Deployment - Schneller entwickelnContinous Deployment - Schneller entwickeln
Continous Deployment - Schneller entwickeln
 
Dockerized Microservices
Dockerized MicroservicesDockerized Microservices
Dockerized Microservices
 
Microservices under the microscope
Microservices under the microscopeMicroservices under the microscope
Microservices under the microscope
 
Microservices, geerdet
Microservices, geerdetMicroservices, geerdet
Microservices, geerdet
 
Advanced Cojure Microservices
Advanced Cojure MicroservicesAdvanced Cojure Microservices
Advanced Cojure Microservices
 
Axway Introduction & Digital Business (by Jo Van Audenhove & Rogier van Boxtel)
Axway Introduction & Digital Business (by Jo Van Audenhove & Rogier van Boxtel)Axway Introduction & Digital Business (by Jo Van Audenhove & Rogier van Boxtel)
Axway Introduction & Digital Business (by Jo Van Audenhove & Rogier van Boxtel)
 
Intelligent infrastructure with SaltStack
Intelligent infrastructure with SaltStackIntelligent infrastructure with SaltStack
Intelligent infrastructure with SaltStack
 
Test and Protect Your API
Test and Protect Your APITest and Protect Your API
Test and Protect Your API
 
Stackstorm – Event driven Automation
Stackstorm – Event driven AutomationStackstorm – Event driven Automation
Stackstorm – Event driven Automation
 
From ci to cd
From ci to cdFrom ci to cd
From ci to cd
 

Similar a SysDig Metriken zentralisieren

zmon.io – Not yet another Prometheus Talk
zmon.io – Not yet another Prometheus Talkzmon.io – Not yet another Prometheus Talk
zmon.io – Not yet another Prometheus Talkinovex GmbH
 
Microservices mit Rust
Microservices mit RustMicroservices mit Rust
Microservices mit RustJens Siebert
 
Einführung in Elasticsearch
Einführung in ElasticsearchEinführung in Elasticsearch
Einführung in ElasticsearchFlorian Hopf
 
openstack Übersicht @GPN15
openstack Übersicht @GPN15openstack Übersicht @GPN15
openstack Übersicht @GPN15m1no
 
Back to Basics-Webinar 5: Einführung in das Aggregation-Framework
Back to Basics-Webinar 5: Einführung in das Aggregation-FrameworkBack to Basics-Webinar 5: Einführung in das Aggregation-Framework
Back to Basics-Webinar 5: Einführung in das Aggregation-FrameworkMongoDB
 
digitalSTROM Developer Day 2011: digitalSTROM-Server-Apps
digitalSTROM Developer Day 2011: digitalSTROM-Server-AppsdigitalSTROM Developer Day 2011: digitalSTROM-Server-Apps
digitalSTROM Developer Day 2011: digitalSTROM-Server-AppsdigitalSTROM.org
 
OSMC 2016: Open Monitoring Distribution 2016+ by Gerhard Laußer
OSMC 2016: Open Monitoring Distribution 2016+ by Gerhard Laußer   OSMC 2016: Open Monitoring Distribution 2016+ by Gerhard Laußer
OSMC 2016: Open Monitoring Distribution 2016+ by Gerhard Laußer NETWAYS
 
Daten natuerlich modellieren und verarbeiten mit Neo4j
Daten natuerlich modellieren und verarbeiten mit Neo4jDaten natuerlich modellieren und verarbeiten mit Neo4j
Daten natuerlich modellieren und verarbeiten mit Neo4jPatrick Baumgartner
 
Backend-Services mit Rust
Backend-Services mit RustBackend-Services mit Rust
Backend-Services mit RustJens Siebert
 
Dojo Und Notes
Dojo Und NotesDojo Und Notes
Dojo Und Notesdominion
 
Weltvermessen mit OpenDataCam - Wie ich einmal eine Viertelmillionen Autos ge...
Weltvermessen mit OpenDataCam - Wie ich einmal eine Viertelmillionen Autos ge...Weltvermessen mit OpenDataCam - Wie ich einmal eine Viertelmillionen Autos ge...
Weltvermessen mit OpenDataCam - Wie ich einmal eine Viertelmillionen Autos ge...Stephan Hochhaus
 
OSMC 2011 | Collectd in der großen weiten Welt - Anbindung des Datensammlers ...
OSMC 2011 | Collectd in der großen weiten Welt - Anbindung des Datensammlers ...OSMC 2011 | Collectd in der großen weiten Welt - Anbindung des Datensammlers ...
OSMC 2011 | Collectd in der großen weiten Welt - Anbindung des Datensammlers ...NETWAYS
 
Wieso Informatiker bei der Informationssicherheit scheitern
Wieso Informatiker bei der Informationssicherheit scheiternWieso Informatiker bei der Informationssicherheit scheitern
Wieso Informatiker bei der Informationssicherheit scheiternDigicomp Academy AG
 
GPU-Computing mit CUDA und OpenCL in der Praxis
GPU-Computing mit CUDA und OpenCL in der PraxisGPU-Computing mit CUDA und OpenCL in der Praxis
GPU-Computing mit CUDA und OpenCL in der PraxisJörn Dinkla
 

Similar a SysDig Metriken zentralisieren (20)

Node.js Security
Node.js SecurityNode.js Security
Node.js Security
 
zmon.io – Not yet another Prometheus Talk
zmon.io – Not yet another Prometheus Talkzmon.io – Not yet another Prometheus Talk
zmon.io – Not yet another Prometheus Talk
 
Microservices mit Rust
Microservices mit RustMicroservices mit Rust
Microservices mit Rust
 
Einführung in Elasticsearch
Einführung in ElasticsearchEinführung in Elasticsearch
Einführung in Elasticsearch
 
openstack Übersicht @GPN15
openstack Übersicht @GPN15openstack Übersicht @GPN15
openstack Übersicht @GPN15
 
Back to Basics-Webinar 5: Einführung in das Aggregation-Framework
Back to Basics-Webinar 5: Einführung in das Aggregation-FrameworkBack to Basics-Webinar 5: Einführung in das Aggregation-Framework
Back to Basics-Webinar 5: Einführung in das Aggregation-Framework
 
digitalSTROM Developer Day 2011: digitalSTROM-Server-Apps
digitalSTROM Developer Day 2011: digitalSTROM-Server-AppsdigitalSTROM Developer Day 2011: digitalSTROM-Server-Apps
digitalSTROM Developer Day 2011: digitalSTROM-Server-Apps
 
OSMC 2016: Open Monitoring Distribution 2016+ by Gerhard Laußer
OSMC 2016: Open Monitoring Distribution 2016+ by Gerhard Laußer   OSMC 2016: Open Monitoring Distribution 2016+ by Gerhard Laußer
OSMC 2016: Open Monitoring Distribution 2016+ by Gerhard Laußer
 
Daten natuerlich modellieren und verarbeiten mit Neo4j
Daten natuerlich modellieren und verarbeiten mit Neo4jDaten natuerlich modellieren und verarbeiten mit Neo4j
Daten natuerlich modellieren und verarbeiten mit Neo4j
 
JavaScript Performance
JavaScript PerformanceJavaScript Performance
JavaScript Performance
 
Backend-Services mit Rust
Backend-Services mit RustBackend-Services mit Rust
Backend-Services mit Rust
 
MongoDB Einführung
MongoDB EinführungMongoDB Einführung
MongoDB Einführung
 
Dojo Und Notes
Dojo Und NotesDojo Und Notes
Dojo Und Notes
 
JavaScript Performance
JavaScript PerformanceJavaScript Performance
JavaScript Performance
 
Weltvermessen mit OpenDataCam - Wie ich einmal eine Viertelmillionen Autos ge...
Weltvermessen mit OpenDataCam - Wie ich einmal eine Viertelmillionen Autos ge...Weltvermessen mit OpenDataCam - Wie ich einmal eine Viertelmillionen Autos ge...
Weltvermessen mit OpenDataCam - Wie ich einmal eine Viertelmillionen Autos ge...
 
Node.js
Node.jsNode.js
Node.js
 
OSMC 2011 | Collectd in der großen weiten Welt - Anbindung des Datensammlers ...
OSMC 2011 | Collectd in der großen weiten Welt - Anbindung des Datensammlers ...OSMC 2011 | Collectd in der großen weiten Welt - Anbindung des Datensammlers ...
OSMC 2011 | Collectd in der großen weiten Welt - Anbindung des Datensammlers ...
 
Wieso Informatiker bei der Informationssicherheit scheitern
Wieso Informatiker bei der Informationssicherheit scheiternWieso Informatiker bei der Informationssicherheit scheitern
Wieso Informatiker bei der Informationssicherheit scheitern
 
GPU-Computing mit CUDA und OpenCL in der Praxis
GPU-Computing mit CUDA und OpenCL in der PraxisGPU-Computing mit CUDA und OpenCL in der Praxis
GPU-Computing mit CUDA und OpenCL in der Praxis
 
GPUs — Vom spezialisierten Coprozessor zum Numbercruncher
GPUs — Vom spezialisierten Coprozessor zum NumbercruncherGPUs — Vom spezialisierten Coprozessor zum Numbercruncher
GPUs — Vom spezialisierten Coprozessor zum Numbercruncher
 

Más de inovex GmbH

lldb – Debugger auf Abwegen
lldb – Debugger auf Abwegenlldb – Debugger auf Abwegen
lldb – Debugger auf Abwegeninovex GmbH
 
Are you sure about that?! Uncertainty Quantification in AI
Are you sure about that?! Uncertainty Quantification in AIAre you sure about that?! Uncertainty Quantification in AI
Are you sure about that?! Uncertainty Quantification in AIinovex GmbH
 
Why natural language is next step in the AI evolution
Why natural language is next step in the AI evolutionWhy natural language is next step in the AI evolution
Why natural language is next step in the AI evolutioninovex GmbH
 
Network Policies
Network PoliciesNetwork Policies
Network Policiesinovex GmbH
 
Interpretable Machine Learning
Interpretable Machine LearningInterpretable Machine Learning
Interpretable Machine Learninginovex GmbH
 
Jenkins X – CI/CD in wolkigen Umgebungen
Jenkins X – CI/CD in wolkigen UmgebungenJenkins X – CI/CD in wolkigen Umgebungen
Jenkins X – CI/CD in wolkigen Umgebungeninovex GmbH
 
AI auf Edge-Geraeten
AI auf Edge-GeraetenAI auf Edge-Geraeten
AI auf Edge-Geraeteninovex GmbH
 
Prometheus on Kubernetes
Prometheus on KubernetesPrometheus on Kubernetes
Prometheus on Kubernetesinovex GmbH
 
Deep Learning for Recommender Systems
Deep Learning for Recommender SystemsDeep Learning for Recommender Systems
Deep Learning for Recommender Systemsinovex GmbH
 
Representation Learning von Zeitreihen
Representation Learning von ZeitreihenRepresentation Learning von Zeitreihen
Representation Learning von Zeitreiheninovex GmbH
 
Talk to me – Chatbots und digitale Assistenten
Talk to me – Chatbots und digitale AssistentenTalk to me – Chatbots und digitale Assistenten
Talk to me – Chatbots und digitale Assistenteninovex GmbH
 
Künstlich intelligent?
Künstlich intelligent?Künstlich intelligent?
Künstlich intelligent?inovex GmbH
 
Das Android Open Source Project
Das Android Open Source ProjectDas Android Open Source Project
Das Android Open Source Projectinovex GmbH
 
Machine Learning Interpretability
Machine Learning InterpretabilityMachine Learning Interpretability
Machine Learning Interpretabilityinovex GmbH
 
Performance evaluation of GANs in a semisupervised OCR use case
Performance evaluation of GANs in a semisupervised OCR use casePerformance evaluation of GANs in a semisupervised OCR use case
Performance evaluation of GANs in a semisupervised OCR use caseinovex GmbH
 
People & Products – Lessons learned from the daily IT madness
People & Products – Lessons learned from the daily IT madnessPeople & Products – Lessons learned from the daily IT madness
People & Products – Lessons learned from the daily IT madnessinovex GmbH
 
Infrastructure as (real) Code – Manage your K8s resources with Pulumi
Infrastructure as (real) Code – Manage your K8s resources with PulumiInfrastructure as (real) Code – Manage your K8s resources with Pulumi
Infrastructure as (real) Code – Manage your K8s resources with Pulumiinovex GmbH
 

Más de inovex GmbH (20)

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

SysDig Metriken zentralisieren

  • 2. 2 Sysdig http://www.sysdig.org/ • Sysdig = “strace + tcpdump + htop + iftop + lsof + transaction tracing + awesome sauce“ • Lokal auf einem System: csysdig • Es gibt Repos für viele Linux-Major-Distributionen: • Jeweils ab Rhel6 ff, Centos6 ff., Debian6 ff., Ubuntu 10.04 ff
  • 4. 4 Sysdig https://sysdig.com/ • Oder doch die On-Premise/Cloud Lösung? • Cloud: 20 $ Host/Monat (bei Jahresvertrag) oder 25 $ Host/Monat (Monatlicher Abrechnung) • 1 Host darf maximal 20 Container hosten • On-Premise: Preise nur auf Anfrage.
  • 5. 5 Sysdig • Mit Sysdig mehrere Systeme analysieren? Also doch mit einem neuen Rudel Monitore?
  • 6. 6 Sysdig Events zentralisieren Idee: Sysdig Events per ELK auswertbar machen
  • 7. 7 Basics Demo > sysdig # Infinite scroll > sysdig –n 10 # Limitierung auf 10 Events > sysdig -n 10 "not (proc.name = sysdig)" # Capture Filter > sysdig -n 10 "not (proc.name = sysdig) and not (proc.name = java)“ # Capture Filter kombiniert
  • 8. 8 Basics Sysdig-Events mit Logstash parsen # Über das STDIN Input Logstash Plugin > sysdig -n 10 | /opt/logstash/bin/logstash -f /etc/logstash/sysdig-logstash-plain.conf grok { match => { 'message' => "^%{NUMBER:num:int} %{NUMBER:time:float} %{INT:cpu:int} %{NOTSPACE:procname} %{NOTSPACE:tid} (?<direction>[<>]) %{WORD:event} %{DATA:args}$"} } # Geht das Aufbereiten der Events noch besser? > sysdig -n 10 –j "not (proc.name = sysdig)“ # Output Format JSON > sysdig -l # Verfügbare Felder > sysdig -p '{"proc_name":"%proc.name"}‘ # Eigenes JSON-Output Format
  • 9. 9 Basics Sysdig-Events mit Logstash parsen # Das ganze Bild: input { stdin { codec => 'json_lines' } } output { stdout { codec => 'json_lines' } elasticsearch { hosts => [ ’elasticsearch:9200' ] index => "sysdig-%{+YYYY.MM.dd}" } } > sysdig -p '{"proc_name":"%proc.name", "evt_category": "%evt.category", "evt_time":"%evt.time","evt_type":"%evt.type","evt_cpu":"%evt.cpu", "evt_args": "%evt.args"}' "not(proc.name = sysdig) and not(proc.name = java)" | /opt/logstash/bin/logstash -f /etc/logstash/sysdig-logstash-json.conf
  • 10. 10 Summary • Vorgehen einfach • ELK haben • Voraussetzung Sysdig + Logstash (+ JRE) installieren • Metriken erfassen • Nachteil: • sysdig ist gesprächig und Logstash (Java) braucht unter Last viele Ressourcen • Ohne Filter kommen viele Events: 270.000 in 10 Minuten auf einem idlenden System • Mögliche Optimierungen • Einsatz geeigneter Filter für Sysdig • Asynchrone Verarbeitung der Events: sysdig > Cache > Logstash • On-Demand Aktivierung für Deep-Dive Analysen
  • 11. 11 More fancy Kleine Beispiel Auswertungen für Sysdig # Und was ist mit Container? > sysdig -c lscontainers > sysdig -pc -A -c echo_fds "fd.ip=172.17.0.2” # more fancy --> https://sysdig.com/blog/let-light-sysdig-adds-container-visibility/ # User Tracking > sysdig -pc -c spy_users
  • 12. Vielen Dank Alexander Köhler DevOps Engineer Linux inovex GmbH Ludwig-Erhard-Allee 6 76131 Karlsruhe alexander.koehler@inovex.de 0173 3181 034