Elasticsearch auf VPS installieren
Inhaltsverzeichnis
- 0. Überblick
- 1. Elasticsearch Installieren
- 2. Elasticsearch starten
- 3. Elasticsearch testen
- 4. Elasticsearch nutzen
0. Überblick
- Verwendetes System: Debian 11 64 bit (VPS General Purpose)
- Genutzter User: Ich nehme alles als „root“ vor
- Zeitdauer: ca. 5 Minuten
- Schwierigkeit: Einfach. Nur Code kopieren 😉
- Besonderheiten: Die Installation von Docker / Docker Compose wird hier vorausgesetzt.
1. Elasticsearch Installieren
1.1 Einleitung
Elasticsearch ist eine RESTful-Suchmaschine und Analytics Engine. Das Kernstück ist der Elastic Stack, welche die Daten speichert und eine schnelle Suche ermöglicht.
1.2 Infos zu yml Dateien
Bei yml Dateien ist es sehr wichtig, dass die Zeilen alle richtig eingerückt sind. Die Zeilen MÜSSEN immer mit der Leertaste eingerückt werden. Es dürfen KEINE Tabs enthalten sein. Du kannst den nachfolgenden Code immer online „überprüfen“ lassen. Die meisten Fehler entstehen nämlich durch die falsche Formatierung. Ein Dienst zum Überprüfen ist zum Beispiel: https://codebeautify.org/yaml-validator
1.3 Vorbereitung
Diese Anleitung basiert auf dem aktuellen Debian 10 Betriebssystem. Elasticsearch werden wir unter Docker realisieren. Dies ermöglicht uns später sehr schnelle Updates und eine schnelle Installation.
1.3.1 Verzeichnis erstellen
Wir erstellen uns ein neues Verzeichnis, in welchem wir später alle Daten von Elasticsearch abspeichern. Dazu geben wir folgendes in der Konsole ein:
mkdir -p /opt/containers/elasticsearch/data
chmod 777 -R /opt/containers/elasticsearch/data
Du kannst hier auch ein anderes Verzeichnis verwenden. Musst dann aber die gesamte Anleitung entsprechend anpassen.
1.3.2 docker-compose.yml erstellen
Nun können wir mit der eigentlichen „Installation“ von Elasticsearch beginnen. Dazu öffnest du folgende Datei:
nano /opt/containers/elasticsearch/docker-compose.yml
Nun kopierst du folgenden Code in die Datei. Dieser Code ist unser Bauplan für unseren Elasticsearch Container.
version: '3.3'
services:
elasticsearch:
image: elasticsearch:7.14.0
container_name: elasticsearch
restart: unless-stopped
environment:
- discovery.type=single-node
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- /opt/containers/elasticsearch/data:/usr/share/elasticsearch/data
ports:
- "9200:9200"
- "9300:9300"
2. Elasticsearch starten
Gib nun folgendes ein, um deinen Elasticsearch Container zu starten:
docker compose -f /opt/containers/elasticsearch/docker-compose.yml up -d
3. Elasticsearch testen
Führe nun auf deinem Server folgenden Befehl aus:
curl -X GET 'http://localhost:9200'
Hier siehst du meine Ausgabe:
Wenn du auch so etwas siehst, dann hast du Elasticsearch korrekt installiert.
4. Elasticsearch nutzen
4.1 Daten hinzufügen
Hier zeige ich dir, wie du neue Daten zu Elasticsearch hinzufügst. Dazu gibst du folgendes ein:
curl -XPOST -H "Content-Type: application/json" 'http://localhost:9200/dogado/ersterCode/1' -d '{ "message": "Hallo Dogado!" }'
Wenn alles korrekt funktioniert hat, solltest du so eine Ausgabe sehen:
{"_index":"dogado","_type":"ersterCode","_id":"1","_version":1,"result":"created","_shards":{"total":2,"successful":1,"failed":0},"_seq_no":0,"_primary_term":1}
Erklärung des Befehls: Das Programm curl hat für uns eine POST Anfrage an den Server geschickt. Dabei haben wir folgende Parameter mitgegeben.
Dogado: Index der Daten
ersterCode: Typ
1: die ID
4.2 Daten auslesen
Mit folgendem Code können wir unsere Daten wieder auslesen:
curl -X GET -H "Content-Type: application/json" 'http://localhost:9200/dogado/ersterCode/1'
Nun solltest du folgende Ausgabe sehen:
{"_index":"dogado","_type":"ersterCode","_id":"1","_version":1,"_seq_no":0,"_primary_term":1,"found":true,"_source":{ "message": "Hallo Dogado!" }}
easyname ist ein erfolgreicher und bekannter österreichischer Anbieter von Cloud-Services, Domains sowie Webhosting bis hin zur Server-Infrastruktur und gehört seit 2020 zur dogado group.
Das Unternehmen ist seit 2006 in Österreich erfolgreich am Markt und inzwischen auch in vielen anderen Ländern weltweit tätig. Sowohl das Team als auch die gehosteten Daten befinden sich in Österreich.
easyname liegt die Datensicherheit besonders am Herzen und stellt daher zu jedem Hosting-Paket auch kostenlose SSL-Zertifikate zur Verfügung. Mit intuitiven Tools zur Erstellung von Websites und Webshops und mit Easy Install Apps wie WordPress, Joomla oder PrestaShop können alle easyname-Kunden schnell in die Online-Welt einsteigen.