Wie man einen elastischen Cluster der Version 7 einrichtet

Wie man einen elastischen Cluster der Version 7 einrichtet

  • Orchestrierung
5 Minuten Lesezeit Aktualisiert Jun 24, 2019

Auf einen Blick: Anleitungen zur Einrichtung eines ElasticSearch-Version-7-Clusters mit Ubuntu 16.04 werden bereitgestellt, einschließlich Serverkonfiguration und Softwareinstallationsschritte. Fehlerbehebungstipps und nächste Schritte zur Produktionsbereitschaft sind ebenfalls enthalten.

  • Installiere ElasticSearch und Kibana mit bestimmten Konfigurationen.
  • Öffnen Sie notwendige Firewall-Ports für den Betrieb.
  • Die Fehlerbehebungsoptionen für Clusterprobleme sind detailliert.
  • Die nächsten Schritte umfassen Speicheranpassungen und die Konfiguration des Proxy-Servers.

Hier installieren wir ElasticSearch und Kibana mit Ubuntu 16.04 und ElasticSearch 7.0.1. Unten finden Sie einige Hinweise zur Fehlerbehebung.

ElasticSearch ist inzwischen zu einem börsennotierten Unternehmen geworden, nachdem es einen Börsengang gemacht und Aktien verkauft hat. Eine der ersten Maßnahmen war die Erstellung von ElasticSearch Version 7. Leider haben sich die Installationsanweisungen, wie man einen Cluster mit Version einrichtet, geändert. Deshalb haben wir neue Anweisungen geschrieben. Der Hauptunterschied zu dem, was wir unten geschrieben haben, ist, dass keine Discovery-Plugins hinzugefügt oder konfiguriert werden müssen.

Diese Anweisungen ersetzen also die hier geschriebenen Version-6-Anweisungen.

Servernamen

In diesem Beispiel haben wir zwei Server. Ändere die Namen und IP-Adressen an deine Umgebung. Verwende keine Loopback-Adresse, da wir einen Cluster aus zwei Servern bilden werden. Stattdessen nutze deren interne IP-Adressen.

172.31.46.15 Parisx

172.31.47.43 paris2x

Und wir haben diese öffentliche IP-Adresse, damit wir Kibana vom Internet aus erreichen können:

ec2-35-180-186-122.eu-west-3.compute.amazonaws.com:5601

Firewall-Ports

Öffnen Sie Firewall-Ports 9200 (HTTP-Schnittstelle), 9300 (Transport) und 5601 (KIbana).

Installation von Software

Führen Sie diese Anweisungen aus:

Fehlerbehebung

    wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.0.1-amd64.deb
sudo dpkg -i elasticsearch-7.0.1-amd64.deb

https://artifacts.elastic.co/downloads/kibana/kibana-7.0.1-linux-x86_64.tar.gz
sudo dpkg -i kibana-7.0.1-amd64.deb

Erstellen Sie eine ElasticSearch-Konfigurationsdatei

Auf dem Pariser Server ersetzen Sie diese Datei /etc/elasticsearch/elasticsearch.yml durch:

    cluster.name: paris
node.name: parisx
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 172.31.46.15
discovery.seed_hosts: ["172.31.46.15", "172.31.47.43"]
cluster.initial_master_nodes: ["172.31.46.15"]
node.master: true

Auf dem paris2-Server ersetzen Sie diese Datei /etc/elasticsearch/elasticsearch.yml durch die unten gezeigten Inhalte.

    cluster.name: paris
node.name: paris2x
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 172.31.47.43
discovery.seed_hosts: ["172.31.47.43","172.31.46.15"]
cluster.initial_master_nodes: ["172.31.46.15"]

Starten Sie ElasticSearch auf jedem Server:

    sudo service elasticsearch start

Überprüfe den Cluster-Status. Du solltest zwei Knoten sehen, wenn alles funktioniert.

    curl -XGET http://172.31.46.15:9200/_cluster/health?pretty 
{
 "cluster_name" : "paris",
 "status" : "green",
 "timed_out" : false,
 "number_of_nodes" : 2,
 "number_of_data_nodes" : 2,
 "active_primary_shards" : 2,
 "active_shards" : 4,
 "relocating_shards" : 0,
 "initializing_shards" : 0,
 "unassigned_shards" : 0,
 "delayed_unassigned_shards" : 0,
 "number_of_pending_tasks" : 0,
 "number_of_in_flight_fetch" : 0,
 "task_max_waiting_in_queue_millis" : 0,
 "active_shards_percent_as_number" : 100.0
}

Configure Kibana

Ersetze die Konfigurationsdatei /etc/kibana/kibana.yml durch diese:

    server.host: "172.31.46.15"
server.name: "paris"
elasticsearch.hosts: ["http://172.31.46.15:9200"]
elasticsearch.preserveHost: false
logging.dest: stdout
logging.verbose: true

Fang mit Kibana an. Es könnte eine Minute oder länger dauern, bis du anfängst.

    sudo service kibana start

Öffnen Sie die Kibana-Konsole

http://ec2-35-180-186-122.eu-west-3.compute.amazonaws.com:5601/app/kibana

Es kann ein paar Minuten dauern, die Grafiken herunterzuladen und auch Kibana zu starten. Das Dashboard wird erscheinen:

  1. Wenn einer der Knoten dem Cluster nicht beitreten kann, lösche den /var/lib/elasticsearch-Ordner, da die Cluster-UUIDs wahrscheinlich nicht übereinstimmen. Das passiert, wenn du Fehler machst und die Server mit anderen Einstellungen neu startest.
  2. Stellen Sie sicher, dass Port 5601 in Richtung auswärts geöffnet ist. In Europa haben Unternehmen aufgrund der DSGVO-Anforderungen standardmäßig aufgehört, alle Häfen in auswärtiger Richtung zu öffnen.
  3. Wenn du entweder ElasticSearch oder Kibana im Vordergrund laufen lassen möchtest, kannst du das tun. Das dient nur zu Fehlerbehebungszwecken. Die oben beschriebene Kibana-Konfiguration ist so eingestellt, dass Ausgabe auf Stdout protokolliert wird, also müsstest du sie im Vordergrund ausführen, um das zu sehen, oder die Logs auf Festplatte schreiben. Du kannst Kibana als Root ausführen. Aber du kannst ElasticSearch nicht als Root ausführen. Du müsstest also die Eigentümerschaft von /usr/share/elasticsearch, /var/log/elasticsearch und /var/lib/elasticsearch auf deine Benutzer-ID ändern oder dich als User Elasticsearch anmelden, um elasticsearch im Vordergrund auszuführen. Beide Binärdateien findest du in den Ordnern /usr/share/kibana und /usr/share/elasticsearch.
  4. Suchen Sie nach ElasticSearch-Fehlern in /var/log/elasticsearch/paris.log. Der Dateiname ist der Knotenname.
    curl http://172.31.47.43:9200
{
  "name" : "paris2x",
  "cluster_name" : "paris",
  "cluster_uuid" : "uB_1NLmYRbKcVbKGPzsNSQ",
  "version" : {
    "number" : "7.0.1",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "e4efcb5",
    "build_date" : "2019-04-29T12:56:03.145736Z",
    "build_snapshot" : false,
    "lucene_version" : "8.0.0",
    "minimum_wire_compatibility_version" : "6.7.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

Nächste Schritte

Die nächsten Schritte vor der Produktion wären, die Speichergröße auf die Hälfte des Speichers der Maschine zu erhöhen (empfohlen von ElasticSearch) in /etc/elasticsearch/jvm.options durch Änderung der untenstehenden Werte.

    -Xms1g
-Xmx1g

Du solltest auch einen Proxy-Server davor platzieren, damit du grundlegende Authentifizierung und SSH konfigurieren kannst. (Du kannst auch SSH in ElasticSearch konfigurieren.)

Diese Beiträge sind meine eigenen und spiegeln nicht unbedingt die Position, Strategien oder Meinung von BMC wider.

Mehr aus Orchestrierung

Abonnieren Sie The Brief

Mit der Registrierung für dieses Angebot bestätigen Sie, dass Sie die Datenschutzrichtlinie von BMC gelesen und zugestimmt haben.

Danke

Sie haben The Brief abonniert
Das Briefing umfasst die Mainframe- und Enterprise-Orchestrierung – BMC AMI und Control-M – sowie die Analystenforschung, Kundeneinsätze und Events in beiden Bereichen.