Engineering

Tutorial: Erste Schritte in Elastic Cloud mit einem Beispiel-Datensatz für Elasticsearch (gehostet) und dem Elastic Stack 5.x

Dieser Artikel enthält aktualisierte Anweisungen zur Arbeit mit dem Elastic Stack Version 5.x. Eine ältere Version befasst sich mit einem Beispiel-Datensatz für Elasticsearch 2.x und Kibana 4.x.

Es war noch nie so einfach, eine gehostete Elasticsearch-Umgebung einzurichten und zu betreiben. Mit Elastic Cloud kannst du deinen Cluster starten und in wenigen Minuten Daten erfassen. Wie genau, das erfährst du in diesem 3-minütigen Video. Diese Schritt-für-Schritt-Anleitung zeigt dir ganz genau, wie du ein Konto bei Elastic Cloud einrichtest, einen Elasticsearch-Cluster startest und absicherst, Daten importierst und sie in Kibana visualisierst. Lass uns loslegen.

Bei Elastic Cloud anmelden

  1. Gehe auf https://www.elastic.co/cloud/as-a-service und starte eine kostenlose Testversion
  2. Du erhältst eine Bestätigungs-E-Mail. Öffne sie und befolge die Anweisungen, um deine Testversion zu nutzen
  3. Melde dich bei deinem Elastic Cloud-Konto an

Erstelle deinen ersten gehosteten Elasticsearch-Cluster

  1. Nach der Anmeldung gehst du zum Tab Cluster, um deinen Cluster einzurichten
  2. Wähle die Cluster-Größe aus. Ich werde einen Cluster mit 4 GB RAM und 96 GB Speicher auswählen.
  3. Wähle eine Region, die in der Nähe deines Standorts liegt. Ich wähle „US East“
  4. Wähle die Replizierung. Ich wähle nur einen Rechenzentrumsstandort aus.
  5. Klicke auf „Create“, um deinen Cluster bereitzustellen. Die Bereitstellung beginnt und du bekommst eine Benachrichtigung, sobald sie abgeschlossen ist.
  6. Speichere das Passwort, das für den Benutzer „elastic“ angezeigt wird; wir brauchen es später.

GIF-ClusterCreate.gif

    Aktiviere Kibana

    Als Nächstes aktivieren wir Kibana, um den Cluster-Zugang und die Sicherheitsfunktionen zu konfigurieren:

    1. Gehe zum Link Configuration und scrolle nach unten in den Abschnitt Kibana, um Kibana zu aktivieren
    2. Warte bis die Cluster-Bereitstellung abgeschlossen ist und die Enable-Schaltfläche im Kibana-Abschnitt angezeigt wird.
    3. Klicke auf die Enable-Schaltfläche
    4. Klicke auf den Link, um Kibana in einem neuen Tab zu öffnen. Beachte, dass die Aktivierung von Kibana eine Minute dauern kann. Währenddessen bekommst du möglicherweise die Antwort „unavailable“. Warte ein paar Sekunden und versuche dann, die Seite neu zu laden.
    5. Melde dich bei Kibana mit dem Benutzernamen „elastic“ und dem Passwort an, das du bei der Bereitstellung gespeichert hast.

    GIF-EnableKibana.gif

    Sichere deinen Cluster ab

    Anschließend konfigurieren wir den Cluster-Zugang und die Sicherheitsfunktionen mit dem X-Pack Security-Modul, das bei allen Elastic Cloud-Konten inbegriffen ist:

    1. Achte darauf, dass du in der Kibana-Oberfläche mit dem Benutzernamen elastic und dem Passwort angemeldet bist, das du bei der Bereitstellung gespeichert hast
    2. Erstelle weitere Benutzer und/oder konfiguriere vorhandene Benutzernamen und Passwörter. Ich erstelle einen neuen Benutzer namens sa_admin
    3. Wenn du neue Benutzer hinzugefügt hast, musst du ihre Rollen konfigurieren. Ich werde den Benutzer sa_admin mit der Rolle superuser versehen
    4. Gib das Passwort für den Benutzer an. Ich verwende einen geheimen Code.
    5. Merke dir unbedingt den hinzugefügten Benutzernamen und das zugehörige Passwort – speichere deine Zugangsdaten sicher ab. Oder schreibe sie auf einen Notizzettel 😉. 

    Kibana.png

    Du kannst mit derselben Vorgehensweise auch deine Passwörter aktualisieren oder weitere Benutzer hinzufügen. Du kannst auch die neue Security API in Version 5.5 nutzen, wenn du die Anweisungen in unserer Dokumentation zu Elasticsearch-Endpoint befolgst.

    Elasticsearch-Endpoint

    Sobald du bei Kibana angemeldet bist, siehst du zuerst den Tab Discovery. Allerdings gibt es keine Daten zum Visualisieren. Als Nächstes werden wir Daten erfassen und in Elasticsearch speichern. Lass uns Daten sammeln!  

    1. Gehe zum Link „Overview“ in der Elastic Cloud Konsole. Die aufgeführten Endpunkte werden als API-Zugang für deinen Cluster verwendet.
    2. Klicke auf den https-Link, um den Cluster aufzurufen. Kopiere die https-URL für die folgenden Schritte.

    Elastic_Cloud.png

    Daten importieren

    Nun holen wir uns einige Daten in unseren Elasticsearch-Cluster, um den Elastic Stack in Aktion zu erleben. Wenn du keinen Datensatz parat hast, verwende einfach eine der zahlreichen Beispiele in unserem GitHub Examples Repo. Ich nutze das Apache Logs Sample und Logstash (deine Systemversion herunterladen). Zum Einspeisen der Logs in unseren gehosteten Elasticsearch-Cluster müssen wir den Elasticsearch-Output der Logstash-Konfiguration im Beispiel bearbeiten.

    1. Lade das Repository herunter und ändere es auf das Verzeichnis, das die Datei apache_logstash.conf enthält. Ersetze unbedingt die Hosts in der Konfiguration mit deinem eigenen Cluster-Endpunkt (im vorigen Schritt kopiert).

    2. Bearbeite den Benutzernamen und das Passwort für das Benutzerkonto mit Schreibzugang, das du im Abschnitt Elasticsearch absichern konfiguriert hast. Ich benutze wieder den Benutzer sa_admin, den wir vorher hinzugefügt haben:

    elasticsearch {
       hosts => "https://e66e6e11692c749cc8e09f25e1af4efa.us-west-1.aws.found.io:9243/"
       user => "sa_admin"
       password => "s00p3rS3cr3t"
       index => "apache_elastic_example"
       template => "./apache_template.json"
       template_name => "apache_elastic_example"
       template_overwrite => true 
    }
    

    3. Führe folgenden Befehl aus, um die Daten über Logstash nach Elasticsearch zu indizieren:

      cat ../apache_logs | <Logstash_Install_Dir>/bin/logstash -f apache_logstash.conf
      

      4. Ich finde es praktisch, den Wert von ES_ENDPOINT in einer Umgebungsvariable zu speichern. Im Folgenden zeige ich das in ein paar Tests:

      export ES_ENDPOINT=https://somelongid.us-east-1.aws.found.io:9243
      

      5. Du kannst prüfen, ob Daten in Elasticsearch vorhanden sind, indem du ES_ENDPOINT/apache_elastic_example/_count aufrufst. Dabei steht ES_ENDPOINT für die Elasticsearch-URL. Als Anzahl sollte 10000 angezeigt werden. Unter der Voraussetzung, dass du die obige Umgebungsvariable festgelegt hast, kannst du dafür den curl-Befehl verwenden (achte darauf, den Benutzerparameter zur einfachen Authentifizierung für unseren https-Endpunkt anzugeben).

      %> curl --user sa_admin:s00p3rS3cr3t ${ES_ENDPOINT}/apache_elastic_example/_count
      {"count":10000,"_shards":{"total":5,"successful":5,"failed":0}}
      

      6. Den Zustand deines Clusters kannst du auf ES_ENDPOINT/_cat/indices. überprüfen. Dein Index apache_elastic_example sollte zusammen mit den Statistiken aufgeführt sein:

      %> curl --user sa_admin:s00p3rS3cr3t ${ES_ENDPOINT}/_cat/indices
      health status index              pri rep docs.count docs.deleted store.size pri.store.size
      yellow open   .kibana              1   1          2            0     19.1kb         19.1kb
      yellow open   apache_elastic_example   1   1      10000            0      7.3mb          7.3mb
      

      Daten visualisieren

      Jetzt greifen wir auf deine Kibana-Instanz zu und fahren mit den Beispielanweisungen zur Visualisierung unserer Daten fort:

      1. Gehe im Tab Management zu den Optionen „Index Pattern“ und füge den Index apache_elastic_example zu Kibana hinzu. Anschließend klickst du auf Create

      Kibana.png

      1. Einen Blick auf deine Daten bekommst du, wenn du den Index apache_elastic_example im Tab Discover auswählst.

      Kibana.png

      1. Importiere das Beispiel-Dashboard mit einem Klick auf on Management > Saved Objects > Import und wähle die Datei the apache_kibana.json aus. 

      Kibana.png

      1. Sieh dir das neu importierte Dashboard an – navigiere links zum Tab „Dashboard“ und wähle die Option Sample Dashboard for Apache Logs

      Sample_Dashboard_for_Apache_Logs_-_Kibana_and_Edit_Entry___Elastic_co_V5___Built_io_Contentstack_and_Elastic_Cloud.png

      Zusammenfassung

      Wir haben einen Cluster eingerichtet, Beispieldaten importiert und uns unser erstes gespeichertes Dashboard angesehen! Jetzt hast du einige Apache-Log-Daten als Beispiel in Elasticsearch und kannst Erkenntnisse aus deinen Logs gewinnen. Du kannst weitere Beispieldatensätze aus dem Examples Repo und dem Kibana-Leitfaden für Anfänger ansehen oder mit Logstash oder Beats direkt deine eigenen Daten übertragen.

      Hier sind einige nützliche Links, die dich bei deiner Arbeit mit dem Elastic Stack in der Cloud unterstützen.

      Außerdem kannst du natürlich deine Ausbildung mit einigen offiziellen Kursen von erstklassigen Education Engineers fortsetzen: https://www.elastic.co/training