Elastic{ON}Tour 2015 München

Andreas Stotzer, Senior Consultant, berichtet über die wichtigsten Neuerungen

Am 10. November 2015 fand die Elastic{ON}Tour 2015 in München statt. Neben Updates und Roadmaps zu den aktuellen Versionen des Elastic Produkte Stacks wurden Benutzer-Projekte und Use Cases vorgestellt, beispielsweise wie

> die NASA Elasticsearch für die Auswertung von Daten verschiedener Projekte wie Curiosity und SMAP einsetzt,

> die Wikimedia Foundation Elasticsearch für die Volltextsuche auf Wikipedia verwendet und

> das CERN in Genf Elasticsearch als Back-End für das Job- und Data-Monitoring des Worldwide LHC Computing Grid nutzt.

Mit über 35 Millionen Downloads ist der Elastic Stack eines der erfolgreichsten Open Source Projekte, das sich ausgezeichnet für die Freitextsuche, Real-Time Analyse und Datenvisualisierung eignet. Kommerzielle Erweiterungen wie Shield oder Marvel bieten zusätzliche Enterprise Features für die Bereiche Security und Monitoring.

Mit Found bietet Elastic eine Cloud-Lösung an. Innerhalb kürzester Zeit kann in der Cloud ein Elasticsearch Cluster konfiguriert und bereitgestellt werden.

Elasticsearch Core

Zu den wichtigsten Neuerungen in Elasticsearch Core 2.0 gehören die Vereinheitlichung der Query und Filter API sowie „Pipeline Aggregations“. Filter können nun wie normale „Query Clauses“ verwendet werden, um Abfragen automatisch zu optimieren. „Pipeline Aggregations“ bieten die Möglichkeit, Aggregationen auf Resultate anderer Aggregationen anzuwenden, und diese so zu verknüpfen. Weitere Neuerungen sollen eine verbesserte Stabilität und Security von Elasticsearch garantieren.

Ab Version 2.0 nutzt  Elasticsearch den Java Security Manager, um Anwendungen besser gegen Angriffe zu schützen. „Durable / consistent writes“ minimieren die Möglichkeit des Datenverlusts während der Indexierung.  Zudem  wurden die Anforderungen an Memory und Storage optimiert, wodurch der Betrieb von noch grösseren Clustern möglich ist.

Ein kurzer Ausblick in die Zukunft: In der Entwicklungsphase befinden sich ein detailliertes „Query Profiling“, eine neue Skriptsprache die wesentlich sicherer sein soll als die aktuellen Skripting-Lösungen, und eine Reindex API, welche die Aktualisierung von bereits indexierten Daten einfacher und effizienter machen soll.

Im folgenden stellt Andreas Kibana, Logstash und Beats, weitere kostenlose Produkte des Elastic-Stacks, vor.

Kibana

Auch Kibana – die grafische Oberfläche für die Auswertung und Analyse von Daten aus Elasticsearch – wurde mit der Version 4.2 um einige interessante Neuerungen erweitert. So werden nun „Elasticsearch Aggregations“ unterstützt und Kibana wurde mit einer serverseitigen Komponente erweitert, die beispielsweise das „Scheduling“ von Reports ermöglicht.

Ein Überblick über die Roadmap und zukünftige Features zeigte, dass das modulare Design von Kibana, sowie der Einsatz von modernen Web-Frameworks wie AngularJS oder D3 künftig die Entwicklung eigener Plugins oder Front-End-Applikationen für Elasticsearch ermöglichen. Zukünftige Versionen von Kibana sollen durch Security Features (Authorisation und Authentication) erweitert werden.

Grafik 1. Kibana Reporting-Dashboard mit verschiedenen Diagrammen (Weltkarte, Balken-diagramm, etc.).

Logstash

Auch im Bereich Data Ingestion / Indexierung wurden Updates vorgestellt, unter anderem neue interessante Plugins für Logstash. Mit dem JDBC input Plugin lassen sich Daten direkt aus einer SQL-Datenbank in Elasticsearch indexieren, wozu man ein cron-ähnliches Scheduling verwenden kann.

Mit dem HTTP Input Plugin können HTTP Requests in Elasticsearch indexiert oder mit Logstash anderweitig verarbeitet werden. Neu unterstützt Logstash ab der Version 2.0 Transport Level Security 1.2 und bringt signifikante Performanceverbesserungen beispielsweise im Bereich der Serialisierung und Deserialisierung von JSON. Auch für Logstash sind einige interessante Features in der Pipeline, unter anderem Persistent Queues, Health Monitoring und ein zentrales Management Interface.

Grafik 2. Logstash Beispiel:  Daten aus verschiedenen Quellsystemen  transformieren und in Elasticsearch indexieren

Beats

Beats sind leichtgewichtige“ Shippers“ oder „Agents“ welche wie Logstash Daten aus beliebigen Quellen sammeln, und für die Indexierung an Elasticsearch weiterleiten. Dabei ist jeder „Beat“ für einen speziellen Zweck respektive eine spezifische Datenquelle zuständig.


Grafik 3. Beats Platform Beispiel: Daten entweder direkt oder über Logstash für die Auswertung und Analyse mit Kibana bereit stellen

Zur Zeit gibt es drei Implementationen:

> Filebeat: Liest Daten aus Logfiles und leitet sie weiter an Logstash oder Elasticsearch (ersetzt den Logstash Forwarder).

> Topbeat: Sammelt CPU, Memory und Disk Metriken und leitet diese an Elasticsearch weiter. Topbeat ermöglicht ein zentrales Monitoring von verteilten Systemen.

> Packetbeat: Sammelt Metriken auf Protokollebene (Netzwerk, Web, Datenbank, etc.) und leitet diese an Elasticsearch weiter. Packetbeat ermöglicht ein zentrales „Health Monitoring“.

Zusätzlich bietet Elastic eine Bibliothek, lLibbeat, für die Entwicklung eigener Beats basierend auf der Programmiersprache Go. In naher Zukunft werden weitere Implementationen veröffentlichen. Community-getriebene Projekte wie Dockerbeat oder Nginxbeat runden die Palette ab.

Kommerzielle Produkte

Elastic bietet eine ganze Reihe von kommerziellen Erweiterungen für den Elastic-Stack an. Auch hier gibt es viele Neuerungen in den aktuellen Releases:

Shield: Secure and Encrypt

Shield bietet Enterprise Security Features wie Role Based Access Control, verschlüsselte Kommunikation, LDAP-Integration etc. Eines der wichtigsten neuen Features, das mit der Version 2.0 eingeführt wurde, ist Field und Document-Level Security zum Abdecken von sehr feingranularen Security-Anfoderungen.

Watcher: Alert and Notify

Watcher generiert Notifikationen basierend auf Änderungen an Daten und kann so beispielsweise für die Erkennung von Anomalien verwendet werden. Grundsätzlich gilt: Jede Abfrage die von Elasticsearch beantwortet werden kann, kann als Notifikation verwendet werden. Nennenswerte Neuerungen sind hier neue Aktionstypen wie HipChat oder Slack Messaging oder die vereinfachte Konfiguration von Watches

Marvel: Manage and Monitor

Marvel ist eine kommerzielle Management- und Monitoring-Konsole für Elasticsearch. Mit der Version 2.0 steht diese komplett überarbeite Version zur Verfügung. Sie basiert nun auch auf Kibana 4. Die neue Version 2.0 soll wesentlich benutzerfreundlicher sein. Marvel kann künftig auch für das Monitoring von anderen Elastic Produkten wie Logstash oder Beats eingesetzt werden.

Found: Elasticsearch as a service

Mit Found bietet Elastic ein eigenes Cloud-Angebot für Elasticsearch und Kibana an. In einer kurzen Demo wurde gezeigt, wie einfach und schnell mit Found ein Elasticsearch Cluster konfiguriert wird, und wie dieser beispielsweise mit Security-Features erweitert werden kann. Dabei bietet Found Features wie Scheduled Backups, One-Klick Upgrade oder Enterprise Level SLA Support

Fazit

Die Elastic{ON}Tour 2015 in München war eine sehr gelungene Veranstaltung. Als Besucher der Konferenz konnte ich sehr viele hilfreiche Informationen gewinnen. Sehr spannend waren die Ausblicke in die Zukunft. Herausheben möchte ich die verschiedenen Anwenderberichte und das Networking. Beeindruckend ist wie vielseitig der Elastic-Stack in der Community eingesetzt wird und die Zunahme von Anwendern aus sehr grossen Unternehmen und Organisationen.

Diso empfiehlt Elasticsearch Produkte beispielsweise für den Einsatz von Freitext-Suchmaschinen oder für die Real-Time Analyse und Visualisierung von Daten.


Rückfragen und Unterstützung

Für Fragen wenden Sie sich direkt an Daniel Senften, CEO Diso AG: dsenften@diso.ch

Diso AG – Der Daten- und Cloud-Experte

Die Diso AG ist ein renommierter IT-Dienstleister und langjähriger Oracle-Vertriebspartner in der Schweiz mit Schwerpunkten in den Bereichen Datenbanken und Cloud-Lösungen. Diso bietet ihren Kunden beispielsweise die Oracle Plattform as a Service-Lösung und die dazugehörige Datenmigration an. Kunden profitieren des Weiteren vom Komplettlösungsangebot im Sinne von Planung, Integration, Support inklusive Betrieb und Überwachung von IT-Infrastrukturen und Datenbanksystemen.

Im Bereich Software-Engineering entwickelt Diso massgeschneiderte IT und Software-Lösungen für unternehmensspezifische Anwendungen, wann immer sinnvoll mit einem mobile-first Ansatz. Zudem ist Diso Spezialist wenn es um die Software-basierte Optimierung von Performance geht. Auf die Kompetenz des traditionsreichen IT-Dienstleisters und Mittelständlers vertrauen bereits namhafte Kunden aus den Schwerpunktbranchen Banken, Versicherungen Detailhandel und öffentliche Verwaltung.

Die Diso designt wandlungsfähige IT-Systeme, entwickelt massgeschneiderte Software und ermöglicht die performante Verwendung und Auswertung von Informationen.