Opensearch
Aus Wissen
Installation und verzögerter Start von OpenSearch unter Debian/Ubuntu
Voraussetzungen
- Debian oder Ubuntu (Server/Workstation)
- Root‑ oder sudo‑Rechte
- Netzwerkzugang für Paketquellen
Installation von Java
OpenSearch benötigt eine aktuelle Java‑Laufzeitumgebung (JDK/JRE). Empfohlen ist OpenJDK 11 oder höher.
sudo apt update
sudo apt install openjdk-11-jdk -y
java -version
Installation von OpenSearch
Die Pakete können direkt von der offiziellen Quelle bezogen werden.
wget https://artifacts.opensearch.org/releases/bundle/opensearch/2.15.0/opensearch-2.15.0-linux-x64.tar.gz
tar -xzf opensearch-2.15.0-linux-x64.tar.gz
sudo mv opensearch-2.15.0 /usr/share/opensearch
sudo useradd opensearch
sudo chown -R opensearch:opensearch /usr/share/opensearch
Systemd‑Service für OpenSearch
Damit OpenSearch automatisch startet, wird eine systemd‑Unit angelegt:
# /etc/systemd/system/opensearch.service
[Unit]
Description=OpenSearch Service
After=network.target
Requires=network.target
[Service]
Type=simple
User=opensearch
ExecStartPre=/bin/sleep 30
ExecStart=/usr/share/opensearch/bin/opensearch
Restart=always
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
Erklärung
- `After=network.target` stellt sicher, dass das Netzwerk verfügbar ist.
- `ExecStartPre=/bin/sleep 30` verzögert den Start um 30 Sekunden, sodass Java sicher geladen ist.
- `Restart=always` sorgt für automatischen Neustart bei Fehlern.
Aktivierung
sudo systemctl daemon-reload
sudo systemctl enable opensearch.service
sudo systemctl start opensearch.service
Alternative: Timer statt Sleep
Eleganter ist ein systemd‑Timer, der den Dienst verzögert startet:
# /etc/systemd/system/opensearch.timer
[Unit]
Description=Delayed start of OpenSearch
[Timer]
OnBootSec=30s
Unit=opensearch.service
[Install]
WantedBy=timers.target
Aktivierung:
sudo systemctl enable opensearch.timer
Kontrolle
systemctl status opensearch.service
journalctl -u opensearch.service
Fazit
Mit der Kombination aus Java‑Installation, OpenSearch‑Setup und einer verzögerten systemd‑Startkonfiguration wird sichergestellt, dass der Dienst zuverlässig nach jedem Neustart verfügbar ist.