Elasticsearch selbst hosten - der einfache Weg

Elasticsearch selbst hosten - der einfache Weg

Yulei Chen - Content-Engineerin bei sliplane.ioYulei Chen
5 min

Elasticsearch ist die beliebteste Open-Source-Such- und Analytics-Engine. Sie steckt hinter Volltextsuche, Log-Analyse und Echtzeit-Datenauswertung bei tausenden Unternehmen. Elastic Cloud ist praktisch, aber die Preise starten bei $95/Monat und steigen schnell mit dem Datenvolumen.

Sliplane ist eine Managed-Container-Plattform, die Self-Hosting schmerzlos macht. Mit One-Click-Deployment läuft Elasticsearch in wenigen Minuten - kein Server-Setup, keine Reverse-Proxy-Config, keine Infrastruktur zum Verwalten.

Voraussetzungen

Vor dem Deploy brauchst du einen Sliplane-Account (kostenlose Trial verfügbar).

Quick Start

Sliplane bietet One-Click-Deployment mit Presets.

SliplaneDeploy Elasticsearch >
  1. Klick auf den Deploy-Button oben
  2. Wähl ein Projekt
  3. Wähl einen Server (wenn du dich gerade erst angemeldet hast, bekommst du einen 48-Stunden-Trial-Server)
  4. Klick auf Deploy!

Über das Preset

Der One-Click-Deploy oben nutzt Sliplanes Elasticsearch-Preset. Das Preset ist für ein sauberes, produktionsreifes Single-Node-Setup gedacht:

  • Wolfi-basiertes Image (elasticsearch-wolfi) für weniger Overhead und bessere Security
  • Spezifischer Version-Tag (8.19.0) für Stabilität
  • Single-Node Discovery-Modus, ideal für Self-Hosting
  • Security standardmäßig deaktiviert für einfachen Einstieg
  • JVM-Heap auf 512 MB gesetzt (passend für den 2 GB Base Server)
  • Persistenter Storage gemountet auf /usr/share/elasticsearch/data

Nächste Schritte

Sobald Elasticsearch auf Sliplane läuft, erreichst du es über die Domain, die Sliplane dir gibt (z.B. elasticsearch-xxxx.sliplane.app).

Du kannst prüfen, ob alles funktioniert, indem du die Root-URL im Browser aufrufst. Du solltest eine JSON-Antwort mit dem Cluster-Namen, der Version und dem Slogan "You Know, for Search" sehen.

Security aktivieren

Das Preset kommt mit deaktivierter Security, damit Healthcheck und initiales Setup reibungslos funktionieren. So aktivierst du Authentifizierung:

  1. Geh zu deinen Service-Einstellungen auf Sliplane
  2. Füg diese Environment-Variablen hinzu oder aktualisiere sie:
    • xpack.security.enabled = true
    • ELASTIC_PASSWORD = dein gewähltes Passwort
  3. Redeploy den Service

Nach dem Aktivieren der Security nutzt du elastic als Username und dein gewähltes Passwort zur Authentifizierung. Alle API-Requests brauchen dann eine Authentifizierung, auch von verbundenen Services.

Verbindung von anderen Services

Wenn du einen anderen Service auf dem gleichen Sliplane-Server hast (z.B. eine Backend-API oder Grafana), kannst du dich per internem Service-Namen mit Elasticsearch verbinden. Der Standard-Port ist 9200.

JVM-Speicher anpassen

Das Preset setzt den JVM-Heap auf 512 MB per ES_JAVA_OPTS. Wenn du auf einen größeren Server upgradest, kannst du den Wert erhöhen. Als Faustregel gilt: Heap auf etwa die Hälfte des verfügbaren RAMs setzen, aber nie mehr als ~26 GB. Zum Beispiel auf einem 4 GB Server:

SettingWert
ES_JAVA_OPTS-Xms1g -Xmx1g

Logging

Elasticsearch loggt standardmäßig nach STDOUT, was gut mit Sliplanes eingebautem Log-Viewer funktioniert. Allgemeine Docker-Log-Tipps findest du in unserem Post how to use Docker logs.

Kostenvergleich

Natürlich kannst du Elasticsearch auch bei anderen Cloud-Anbietern selbst hosten. Hier ein Preisvergleich der gängigsten:

AnbietervCPURAMDiskMonatliche KostenHinweis
Sliplane22 GB40 GB€9 (~$10.65)Flatrate, 1 TB Bandwidth, SSL inklusive
Fly.io22 GB40 GB~$18Disk und Bandwidth extra
Render12 GB40 GB~$35100 GB Bandwidth, Disk extra
Railway22 GB40 GB~$67 + $20 PlanPro-Plan-Minimum, nutzungsbasiert, Bandwidth extra
Klick hier, um die Berechnung zu sehen.

(Angenommen eine always-on Instanz mit 730 Stunden/Monat)

  • Sliplane: Flat €9/Monat für den Base Server. Unbegrenzte Services auf demselben Server, 1 TB Egress und SSL inklusive.
  • Fly.io: shared-cpu-2x 2 GB = $11.83/Monat + 40 GB Volume × $0.15/GB = $6 -> ~$17.83/Monat. Egress wird separat berechnet ($0.02/GB in der EU).
  • Render: Nächstliegendes Angebot ist Standard ($25, 1 vCPU / 2 GB) plus 40 GB Disk × $0.25/GB = $10 -> ~$35/Monat. Pro (2 vCPU / 4 GB) kostet $85/Monat + Disk.
  • Railway (Pro Plan): CPU 2 × $0.00000772/s × 2,628,000 s = $40.57; RAM 2 × $0.00000386/s × 2,628,000 s = $20.29; Volume 40 × $0.00000006/s × 2,628,000 s = $6.31 -> ~$67/Monat Compute, plus $20/Monat Pro-Plan-Minimum und $0.05/GB Egress.

Bandwidth-Kosten können bei nutzungsbasierten Anbietern schnell steigen. Nutz unser Bandwidth-Kostenvergleichs-Tool, um zu sehen, was dein Egress bei jeder Plattform kosten würde.

FAQ

Wofür wird Elasticsearch eingesetzt?

Elasticsearch ist eine verteilte Such- und Analytics-Engine. Typische Einsatzgebiete sind Volltextsuche für Websites und Apps, Log- und Event-Datenanalyse (oft zusammen mit Kibana), Application Performance Monitoring und Echtzeit-Analytics. Es ist das "E" im ELK Stack (Elasticsearch, Logstash, Kibana).

Wie konfiguriere ich Elasticsearch in Docker?

Elasticsearch in Docker wird über Environment-Variablen konfiguriert. Die wichtigsten sind discovery.type (auf single-node für Standalone-Betrieb), ES_JAVA_OPTS (JVM-Heap-Größe) und die xpack.*-Settings für Security und Features. Die vollständige Liste findest du in der Elasticsearch Docker-Dokumentation.

Wie aktualisiere ich Elasticsearch?

Änder den Image-Tag in deinen Service-Einstellungen auf Sliplane und redeploy. Prüf die Elasticsearch Docker Image Tags für die neueste stabile Version. Schau dir immer die Release Notes an, bevor du upgradest - besonders bei Major-Version-Änderungen.

Gibt es Alternativen zu Elasticsearch?

Ja, beliebte Alternativen sind Qdrant (Vektorsuche für AI-Anwendungen), Typesense (entwicklerfreundliche Such-Engine), Meilisearch (leichtgewichtige Instant-Suche) und Apache Solr (bewährte Volltextsuche). Die beste Wahl hängt von deinem Use Case ab - Elasticsearch glänzt bei Log-Analytics und komplexen Queries, während neuere Tools für einfache Suche simpler sein können.

Wie verbinde ich Kibana mit Elasticsearch auf Sliplane?

Deploy Kibana als separaten Service auf dem gleichen Sliplane-Server. Setz die Environment-Variable ELASTICSEARCH_HOSTS auf deinen Elasticsearch-Service mit dem internen Service-Namen (z.B. http://elasticsearch-xxxx:9200). Wenn du Security auf Elasticsearch aktiviert hast, setz außerdem ELASTICSEARCH_USERNAME auf elastic und ELASTICSEARCH_PASSWORD auf dein Passwort.

Host Elasticsearch jetzt selbst - so einfach!

Sliplane gibt dir alles, was du brauchst, um Elasticsearch ohne Server-Stress zu betreiben.