Veröffentlichungen

ECE 2.0: Host Tagging, ML, Hot-Warm Architecture und vieles mehr

Als Elastic Cloud Enterprise (ECE) vor mehr als einem Jahr veröffentlicht wurde, waren wir alle sehr aufgeregt und vorsichtig optimistisch. Unser Ziel war es, Ihnen eine zentrale und einfache Möglichkeit zu bieten, Ihre gesamte Elasticsearch-Flotte zu provisionieren, zu verwalten und zu skalieren. Die Herausforderungen, die die Entwicklung einer Lösung zur Verwaltung einer massiven Elasticsearch-Flotte mit sich bringt, kannten wir aus eigener Anschauung, denn schließlich haben wir auch unseren eigenen Elasticsearch Service auf diese Weise aufgebaut.

ECE basiert auf exakt derselben Codebasis, die wir für den Elasticsearch Service genutzt haben, ist aber so verpackt, dass sich die Lösung überall bereitstellen lässt und so den Zugriff auf dieselbe erprobte Software mit denselben Features ermöglicht, die auch zur Verwaltung tausender Cluster bei mehreren verschiedenen Cloud-Anbietern verwendet wird.

Schnell hat sich herausgestellt, dass ECE nicht nur von großen Unternehmen mit großen Clusterzahlen, sondern auch von Unternehmen mit kleinerem Clusteraufkommen genutzt wird. Irgendwie schien jeder einen Grund gefunden zu haben, ECE zu nutzen.

In den letzten Monaten hatten wir die Gelegenheit, wichtige Erkenntnisse der Nutzer von ECE zu sammeln, unser Angebot zu verbessern und uns Gedanken zu machen, wohin die Reise weitergehen soll. Heute ist es soweit – wir stellen Ihnen eine schlankere, rankere und noch bessere Version vor: ECE 2.0!

Diese Version bietet so viele tolle Features, das wir hier nur die nennen möchten, die wir am spannendsten finden. 

Unterstützung für jeden Anwendungsfall, egal wie groß

Der Hauptfokus bei der Entwicklung von ECE 2.0 lag auf der besseren Unterstützung größerer und komplexerer Anwendungsfälle, wie Protokollierung und Zeitreihendaten. Außerdem sollten Administratoren besser steuern können, wie diese Anwendungsfälle von den Clustereigentümern bereitgestellt und konfiguriert werden. Dies wird vor allem durch die folgenden Features ermöglicht:

Individuelles Tagging

Tags sind Schlüssel/Wert-Paare, die jedem Allocator-Host hinzugefügt werden. Allen, die aus der Welt der Cloud- und Container-Orchestrierung kommen, wo die Zuordnung über Labels und Selectors erfolgt, dürfte dieses Konzept geläufig sein. Mit ECE 2.0 hält jetzt das Allocator-Tagging Einzug, mit dem Sie Allocators mit beliebigen Tags versehen können, um sie zu klassifizieren. So können Sie mit Tags beispielsweise angeben, zu welchem Team der Allocator gehört und welche Hardwarespezifikationen ihm zugrunde liegen. Aber auch jede andere Information, die zur Klassifizierung des Allocators dient, kann so bereitgestellt werden. Anhand der Tags wird dann später ermittelt, welcher Allocator am besten geeignet ist, die Clusterknoten und Kibana-Instanzen zu hosten. 

host_tagging.png

Maßgeschneiderte Instanzkonfigurationen

In älteren ECE-Versionen waren alle Elasticsearch-Knoten gleich: Sie hatten alle dieselbe Konfiguration und für alle galten dieselben Rollen. Dadurch hatte der Benutzer nur begrenzte Möglichkeiten, die verschiedenen Knotentypen separat zu verwalten, was für viele Anwendungsfälle nicht akzeptabel war. 

In ECE 2.0 können Sie jede Komponente in Ihrem Cluster unabhängig von den anderen bereitstellen, verwalten und skalieren. Mit den in ECE 2.0 eingeführten Instanzkonfigurationen können Sie für jeden Knoten angeben, welche Rollen für ihn gelten sollen, mithilfe von Tags (siehe oben) Filter konfigurieren, um passende Allocator-Hosts für Ihre Knoten zu finden, und ein für die beabsichtigte Knotennutzung passendes RAM-zu-Speicherplatz-Verhältnis festlegen.

creating_instance_config.gif

Neu in ECE: Deployment-Vorlagen

Eines der vielseitigsten Features in der Konsole sind die neuen anpassbaren Deployment-Vorlagen. Eine Deployment-Vorlage fasst verschiedene Instanzkonfigurationen unterschiedlicher Knotentypen als eine Art Blaupause für Ihr Cluster zusammen. Mit Deployment-Vorlagen können Sie für jeden Knotentyp eigene Standardwerte und -konfigurationen festlegen, zum Beispiel die Knotengröße und die Zahl der Verfügbarkeitszonen.

Sie können auch eigene Vorlagen erstellen, die Sie für den konkreten Anwendungsfall, das jeweilige Team oder jeden anderen Aspekt, der einen eindeutigen Satz von Allocators benötigt, konfigurieren können. Bei Erstellung eines neuen Clusters bieten die Deployment-Vorlagen vorkonfigurierte Einstellungen, die in allen Phasen einen weitgehend aufwandsarmen Deployment-Prozess ermöglichen.

deployment_template.png

Sie verwenden für Zeitreihenindizes den Elastic Stack? Wir haben da etwas für Sie.

Ein häufiger Anwendungsfall für den Elastic Stack ist das Verarbeiten von Zeitreihendaten, wie beispielsweise Log-Meldungen. In solchen Szenarien empfehlen wir oft die Verwendung einer Hot-Warm Architecture, vor allem, wenn es um größere Mengen geht. 

ECE 2.0 enthält eine integrierte Hot-Warm-Architecture-Vorlage, mit der Sie zwei unterschiedliche Datenknoten-Tiers konfigurieren können: Hot-Datenknoten übernehmen die Verarbeitung von Daten (Ingesting) und speichern die neuesten Indizes, bei denen auch eine höhere Wahrscheinlichkeit besteht, dass nach ihnen gesucht wird. Dafür werden robustere Hosts mit besserer I/O-Performance benötigt. Die Warm-Datenknoten dienen zur Speicherung großer Mengen von Daten mit längerer Aufbewahrungszeit, die zumeist nicht mehr geändert werden und auf die deutlich seltener zugegriffen wird. Daher können diese Daten auf günstigeren Allocator-Hosts mit Spinning Disks aufbewahrt werden, die in puncto Performance schlechter abschneiden, aber für die Speicherung von Daten wesentlich kostengünstiger sind.

Über die in ECE 2.0 integrierte Funktion zur Indexkuratierung können Sie festlegen, wann Indizes automatisch von Hot- auf Warm-Datenknoten umgeschichtet werden sollen – den Rest erledigt ECE für Sie.

index_curation.png

Viele Features – eine gemeinsame Lösung

Es ist kein Geheimnis, dass der Elastic Stack sehr vielseitig ist und für eine Vielzahl unterschiedlichster Anwendungsfälle genutzt werden kann – von der Log-Analyse und der Sicherheitsanalyse über Metriken bis zur Suche und darüber hinaus. Es kommt nicht selten vor, dass Benutzer beim Erstellen eines Deployments feststellen, dass ihre Anwendungsfälle besser funktionieren, wenn sie mit einem bestimmten Hardwareprofil arbeiten. Außerdem kann es – durchaus auch in ein und demselben Cluster – sinnvoll sein, jeden einzelnen Knotentyp auf einem Allocator-Host auszuführen, der dem relevanten Profil zugeordnet ist. So funktionieren beispielsweise Ihre Kibana-Instanzen möglicherweise besser auf einem Host mit mehr RAM und weniger Speicherplatz, während sich Ihre Machine-Learning-Knoten, für die ebenfalls nicht sehr viel Speicherplatz benötigt wird, auf einem Host mit etwas mehr CPU-Power am wohlsten fühlen. 

Die in ECE 2.0 verfügbaren Features, wie Host-Tagging, Instanzkonfigurationen und Deployment-Vorlagen, bieten Ihnen wesentlich mehr Flexibilität und Einflussnahmemöglichkeiten bei der Verwaltung Ihrer Cluster. Darüber hinaus öffnet ECE 2.0 auch die Tür für die native Unterstützung unterschiedlicher Hardwareprofile und die Optimierung der Hardwarenutzung bei gleichzeitiger Performanceverbesserung und reduzierten Kosten. 

Es gibt verschiedene Möglichkeiten, wie Sie diese Features in Ihrem Anwendungsfall nutzen können, und wir werden in einem späteren Blogpost genauer darauf eingehen. Dann wird es auch weitere Beispiele für die Implementierung der richtigen Konfiguration für Ihre Anforderungen geben.

Machine-Learning-Potenzial ausschöpfen

Wie bereits im Abschnitt zur Instanzkonfiguration erwähnt, war es in früheren ECE-Versionen nicht möglich, den Knoten im Cluster spezifische Rollen zuzuweisen. Das ist auch der Grund dafür, weshalb wir keine offizielle Unterstützung für das Machine Learning in gehosteten Clustern anbieten konnten, da für die Ausführung von Machine-Learning-Jobs in einer Produktionsumgebung dedizierte Machine-Learning-Knoten benötigt werden. 

Durch die Einführung von Instanzkonfigurationen sind Sie nun in der Lage, dedizierte Machine-Learning-Knoten zu konfigurieren und diese Knoten getrennt von den anderen Knoten im Cluster zu verwalten und zu skalieren.

Außerdem können Sie Instanzkonfigurationen nutzen, um dedizierte Masterknoten zu erstellen, die zur Unterstützung größerer Cluster oder dedizierter Ingest-Knoten erforderlich sind. Dies ist vor allem dann sinnvoll, wenn Sie Prozesse haben, bei denen das Ingesting viel Zeit in Anspruch nimmt, sodass Sie aufgrund des Bedarfs an zusätzlichen Pipelines zur weiteren Anreicherung Ihrer Daten Ihre Ingest-Schicht skalieren möchten.

scaling_instance.gif

Unterstützung der neuesten Docker-Version unter Ubuntu

Sie können jetzt ECE unter Ubuntu 16.04 mit Docker 18.03 installieren. Das ist deshalb wichtig, weil ECE 1.x nur Docker 1.11 unterstützt hat, für das es schon seit einiger Zeit keine offizielle Unterstützung mehr gibt. Die Docker-Engine kann damit auf allen ECE-Knoten upgegradet werden.

In Zukunft werden wir schneller dafür sorgen, dass neuere Docker-Versionen unterstützt werden, und uns dabei an den sechsmonatigen Docker-LTS-Unterstützungszyklus halten.

SAML-Authentifizierung für Deployments

ECE hat auch bisher schon Sicherheits- und Authentifizierungsintegrationen, wie LDAP/AD, für alle Ihre Deployments geboten. Mit ECE 2.0 erweitern wir das Angebot an Authentifizierungsintegrationsoptionen um die SAML-Authentifizierung.

Upgrade-Kompatibilität

ECE 2.0.0 gilt zwar als „Major Release“, aber alle oben beschriebenen Funktionen sind rückwärtskompatibel. Sie können also von Ihrer ECE 1.x-Installation problemlos auf ECE 2.0.0 upgraden und in den vollen Genuss der Neuerungen kommen, die die neue Version bietet.

Benutzerkonsole mit benutzerfreundlicherer Oberfläche

Die Benutzerkonsole wurde in wesentlichen Punkten benutzerfreundlicher gestaltet, was sich unter anderem in den folgenden Punkten widerspiegelt:

  • Tschüss „Cluster“, hallo „Deployment“: Angesichts der erweiterten Unterstützung für zusätzliche Produkte aus dem Elastic Stack scheint es uns angebracht, das, was in ECE erstellt wird, mit einem neuen, weiter gefassten Begriff zu benennen. Das heißt nicht, dass es keine Elasticsearch-Cluster mehr gibt – sie sind nach wie vor wichtige Bestandteile eines jeden Deployments –, aber der neue Begriff „Deployment“ beschreibt besser, wie der Elastic Stack in ECE verwaltet wird.
  • „Deployment erstellen“-Workflow: Zur Unterstützung von Instanzkonfigurationen und Deployment-Vorlagen bedurfte es eines neuen „Deployment erstellen“-Workflows. Mit diesem neuen Workflow können Sie einfach die passende Vorlage auswählen und Feineinstellungen an Konfigurationen vornehmen, Standardwerte für Deployments speichern und neue Deployments erstellen.
  • Einfachere Navigation: Um Ihnen das Zurechtfinden in der Benutzeroberfläche und das Bearbeiten Ihrer Deployments zu erleichtern, wurde die Navigation überarbeitet. Auch die Übersichtsseite für alle Deployments und die Seite, auf der die Ergebnisse von Drill-downs in einzelne Deployments angezeigt werden, sind neu gestaltet worden und bieten jetzt relevantere Informationen und Angaben zu den verfügbaren Aktionen.
  • Die Nacht ist nicht allein zum Schlafen da: Wenn Sie zu denjenigen Mitmenschen gehören, die erst nach Sonnenuntergang so richtig munter werden, hilft Ihnen das neue Nacht-Theme in ECE, die Augen zu schonen und sich an der Dunkelheit zu erfreuen.

ECE 2.0 bietet darüber hinaus noch eine Reihe weiterer neuer Features. Eine vollständige Übersicht finden Sie in den Release Notes. Und wenn Sie ECE 2.0 selbst ausprobieren möchten, können Sie es 30 Tage lang kostenlos testen. Wir würden uns freuen, anschließend Ihre Meinung zu hören!