In vorherigen Artikel habe ich meinen Logserver mit Graylog von Version 5 über einzelne Main Releases bis zur aktuellen Graylog 6.3 Version aktualisiert. Nebenbei hatte ich noch ein altes Debian 10 Buster laufen, was ich auch gleich auf Debian 11 Bullseye und final auf Debian 12 Bookworm, aktualisiert habe.
Soweit läuft der Server, sodass ich nun die Migration von ElasticSearch zu OpenSearch vorgenommen habe und hier dokumentiere. Hintergrund der Umstellung ist die Lizenzänderung von ElasticSearch, sodass sich die Entwickler von Graylog entschieden haben zu OpenSearch zu wechseln, was ein Fork von ElasticSearch ist.
Vorwort – Hinweis!
Ich hatte in einem ersten Versuch OpenSearch als eigene Installation aus den Paketquellen installiert. Hier in Version der aktuellsten Version 2.19.3. Das klappte gar nicht und nach etwas Recherche fand ich heraus, dass Graylog maximal die Version 2.16.x unterstüzt, also gab ich die Lösung des Problems auf und wollte einen neuen Versuch mit Version 2.16.x starten.
Weiterhin fand ich heraus, dass der Graylog Data Node u.a. die Funktionen der Steuerung von OpenSearch und das Handling, sowie die Installation übernimmt. Also habe ich hier weiter getestet und wie nachfolgend beschrieben, den Graylog Data Node inklusive OpenSearch und Migration der Inices erfolgreich installiert und konfiguriert.
aktueller Serverstand
- Debian 12
- Graylog Open (Single Node) V 6.3.3
- MongoDB 5.0.31 (Anleitung zum Upgrade folgt)
- Elasticsearch 7.10.2
Graylog Data Node
Was ist der Graylog Data Node? Die Antwort aus der offiziellen Doku:
A Graylog Data Node is a component of the Graylog architecture that is responsible for managing OpenSearch. This feature allows Graylog to manage your search backend so that you don’t have to install and manage OpenSearch separately.
Data Node enhances the security of the data layer in Graylog by implementing certificates, managing cluster membership, and facilitating the addition of new nodes. In addition, it ensures the correct version of OpenSearch and its necessary extensions are installed to enable proper functionality of Graylog.
Vorarbeiten
- Backup des Servers / Graylog / Datenbank etc.
- Debian und alle Pakete sollten aktuell sein
- stoppen und deaktivieren des ElasticSearch Dienstes
service elasticsearch stop
systemctl disable elasticsearch
- Linux Map Count prüfen und ggf erhöhen – Soll = 262144
cat /proc/sys/vm/max_map_count
262144
- falls notwendig neu setzen
echo 'vm.max_map_count=262144' | sudo tee -a /etc/sysctl.d/99-graylog-datanode.conf
sudo sysctl --system
Installation des Graylog Data Node
- als nächstes erfolgt die Installation des Data Node
apt install graylog-datanode
- Graylog Data Node Dienst aktivieren
systemctl daemon-reload
systemctl enable graylog-datanode.service
Konfiguration des Graylog Data Node
- nun erfolgt die Konfiguration des Graylog Data Node, sodass dieser mit dem Graylog Server und der MongoDB funktioniert
- hierfür nutzen wir das aktuelle Secret des Graylog Server
cat /etc/graylog/server/server.conf |grep password_secret
- dieses wird in der /etc/graylog/datanode/datanode.conf bei password_secret eingetragen
- nun noch die Verbindungsdaten zur MongoDB prüfen
netstat -tulpn |grep mongo
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 517/mongod
- und entsprechend in der datanode.conf eintragen
mongodb_uri = mongodb://127.0.0.1:27017/graylog
- weiterhin wird die Option opensearch_heap an das Ende der datanode.conf hinzugefügt, wobei die Größe als Faustformel die hälfte des max RAM ist, also bei 4GB OS RAM, dann 2g
opensearch_heap = 2g
- als nächstes kopieren / verschiebe den alten / aktuellen Index / Indices von EleasticSearch zu Graylog Data Node OpenSearch
- der Pfad steht jeweils in der Konfiguration
mv /var/lib/elasticsearch/nodes /var/lib/graylog-datanode/opensearch/data/
- nun noch die Rechte korrigieren
chown -R opensearch:opensearch /var/lib/graylog-datanode/opensearch/data/nodes/
Graylog Preflight aktivieren
An dieser Stelle hatten die Logs einen Fehler bzgl. http / https und Preflight angezeigt und auch die WebUI wurde nicht geladen, siehe unten bei Fehler. Daher habe ich den Preflight aktiviert und bin diesen nochmal durchlaufen.
- Preflight in der Graylog Server aktivieren und die Option z.B. am Anfang hinzufügen
nano /etc/graylog/server/server.conf
enable_preflight_web = true
- Graylog Server, Graylog Data Node nun starten
service graylog-server start
service graylog-datanode start
- ins Log schauen um die Preflight URL und den User und Passwort zu erhalten
# tail /var/log/graylog-server/server.log
=================================================================================
It seems you are starting Graylog for the first time. To set up a fresh install, a setup interface has
been started. You must log in to it to perform the initial configuration and continue.
Initial configuration is accessible at 0.0.0.0:9000, with username 'admin' and password 'geGgSKFFGB'.
Try clicking on http://admin:geGgSKFFGB@0.0.0.0:9000
=================================================================================
- es wird nun die Einrichtung der Graylog CA durchlaufen, was grundsätzlich einfach durchzuklicken ist






Danach dann folgende Schritte durchführen:
- den Preflight über die server.conf deaktivieren / entfernen
- Server neustarten
- Logs prüfen, wobei das auslesen / neu indexieren der Logs etwas dauert, Fehler angezeigt werden, aber auch korrigiert werden
- an der WebUI anmelden und hier die Indizes und Meldungen prüfen
- ElasticSearch deinstallieren: apt remove –purge elasticsearch-oss
Thats it … Have Fun!
Interessiert in verschiedenste IT Themen, schreibe ich in diesem Blog über Software, Hardware, Smart Home, Games und vieles mehr. Ich berichte z.B. über die Installation und Konfiguration von Software als auch von Problemen mit dieser. News sind ebenso spannend, sodass ich auch über Updates, Releases und Neuigkeiten aus der IT berichte. Letztendlich nutze ich Taste-of-IT als eigene Dokumentation und Anlaufstelle bei wiederkehrenden Themen. Ich hoffe ich kann dich ebenso informieren und bei Problemen eine schnelle Lösung anbieten. Wer meinen Aufwand unterstützen möchte, kann gerne eine Tasse oder Pod Kaffe per PayPal spenden – vielen Dank.
Pingback:Graylog Upgrade von 5.0 zu 6.0 - TASTE-OF-IT
Pingback:Graylog Upgrade von 6.0 auf 6.1 über 6.2 auf 6.3 - TASTE-OF-IT