Redis auf Ubuntu installieren
Dezember 2025
Eine Redis Datenbank wird für ProCall Infinity (DataCenter) vorausgesetzt.
In der folgenden Anleitung stellen wir Informationen zur Vorgehensweise als Beispiel zur Verfügung, um Redis auf Ubuntu 2204 zu installieren.
Diese Anleitung ist als Hilfestellung gedacht und setzt Fachkenntnisse voraus.
Da es sich bei Redis nicht um ein von estos bereitgestelltes Produkt oder Dienst handelt, besteht kein Anspruch auf Vollständigkeit und korrekte Beschreibung.
Vorgehensweise
Anleitung
Die vollständige Anleitung zur Inbetriebnahme von Redis finden Sie hier: https://redis.io/docs/install/install-redis/
Installation
Ubuntu2204
sudo apt update
Redis installieren
sudo apt install redis-server
Redis Version prüfen
redis-server --version
Konfiguration
Config bearbeiten
sudo nano /etc/redis/redis.conf
Folgende Punkte müssen eingestellt werden:
Binden der Netzwerkadresse
Hiermit wird konfiguriert, auf welche IP-Adresse der Redis-Dienst "hören" soll. Die konfigurierte Netzwerkadresse muss dann in der UCServer Administration eingetragen werden.
bind <ip-addr>
Beispiel Screenshot redis.conf

Port
Hierüber kann konfiguriert werden, über welchen Port der Dienst erreicht werden kann. Per default ist dieser "6379". Der konfigurierte Port muss dann in der UCServer Administration eingetragen werden.
port <port>
Schutzmodus
Per default ist der "protected-mode" aktiviert. Dieser bewirkt, dass der Redis Dienst nicht von einem anderen Host erreicht werden kann, bis ein Passwort (siehe "requirepass") gesetzt wurde. Wenn der Redis Dienst ohne Passwort von einem anderen Host erreicht werden soll ist der Wert auf "no" zu setzen.
protected-mode <value> (yes/no)
Passwortschutz
Der Zugriff auf den Redis-Dienst kann durch ein Passwort geschützt werden. Das konfigurierte Passwort muss dann in der UCServer Administration eingetragen werden.
requirepass <password>
Dienst starten
Redis neu starten
sudo systemctl restart redis.service
Prüfen, ob Redis Dienst ausgeführt wird
sudo systemctl status redis
Beispiel Screenshot für die Anzeige

Redis ist nun einsatzbereit und kann im ProCall Infinity (DataCenter) UCServer angebunden werden.
Redundanz durch Redis Verbund
Um das Redis Backend redundant auszulegen und dadurch einen höheren Grad an Ausfallsicherheit zu erreichen, wird Redis Sentinel unterstützt. Die Verwendung von Redis Sentinel basiert auf der Konfiguration von Redis Replicas.
Empfehlung
Die Sentinel-Instanzen, wie auch die Redis Server Instanzen, sollten auf Computern oder virtuellen Maschinen platziert werden, von denen angenommen wird, dass sie unabhängig voneinander ausfallen. Also zum Beispiel verschiedene physische Server oder virtuelle Maschinen, die in verschiedenen Verfügbarkeitszonen ausgeführt werden. Für eine stabile Bereitstellung benötigen Sie mindestens drei Sentinel-Instanzen, wie auch die Redis Server Instanzen.
Für den Verbindungsaufbau kann bei ProCall Infinity Redis Sentinel genutzt werden.
Bei der Übernahme der geänderten Redis-Einstellungen unternimmt der UCServer (mit welchem der UCAdmin verbunden ist) zunächst nur einen Testverbindungsversuch, der die laufende Verbindung zu Redis nicht unterbricht oder beeinflusst. Wenn die Testverbindung fehlschlägt, wird dies dem UCAdmin mit einer aussagekräftigen Fehlermeldung gemeldet. Erst wenn die Testverbindung mit Erfolg aufgebaut werden kann, werden die geänderten Einstellungen bei der Hauptverbindung aktiv.
Es ist dennoch sehr zu empfehlen, die Verbindung zu dem installierten Redis Sentinel System zunächst auf einem UCServer zu verproben, der nicht in der Produktivumgebung läuft.
Hintergrundinformation zu Redis Sentinel
Ausfallsicherheit, Master/Slave-Konzept und Wächter-Funktion für Redis
Redis Sentinel ist ein verteiltes System, das für die Hochverfügbarkeit (High Availability) von Redis sorgt, indem es Redis-Instanzen überwacht, automatische Failover durchführt, wenn ein Master-Server ausfällt, und Clients über den aktuellen Master informiert. Es agiert als eine Art „Wachdienst“, der die Gesundheit der Master- und Slave-Instanzen ständig prüft und bei Bedarf einen neuen Master aus den Slaves wählt und die Konfiguration anpasst, ohne menschliches Eingreifen.
Abgrenzung Redis Sentinel und Redis Cluster
Redis Sentinel ist nicht zu verwechseln mit Redis Cluster:
Redis Sentinel für Hochverfügbarkeit (HA) ist durch automatisches Failover in einem Master-Replica-Setup zuständig, während Redis Cluster für horizontale Skalierung durch Sharding großer Datensätze über mehrere Knoten hinweg entwickelt wurde. Sentinel überwacht und leitet Clients um, wenn ein Master ausfällt, während Cluster die Daten selbst aufteilt, um Durchsatz und Speicherkapazität zu erhöhen.
ProCall Infinity (Datacenter) ist vorbereitet für den Verbindungsaufbau und die Nutzung von Redis Sentinel.
Redis Cluster wird hingegen nicht unterstützt.
Konfiguration Redis Replica
Anleitung
Die vollständige Anleitung zu Redis Replikation finden Sie hier: https://redis.io/docs/management/replication/
Der Redis Master wird wie oben beschrieben über die redis.conf konfiguriert. Die Replicas werden ebenfalls über die redis.conf konfiguriert. Die Replikation erfolgt über den Redis Dienst und muss nicht separat gestartet werden. Bei der Konfiguration der Replicas ist darauf zu achten, dass der verwendete Port und das verwendete Passwort dem der Master-Konfiguration entspricht.
Folgende Konfigurationseinstellungen sind auf Seiten der Replicas zusätzlich zu treffen:
Angabe des Masters
Dem Replica muss die IP und Port der Master-Instanz mitgeteilt werden über die er den Master erreichen kann.
replicaof <ip> <port>
Passwort des Masters
Ist der Master mit einem Passwort geschützt, muss hier das Passwort des Masters angegeben werden. Die Redis Replica sollte das selbe Passwort im Parameter "requirepass" gesetzt haben, wie das Master Passwort, um einen Master-Wechsel zu unterstützen.
masterauth <password>
Verwendung von Docker
Empfehlung
Wenn Sie Redis Replication in Zusammenhang mit Docker verwenden, beachten Sie bitte, dass ggf. weitere Konfigurationsparameter anzugeben sind. Konsultieren Sie hierfür die offizielle Redis Sentinel Dokumentation.
Redis Sentinel
Anleitung
Die vollständige Anleitung zu Redis Sentinel finden Sie hier: https://redis.io/docs/management/sentinel/
Konfiguration
Port
Hierüber kann konfiguriert werden, über welchen Port der Dienst erreicht werden kann. Per default ist dieser "26379". Der konfigurierte Port muss dann in der UCServer Administration eingetragen werden.
port <sentinel-port>
Definition des zu monitorenden Masters
Hierüber wird konfiguriert, welchen Redis Master der Sentinel Dienst überwachen soll. Der <master-name> kann frei vergeben werden. Der konfigurierte Name muss dann in der UCServer Administration eingetragen werden. Des Weiteren muss die IP und der Port des Redis Masters eingetragen werden unter welcher dieser erreichbar ist. Außerdem muss für die Fehlererkennung ein "Quorum" definiert werden. Das ist die Zahl der Redis Sentinel Instanzen die sich einig sein müssen, dass die Redis-Master-Instanz nicht mehr erreichbar ist. Für die eigentliche Fehlerbehebung, sprich die Wahl einer Replica zum neuen Master ist immer eine Mehrheit der Sentinel-Instanzen nötig. Dies kann nicht konfiguriert werden.
sentinel monitor <master-name> <ip> <redis-port> <quorum>
Passwort des Redis Masters und der Redis Replicas
Damit Redis Sentinel mit dem Redis Master kommunizieren kann muss dem Sentinel Dienst das Passwort des Masters bekannt sein.
sentinel auth-pass <master-name> <password>
Der Master und seine Replicas müssen das selbe Passwort verwenden.
Sentinel Passwort
Sentinel Passwort
Derzeit wird das Setzen eines Passworts für Redis Sentinel nicht unterstützt.
Der Sentinel Dienst kann durch ein Passwort geschützt werden. Alle Sentinel Dienste die untereinander kommunizieren müssen, müssen das selbe Passwort verwenden.
requirepass <password>
Definition der Ausfallzeit zur Ausfallerkennung
Hierüber kann definiert werden, wie lange ein Master für eine Antwort benötigen darf, bevor er als ausgefallen erkannt wird. Der default-Wer beträgt 30000 ms. Als Master-Name ist der unter "sentinel monitor" spezifizierte Name zu verwenden.
sentinel down-after-milliseconds <master-name> <milliseconds>
Definition paralleler Re-synchronisierungen
Der Parameter definiert, wie viele Replicas sich gegen den neu gewählten Master parallel synchronisieren dürfen. Dieser Parameter ist vor allem dann klein zu wählen, wenn die Replicas von den Redis Clients für Lesezwecke verwendet werden. Da im Zusammhang das Lesen der Daten lediglich vom Master erfolgt, kann dieser Wert hoch gewählt werden. Er kann die komplette Anzahl der vorhandenen Replicas umfassen. Als Master-Name ist der unter "sentinel monitor" spezifizierte Name zu verwenden.
sentinel parallel-syncs <master-name> <numreplicas>
Definition der Ausfallbehandlungszeit
Die angegebenen Zeit wird für viele Zwecke verwendet (siehe sentinel.conf für nähere Informationen). Der default-Wert beträgt 180000ms, also 3 Minuten. Als Master-Name ist der unter "sentinel monitor" spezifizierte Name zu verwenden.
sentinel failover-timeout <master-name> <milliseconds>
Verwendung von Docker
Empfehlung
Wenn Sie Redis Sentinel in Zusammenhang mit Docker verwenden, beachten Sie bitte, dass ggf. weitere Konfigurationsparameter anzugeben sind. Konsultieren Sie hierfür die offizielle Redis Sentinel Dokumentation.
Dienst starten
Der Dienst wird durch folgenden Aufruf gestartet:
redis-sentinel /path/to/sentinel.conf
Konfiguration von Procall Infinity mit Redis Sentinel
In der UCServer Verwaltung werden die Einstellungen auf der Seite "Redis" adjustiert, nach der Übernahme werden sie von allen UCServern des Infinity (DataCenter) Verbundes übernommen.
Zunächst werden alle UCServer beendet, die Benutzer und/oder Leitungen verwalten, bis nur noch ein UCServer läuft, auf dem dann die Änderung durchgeführt wird. Danach werden alle UCServer neu gestartet.
Beispiel Screenshot UCServer Verwaltung Infinity - Globale Einstellungen - Allgemein - Redis - Sentinel Monitor Mastername - IP-Adressen und Ports
Der Verbindungsmodus wird auf "Redis Sentinel" gestellt.
Im Feld Sentinel Monitor Mastername muss der Name eingetragen werden, wie er in der sentinel_input.conf definiert wurde.
Die Sentinel Server Adressen müssen in der Form <host>:<port> und mit ";" getrennt eingegeben werden.
Wenn in weiterer Folge der Verbindungstyp umgestellt wird, werden automatisch die zuletzt in diesem Modus verwendeten Werte eingetragen.