Wer suchet, der findet

Elasticsearch 6.0.0 und Elastic Stack 6.0.0 veröffentlicht: Das ist enthalten
Kommentare

Die Suchplattform Elasticsearch erreichte vor wenigen Tagen die sechste Major-Version. Fast exakt ein Jahr nach dem letzten großen Release bringt Elasticsearch 6.0.0 Verbesserungen am Upgrade-Mechanismus, der Performance und der Sicherheit. Die neue Version ist zudem Teil des neuen Elastic Stack 6.0.0, der ebenfalls gerade veröffentlicht wurde.

Elasticsearch ist eine Suchplattform, die auf das Apache-Projekt Lucene aufsetzt und eine Reihe nützlicher Funktionalität integriert, etwa die Aufteilung von Daten auf mehrere Shards und eine automatisierte Daten-Replikation. Elasticsearch ist ein dokumentenorientierter Data Store, in dem beliebig komplexe JSON-Objekte (documents) gespeichert werden können. Geboten wird eine verteilte, Multitenant-fähige Volltext-Suchengine mit einem RESTful Web Interface und Schema-freien JSON-Dokumenten.

Elasticsearch 6.0.0 – das ist neu

Die Zahlen zeigen, dass das vergangene Jahr in Bezug auf Elasticsearch ein sehr betriebsames war: 2236 Pull Requests sind Teil der aktuellen Version, was nach Adam Riese mehr als sechs Pull Requests pro Tag sind. Ermöglicht haben dies die 333 Committer, die an Elasticsearch 6.0.0 mitgearbeitet haben.

Upgrades leicht gemacht

Zunächst einmal die schlechte Nachricht: Auch mit der aktuellen Version der Suchplattform ist es nicht möglich, Indexe zu durchsuchen, die mit Elasticsearch 2.x erstellt wurden. Dafür entstehen allerdings keine Probleme beim Durchsuchen von 5.x-Indexen. Der Mehraufwand, die Indexe neu zu indizieren, muss dabei nicht zwangsläufig betrieben werden: Man kann auch einfach die Cross Cluster Search verwenden, um 6.x- und 5.x-Cluster zu durchsuchen.

Wer sich dennoch dazu entscheidet, alte Indexe neu zu indizieren, kann dazu auf das einfache User Interface des Kibana X-Pack Plug-ins zurückgreifen. Das kann auch für die neue Indizierung von Kibana-, Security- und Watcher-Indexen für Version 6.0 genutzt werden. Aber Vorsicht! Man sollte seine Deprecation Logs checken, ob man keine Features nutzt, die in Elasticsearch 6.0.0 nicht mehr unterstützt werden.

Zu guter Letzt kann man beim Upgrade auf das neue Major-Release auch die lästige Downtime der Cluster umgehen und ein sogenanntes Rolling Upgrade durchführen: Dadurch fällt der nötige Neustart des Clusters weg. Verfügbar ist dieses Feature allerdings nicht, wenn man X-Pack Security ohne aktiviertes SSL/TLS verwendet. In X-Pack Security 6.0 ist aktiviertes TLS zwischen den Nodes die Voraussetzung und es erfordert einen Neustart, um dies zu aktivieren.

Sequenz-IDs

Die ausführungsbasierte Shard Recovery, die mithilfe sogenannter Sequenz-IDs möglich wird, ist eines der wichtigsten Features von Elasticsearch 6.0.0 und sorgt zudem für schnellere Neustarts. Bisher war es nötig, sämtliche Shards eines Nodes durch einen Vergleich der entsprechenden Segmentdateien mit dem Primär-Shard neu zu synchronisieren und alle abweichenden Segmente zu überschreiben, wenn ein Node die Verbindung zum Cluster verloren hat. Dabei spielte es keine Rolle, ob der Verbindungsverlust durch ein Netzwerkproblem oder den Neustart des Nodes entstand. Dank der Sequenz-IDs müssen die jeweiligen Shards nun lediglich diejenigen Vorgänge wiederholen, die auf ihnen fehlen. Das kommt dem Recovery-Prozess in Sachen Effizienz zu Gute.

Weitere Neuerungen

Indexe haben, das ist bei der Migration nach Elasticsearch 6.0.0 dringend zu beachten, ab sofort nur noch einen Mapping Type. Diese Änderung läutet das Bestreben seitens der Macher ein, Mapping Types generell abzuschaffen. Mit der Vorgängerversion erstellte Indexe werden trotzdem funktionieren wie bisher, neue allerdings sind in Sachen Mapping Types beschränkt.

In Sachen Sicherheit gibt es zwei Änderungen für X-Pack Security. Die erste ist, dass das Standardpasswort changeme nicht mehr verwendet wird, da dies zu ernsten Sicherheitsproblemen führt, wenn die User nachlässig sind. Stattdessen gibt es ab sofort ein Tool, das dabei hilft, ein gutes Passwort zu generieren. Dieses wird zum Start des Clusters aktiv.

Die zweite Sicherheitsänderung wurde oben bereits erwähnt: TLS/SSL zwischen Nodes ist nun Pflicht, wenn das Security-Pack aktiviert ist. Neben der Verschlüsselung der Node-zu-Node-Kommunikation sorgt dies dafür, dass einfache Zertifikate für Nodes vergeben werden können, die regeln, ob ein Node dem Cluster beitreten darf oder nicht. Das Kommandozeilenwerkzeug certgen kann für das Erstellen dieser Zertifikate genutzt werden.

Das neue Auditbeat von Elastic Beats / Quelle: Elastic

Elastic Stack 6.0.0

Auch die restlichen Tools des Elastic Stacks haben dieser Tage eine Aktualisierung erfahren, dazu gehören Kibana, Logstash, Beats und ES-Hadoop. Außerdem steht Version 1.1 von Elastic Cloud Enterprise zum Download bereit. Während Kibana einen Vollbildmodus und eine reine Dashboard-Anzeige im Gepäck hat, gibt es bei Logstash nun die Möglichkeit, mehrere autarke Pipelines in einer Logstash-Instanz laufen zu lassen. ES-Hadoop bringt den Nutzern strukturiertes Streaming und Spark wird zum First-Class-Citizen.

Beats liebt ab Version 6.0.0 Container und besonders Docker: Logs sowie Metriken von Anwendungen können durch die Prozessoren add_docker_metadata und add_kubernetes_metadata mit Metadaten von Docker und Kubernetes angereichert werden. Hinzu kommt ein komplett überarbeitetes Konfigurationslayout und mit Auditbeat eine perfekt in den Elastic Stack integrierte Alternative zu auditd. Sämtliche Informationen zu dem Release von Elasticsearch 6.0.0 gibt es auf dem Blog von Elastic, dort findet sich auch ein Artikel zum neuen Major Release des Elastic Stacks. Die vollständigen Release Notes zu Elasticsearch finden sich hier.

API Summit 2017

Webapplikationen mit Node.js

mit Sebastian Springer (MaibornWolff)

Webpack – Bundling, Compiling and Transforming

mit Dominik Ehrenberg (crosscan)

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -