Nextcloud/Talk/HPB/NATS
NATS messaging server
Beschreibung
- Der NATS-Server (https://nats.io/) ermöglicht es Anwendungen und Diensten Daten auszutauschen, die in Nachrichten unterteilt sind.
- Clients stellen über eine URL eine Verbindung zum NATS-Server her und können anschließend Nachrichten zu einem bestimmten Betreff abonnieren oder veröffentlichen.
- NATS ist ein Hochleistungs-Open-Source-Benachrichtigungs-System, das als verteilte Nachrichten-Warteschlange für native Cloud-Anwendungen fungiert.
- Geschrieben in der Programmiersprache Go
Installation
Repository hinzufügen
Mit ihm wird der öffentliche Schlüssel des Repositorys bezogen und im Verzeichnis /etc/apt/trusted.gpg.d abgelegt:
# curl -sL -o /etc/apt/trusted.gpg.d/morph027-nats-server.asc https://packaging.gitlab.io/nats-server/gpg.key
Der nächste Befehl fügt der Konfiguration des Paketmanagers das Repository des NATS-Servers hinzu.
Es wird im Verzeichnis /etc/apt/sources.list.d die Datei morph027-nats-server.list erstellt und der einzutragende Inhalt ausgegeben:
# echo "deb https://packaging.gitlab.io/nats-server nats main" | tee /etc/apt/sources.list.d/morph027-nats-server.list
Installation durchführen
# apt update # apt install nats-server
Konfiguration
- /etc/nats/nats.conf
Mit dem folgenden Befehl wird wird das Verzeichnis /etc/nats erzeugt und dieses dem Besitzer sowie der Gruppe nats zugewiesen:
# install -d -o nats -g nats /etc/nats
Anschließend wird (als Benutzer nats) die Konfigurationsdatei für den NATS-Server erzeugt, die nur einen Eintrag erhält (listen: 127.0.0.1:4222).
# sudo -u nats echo "listen: 127.0.0.1:4222" > /etc/nats/nats.conf
Dienst starten
# systemctl start nats-server
- Status prüfen
# systemctl status nats-server ● nats-server.service - NATS messaging server Loaded: loaded (/lib/systemd/system/nats-server.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2021-01-07 00:00:02 CET; 9s ago Docs: https://docs.nats.io/nats-server/ Main PID: 10269 (nats-server) Tasks: 6 (limit: 2296) Memory: 6.5M CGroup: /system.slice/nats-server.service └─10269 /usr/bin/nats-server --config /etc/nats/nats.conf Jan 07 00:00:02 signaling systemd[1]: Started NATS messaging server. Jan 07 00:00:02 signaling nats-server[10269]: [10269] 2021/01/07 00:00:02.815032 [INF] Starting nats-server version 2.1.9 Jan 07 00:00:02 signaling nats-server[10269]: [10269] 2021/01/07 00:00:02.815675 [INF] Git commit [7c76626] Jan 07 00:00:02 signaling nats-server[10269]: [10269] 2021/01/07 00:00:02.816182 [INF] Listening for client connections on localhost:4222 Jan 07 00:00:02 signaling nats-server[10269]: [10269] 2021/01/07 00:00:02.816342 [INF] Server id is NDBF27HOCXESCE4M7QWO6T3ZWCRQPRSXLJWWJDCTXFGD36LOFCTZJAYR Jan 07 00:00:02 signaling nats-server[10269]: [10269] 2021/01/07 00:00:02.816475 [INF] Server is ready
- Dienst aktivieren
# systemctl enable nats-server