host sFlow und Graphite

Es gibt ja die verschiedene Möglichkeiten Graphite mit entsprechenden Metriken zu versorgen. Neben den Klassikern wie zum Beispiel collectd existieren auch zahlreiche andere Tools, die mit Graphite zusammen arbeiten. Eines davon ist host sFlow, welches ich hier nachfolgend vorstellen möchte.
Wie der Name des Tools schon sagt, steht es im Zusammenhang mit sFlow, dem Standard aus dem Netzwerkbereich zur Trafficweiterleitung bzw. -analyse. host sFlow wird u.a. als DEB oder RPM-Paket zum Download angeboten.
Nach der Installation müssen in der Konfigurationsdatei “/etc/hsflowd.conf” Sammelwerte und die sFlow Kollektoren eingetragen werden, hier ist das nur einer:

sflow{
  packetSamplingRate=400
  counterPollingInterval=20
  collector{
    ip = 127.0.0.1
}

Der Daemon hsflowd sollte jetzt bereits gestartet werden, allerdings benötigen wir für den Transfer der Metriken von host sFlow an Graphite noch ein zusätzliches Skript names sflow2graphite. Da dieses auf sflowtool zurück greift, müssen wir das im Vorfeld installieren:

# git clone https://github.com/sflow/sflowtool.git
# automake
# autoconf
# ./configure
# make
# make install

Schlussendlich benötigen wir eben nur noch sflow2graphite, welches im Anschluss gestartet wird:

# wget https://sflow2graphite.googlecode.com/files/sflow2graphite-0.5.2.tar.gz
# tar -xf sflow2graphite-0.5.2.tar.gz
# ./sflow2graphite

Nun sollten die Metriken bereits von Graphite empfangen und als Whisper Files abgelegt werden:

├── cpu
│   ├── contexts.wsp
│   ├── idle.wsp
│   ├── ...
├── disk
│   ├── bytes_read.wsp
│   ├── bytes_written.wsp
│   ├── ...
│   ├──
├── load
│   ├── load_fifteen.wsp
│   ├── load_five.wsp
│   └── ...
├── mem
│   ├── buffers.wsp
│   ├── cached.wsp
│   ├── ...
└── net
    ├── bytes_in.wsp
    ├── bytes_out.wsp
    ...

Für eine bessere Visualisierung der Metriken bieten sich beispielsweise noch Dashboards mit Grafana an, hier am Beispiel der von host sFlow gesammelten Netzwerkmetriken:
Bildschirmfoto vom 2015-09-04 07:36:19

Markus Waldmüller
Markus Waldmüller
Lead Senior Consultant

Markus war bereits mehrere Jahre als Sysadmin in Neumarkt i.d.OPf. und Regensburg tätig. Nach Technikerschule und Selbständigkeit ist er nun Anfang 2013 bei NETWAYS als Lead Senior Consultant gelandet. Wenn er nicht gerade die Welt bereist, ist der sportbegeisterte Neumarkter mit an Sicherheit grenzender Wahrscheinlichkeit auf dem Mountainbike oder am Baggersee zu finden.

Weekly Snap: Webinars & Neon 110, Sflow Traffic & Kibana

weekly snap24 – 28 March was packed with previews for monitoring, graphing and hardware, as well as webinars and an imminent OSDC.
On events, Eva counted 15 days to the OSDC 2014 with Olivier Renault’s ‘Introduction to Hadoop’ as Christian announced our webinar calendar for spring, and jumped straight into  one on Puppet.
Of previews, Sebastian offered insight into a Ruby application we’re working on that graphs Sflow traffic with Elasticsearch and Kibana, while Thomas Icinga Web 2.
Continuing on the monitoring theme, Gunnar showed how he achieved auto-discovery with SNMP in Icinga 2, and Georg introduced the newest product to hit our hardware store: environment-monitoring sensor Neon 110.

Sflow Traffic mit Elasticsearch

Das Webinterface zu Elasticsearch “Kibana” wurde vor kurzem in der Version 3.0.0. GA released auch Elasticsearch selbst steht im neuen Glanz mit vielen neuen und nützlichen Features. Viele kennen bereits diese zwei Komponenten vermutlich unter anderem durch den Einsatz von Logstash. Dass man diese zwei Komponenten auch ohne Logstash für diverse Anwendungsfälle gut verwenden kann steht außer Frage.
Wir entwickeln aktuell an einer Ruby-Anwendung, die Sflow Daten empfängt, verarbeitet und an Elasticsearch sendet bzw. dort ablegt. Mit dem Kibana Webinterface lassen sich dann leicht Graphen über die gesammelten Daten auswerten und darstellen. Sflow ist ein Netzwerkprotokoll, dass u.a. Stichproben aus dem fließenden Traffic pickt und diese dann als sogenannte Samples an einen Collector sendet. Die Liste der Collectoren ist lang besteht allerdings meist aus kommerziellen closed-source Produkten.
Generell lassen sich daraus Informationen aufbereiten und ableiten, die zum Beispiel die Top 10 der IP-Adressen auf einem Switch, die den meisten Traffic verursachen oder VLANs die besonders viel Traffic verbrauchen und viele mehr.
Die Anwendung werden wir in den nächsten Wochen auf Github zur Verfügung stellen und in einem weiteren Blogpost darauf aufmerksam machen. Solange gibt es schon mal ein Sneak-Preview in Form von Screenshots 🙂
Bildschirmfoto 2014-03-25 um 14.46.24
Bildschirmfoto 2014-03-25 um 14.46.56

Sebastian Saemann
Sebastian Saemann
Head of Managed Services

Sepp kam von einem großen deutschen Hostingprovider zu NETWAYS, weil ihm dort zu langweilig war. Bei uns kann er sich nun besser verwirklichen, denn er leitet zusammen mit Martin das Managed Services Team. Wenn er nicht gerade Server in MCollective einbindet, versucht er mit seinem Motorrad einen neuen Geschwindigkeitsrekord aufzustellen.