Migrieren Sie einen ELK Stack zu Elastic Cloud auf AWS - AWS Prescriptive Guidance

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Migrieren Sie einen ELK Stack zu Elastic Cloud auf AWS

Erstellt von Battulga Purevragchaa (AWS), Uday Reddy und Antony Prasad Thevaraj () AWS

Umwelt: Produktion

Quelle: Elasticsearch

Ziel: Elastic Cloud

R-Typ: Replatform

Arbeitslast: Alle anderen Workloads

Technologien: Analytik; Sicherheit, Identität, Compliance

AWSDienste: AmazonEC2; Amazon EC2 Auto Scaling; Elastic Load Balancing (ELB); Amazon S3; Amazon Route 53

Übersicht

Elastic bietet seit vielen Jahren Dienstleistungen an, wobei Benutzer und Kunden Elastic in der Regel selbst vor Ort verwalten. Elastic Cloud, der verwaltete Elasticsearch-Service, bietet eine Möglichkeit, den Elastic Stack (ELKStack) und Lösungen für Unternehmenssuche, Observability und Sicherheit zu nutzen. Sie können mit Apps wie Logs, Metrics (Überwachung der Anwendungsleistung) und APM SIEM (Sicherheitsinformationen und Eventmanagement) auf Elastic-Lösungen zugreifen. Sie können integrierte Funktionen wie maschinelles Lernen, Index-Lifecycle-Management und Kibana Lens (für Drag-and-Drop-Visualisierungen) verwenden.

Wenn Sie von selbstverwaltetem Elasticsearch zu Elastic Cloud wechseln, kümmert sich der Elasticsearch-Service um Folgendes:

  • Bereitstellung und Verwaltung der zugrunde liegenden Infrastruktur

  • Elasticsearch-Cluster erstellen und verwalten

  • Cluster nach oben und unten skalieren

  • Upgrades, Patches und Erstellen von Snapshots

So haben Sie mehr Zeit, sich auf die Lösung anderer Herausforderungen zu konzentrieren.

Dieses Muster definiert, wie Elasticsearch 7.13 vor Ort zu Elasticsearch on Elastic Cloud on Amazon Web Services () migriert wird. AWS Andere Versionen erfordern möglicherweise geringfügige Änderungen an den in diesem Muster beschriebenen Prozessen. Weitere Informationen erhalten Sie von Ihrem Elastic-Ansprechpartner.

Voraussetzungen und Einschränkungen

Voraussetzungen

Bevor Sie mit der Migration beginnen, müssen Sie wissen, wie umfangreich Ihre Snapshots und die Lebenszyklusrichtlinien für die zugehörigen Indizes vor Ort sind. Weitere Informationen erhalten Sie bei Elastic.

Rollen und Fähigkeiten

Für den Migrationsprozess sind außerdem die in der folgenden Tabelle beschriebenen Rollen und Fachkenntnisse erforderlich.

Rolle

Fachwissen

Verantwortlichkeiten

App-Unterstützung

Vertrautheit mit Elastic Cloud und Elastic vor Ort

Alle Aufgaben im Zusammenhang mit Elastic

Systemadministrator oder DBA

Umfassende Kenntnisse der lokalen Elastic-Umgebung und ihrer Konfiguration

Die Fähigkeit, Speicher bereitzustellen, die AWS Befehlszeilenschnittstelle (AWSCLI) zu installieren und zu verwenden und alle Datenquellen zu identifizieren, die Elastic vor Ort versorgen

Netzwerkadministrator

Kenntnisse in Bezug auf Konnektivität, Sicherheit und Leistung zwischen lokalen Systemen und AWS Netzwerken

Einrichtung von Netzwerkverbindungen von lokalen Standorten zu Amazon S3 mit Kenntnis der Verbindungsbandbreite

Einschränkungen

Produktversionen

  • Elasticsearch 7.13

Architektur

Quelltechnologie-Stack

Lokales Elasticsearch 7.13 oder höher:

Architektur der Quelltechnologie

Das folgende Diagramm zeigt eine typische lokale Architektur mit unterschiedlichen Aufnahmemethoden, Knotentypen und Kibana. Die verschiedenen Knotentypen spiegeln die Elasticsearch-Cluster-, Authentifizierungs- und Visualisierungsrollen wider.

Achtstufiger Prozess, einschließlich Beats, Logstash, Elasticsearch und Kibana.
  1. Aufnahme von Beats zu Logstash

  2. Aufnahme von Beats in die Apache Kafka-Messaging-Warteschlange

  3. Aufnahme von Filebeat nach Logstash

  4. Aufnahme aus der Apache Kafka-Messaging-Warteschlange nach Logstash

  5. Aufnahme von Logstash in einen Elasticsearch-Cluster

  6. Elasticsearch-Cluster

  7. Authentifizierungs- und Benachrichtigungsknoten

  8. Kibana- und Blob-Knoten

Zieltechnologie-Stack

Elastic Cloud wird auf Ihrem SaaS-Konto (Software as a Service) in mehreren AWS Regionen mit clusterübergreifender Replikation bereitgestellt.

  • Cluster-Snapshots

  • Index-Snapshots

  • Beats-Konfigurationen

  • Elastische Cloud

  • Network Load Balancer

  • Amazon Route 53

  • Amazon S3

Zielarchitektur

Route 53 53-Endpunkte leiten den Datenverkehr an Multi-AZ-Umgebungen in zwei verschiedenen Regionen weiter.

Die verwaltete Elastic Cloud-Infrastruktur ist:

Migrationsschritte auf hoher Ebene

Elastic hat eine eigene präskriptive Methode für die Migration von lokalen Elastic Clustern zu Elastic Cloud entwickelt. Die Elastic-Methodik ist direkt auf die AWS Migrationsleitlinien und Best Practices abgestimmt und ergänzt diese, darunter das Well-Architected Framework und das AWSMigration Acceleration Program ()MAP. In der Regel sind die drei AWS Migrationsphasen die folgenden:

  • Bewerten

  • Mobilisieren

  • Migrieren und modernisieren

Elastic folgt ähnlichen Migrationsphasen mit ergänzender Terminologie:

  • Initiieren

  • Plan

  • Implementieren

  • Liefern

  • Schließen

Elastic verwendet die Elastic Implementation Methodology, um die Bereitstellung von Projektergebnissen zu erleichtern. Dies ist von Haus aus inklusiv, um sicherzustellen, dass Elastic, die Beratungsteams und die Kundenteams klar zusammenarbeiten, um gemeinsam die angestrebten Ergebnisse zu erzielen.

Die Elastic-Methode kombiniert traditionelle Wasserfall-Phasen mit Scrum innerhalb der Implementierungsphase. Konfigurationen der technischen Anforderungen werden iterativ auf kollaborative Weise bereitgestellt, wobei das Risiko minimiert wird.

Diagramm, das die fünf Stufen der Elastic Implementation Methodology zeigt.

Tools

AWSDienstleistungen

  • Amazon Route 53 — Amazon Route 53 ist ein hochverfügbarer und skalierbarer Domain Name System (DNS) -Webservice. Sie können Route 53 verwenden, um drei Hauptfunktionen in beliebiger Kombination auszuführen: Domainregistrierung, DNS Routing und Integritätsprüfung.

  • Amazon S3 — Amazon Simple Storage Service (Amazon S3) ist ein Objektspeicherservice. Mit Amazon S3 können Sie jederzeit beliebige Mengen von Daten von überall aus im Internet speichern und aufrufen. Dieses Muster verwendet einen S3-Bucket und Amazon S3 Transfer Acceleration.

  • Elastic Load Balancing — Elastic Load Balancing verteilt Ihren eingehenden Traffic automatisch auf mehrere Ziele wie EC2 Instances, Container und IP-Adressen in einer oder mehreren Availability Zones.

Andere Tools

  • Beats — Beats versendet Daten von Logstash oder Elasticsearch

  • Elastic Cloud — Elastic Cloud ist ein verwalteter Dienst für das Hosten von Elasticsearch.

  • Elasticsearch — Elasticsearch ist eine Such- und Analyse-Engine, die den Elastic Stack verwendet, um Ihre Daten für skalierbare Such- und Analysezwecke zentral zu speichern. Dieses Muster verwendet auch die Erstellung von Snapshots und die clusterübergreifende Replikation.

  • Logstash — Logstash ist eine serverseitige Datenverarbeitungspipeline, die Daten aus mehreren Quellen aufnimmt, transformiert und dann an Ihren Datenspeicher sendet.

Epen

AufgabeBeschreibungErforderliche Fähigkeiten

Identifizieren Sie Server, auf denen die lokale Elastic-Lösung ausgeführt wird.

Vergewissern Sie sich, dass die Elastic-Migration unterstützt wird.

Besitzer der App

Machen Sie sich mit der lokalen Serverkonfiguration vertraut.

Um die Serverkonfiguration zu verstehen, die für die erfolgreiche Ausführung von Workloads vor Ort erforderlich ist, sollten Sie den Platzbedarf der Serverhardware, die Netzwerkkonfiguration und die Speichereigenschaften ermitteln, die derzeit verwendet werden

App-Unterstützung

Sammeln Sie Benutzer- und App-Kontoinformationen.

Identifizieren Sie die Benutzernamen und App-Namen, die von der lokalen Elastic-Umgebung verwendet werden.

Systemadministrator, App-Support

Dokumentieren Sie die Konfiguration von Beats und Data Shipper.

Um die Konfigurationen zu dokumentieren, schauen Sie sich die vorhandenen Datenquellen und Datenquellen an. Weitere Informationen finden Sie in der Elastic-Dokumentation.

App-Unterstützung

Ermitteln Sie die Geschwindigkeit und das Datenvolumen.

Legen Sie eine Ausgangsbasis dafür fest, wie viele Daten der Cluster verarbeitet.

Systemadministrator, App-Support

Dokument RPO und RTO Szenarien.

Dokumentieren Sie Szenarien mit Ziel- (RPO) und Wiederherstellungszeitziel (RTO) in Form von Ausfällen und Service Level Agreements (SLAs).

App-Besitzer, Systemadministrator, App-Support

Ermitteln Sie die optimalen Einstellungen für den Snapshot-Lebenszyklus.

Definieren Sie, wie oft Daten während und nach der Migration mithilfe von Elastic-Snapshots gesichert werden müssen.

App-Besitzer, Systemadministrator, App-Support

Definieren Sie die Leistungserwartungen nach der Migration.

Generieren Sie Messwerte zur aktuellen und zu erwartenden Bildschirmaktualisierung, zu Abfragelaufzeiten und zum Verhalten der Benutzeroberfläche.

Systemadministrator, App-Support

Dokumentieren Sie die Transport-, Bandbreiten- und Verfügbarkeitsanforderungen für den Internetzugang.

Stellen Sie die Geschwindigkeit, Latenz und Stabilität der Internetverbindungen für das Kopieren von Snapshots nach Amazon S3 fest.

Netzwerkadministrator

Dokumentieren Sie die aktuellen Kosten der lokalen Laufzeit für Elastic.

Stellen Sie sicher, dass die Größe der AWS Zielumgebung so konzipiert ist, dass sie sowohl leistungsstark als auch kostengünstig ist.

DBA, Systemadministrator, App-Support

Identifizieren Sie die Authentifizierungs- und Autorisierungsanforderungen.

Die Sicherheitsfunktionen von Elastic Stack bieten integrierte Realms wie Lightweight Directory Access Protocol (LDAP), Security Assertion Markup Language (SAML) und OpenID Connect (). OIDC

DBA, Systemadministrator, App-Unterstützung

Verstehen Sie die spezifischen regulatorischen Anforderungen je nach geografischem Standort.

Stellen Sie sicher, dass Daten gemäß Ihren Anforderungen und allen relevanten nationalen Anforderungen exportiert und verschlüsselt werden.

DBA, Systemadministrator, App-Support
AufgabeBeschreibungErforderliche Fähigkeiten

Bereiten Sie den Staging-Bereich auf Amazon S3 vor.

Um Snapshots auf Amazon S3 zu erhalten, erstellen Sie einen S3-Bucket und eine temporäre AWS Identity and Access Management (IAM) -Rolle mit vollem Zugriff auf Ihren neu erstellten Bucket. Weitere Informationen finden Sie unter Eine Rolle erstellen, um Berechtigungen an einen IAM Benutzer zu delegieren. Verwenden Sie den AWS Security Token Service, um temporäre Sicherheitsanmeldeinformationen anzufordern. Bewahren Sie die Zugriffsschlüssel-ID, den geheimen Zugriffsschlüssel und das Sitzungstoken sicher auf.

Aktivieren Sie Amazon S3 Transfer Acceleration für den Bucket.

AWSAdministrator

Installation AWS CLI und Installation des Amazon S3 S3-Plug-ins vor Ort.

Führen Sie auf jedem Elasticsearch-Knoten den folgenden Befehl aus.

sudo bin/elasticsearch-plugin install repository-s3

Starten Sie dann den Knoten neu.

AWSAdministrator

Konfigurieren Sie den Amazon S3 S3-Client-Zugriff.

Fügen Sie die zuvor erstellten Schlüssel hinzu, indem Sie die folgenden Befehle ausführen.

elasticsearch-keystore add s3.client.default.access_key
elasticsearch-keystore add s3.client.default.secret_key
elasticsearch-keystore add s3.client.default.session_token
AWSAdministrator

Registrieren Sie ein Snapshot-Repository für Elastic-Daten

Verwenden Sie die Kibana Dev Tools, um dem lokalen lokalen Cluster mitzuteilen, in welchen Remote-S3-Bucket geschrieben werden soll.

AWSAdministrator

Konfigurieren Sie die Snapshot-Richtlinie.

Um das Snapshot-Lebenszyklusmanagement zu konfigurieren, wählen Sie auf der Registerkarte Kibana-Richtlinien die Option SLMRichtlinie aus und definieren Sie, welche Zeiten, Datenströme oder Indizes enthalten sein sollen und welche Namen verwendet werden sollen.

Konfigurieren Sie eine Richtlinie, die häufig Snapshots erstellt. Snapshots sind inkrementell und nutzen den Speicherplatz effizient. Passen Sie Ihre Entscheidung bei der Eignungsbeurteilung an. Eine Richtlinie kann auch eine Aufbewahrungsrichtlinie festlegen und Snapshots automatisch löschen, wenn sie nicht mehr benötigt werden.

Unterstützung für Apps

Stellen Sie sicher, dass Snapshots funktionieren.

Führen Sie in Kibana Dev Tools den folgenden Befehl aus.

GET _snapshot/<your_repo_name>/_all
AWSAdministrator, App-Unterstützung,

Stellen Sie einen neuen Cluster auf Elastic Cloud bereit.

Melden Sie sich bei Elastic an und wählen Sie einen Cluster für „Observability, Search oder Security“ aus, der sich aus Ihren Geschäftsergebnissen im Readiness Assessment ergibt.

AWSAdministrator, App-Support

Richten Sie den Zugriff auf den Cluster-Schlüsselspeicher ein.

Der neue Cluster benötigt Zugriff auf den S3-Bucket, in dem die Snapshots gespeichert werden. Wählen Sie in der Elasticsearch Service Console Sicherheit und geben Sie die Zugriffs- und IAM Geheimschlüssel ein, die Sie zuvor erstellt haben.

AWSAdministrator

Konfigurieren Sie den von Elastic Cloud gehosteten Cluster für den Zugriff auf Amazon S3.

Richten Sie einen neuen Cluster-Zugriff auf das zuvor erstellte Snapshot-Repository in Amazon S3 ein. Gehen Sie mit Kibana wie folgt vor:

  1. Wählen Sie Stack Management, Snapshot-Einstellungen, RegisterRepo.

  2. Geben Sie im Feld Alias den Namen des Repositorys ein.

  3. Wählen Sie als S3-Clientname die Option Secondary aus.

  4. Fügen Sie den S3-Bucket, den Sie zuvor erstellt haben, dem Repository hinzu.

  5. Wählen Sie Snapshot komprimieren.

  6. Behalten Sie für die Verschlüsselungseinstellungen die Standardwerte bei.

AWSAdministrator, App-Support

Überprüfen Sie das neue Amazon S3 S3-Repository.

Stellen Sie sicher, dass Sie auf Ihr neues Repository zugreifen können, das im Elastic Cloud-Cluster gehostet wird.

AWSAdministrator

Initialisieren Sie den Elasticsearch-Servicecluster.

Initialisieren Sie in der Elasticsearch Service Console den Elasticsearch-Servicecluster aus dem S3-Snapshot.

Führen Sie die folgenden Befehle als aus. POST

*/_close?expand_wildcards=all
/_snapshot/<your-repo-name>/ <your-snapshot-name>/_restore
*/_open?expand_wildcards=all
App-Unterstützung
AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie sicher, dass die Snapshot-Wiederherstellung erfolgreich war.

Führen Sie mit den Kibana Dev Tools den folgenden Befehl aus.

GET _cat/indices
App-Unterstützung

Stellen Sie die Aufnahmedienste erneut bereit.

Connect die Endpunkte für Beats und Logstash mit dem neuen Elasticsearch-Serviceendpunkt.

App-Unterstützung
AufgabeBeschreibungErforderliche Fähigkeiten

Validieren Sie die Cluster-Umgebung.

Nachdem die lokale Elastic-Cluster-Umgebung migriert wurdeAWS, können Sie eine Verbindung zu ihr herstellen und Ihre eigenen Tools für Benutzerakzeptanztests (UAT) verwenden, um die neue Umgebung zu validieren.

Unterstützung für Apps

Säubere die Ressourcen.

Nachdem Sie bestätigt haben, dass der Cluster erfolgreich migriert wurde, entfernen Sie den S3-Bucket und die für die Migration verwendete IAM Rolle.

AWSAdministrator

Zugehörige Ressourcen

Elastische Referenzen

Blogbeiträge von Elastic

Elastische Dokumentation

Elastic-Video und Webinar

AWSReferenzen

Zusätzliche Informationen

Wenn Sie planen, komplexe Workloads zu migrieren, wenden Sie sich an Elastic Consulting Services. Wenn Sie grundlegende Fragen zu Konfigurationen und Services haben, wenden Sie sich an das Elastic Support-Team.