Redis Server unter Plesk erstellen

Was ist Redis überhaupt?

Viele Webanwendungen wie z. B. das CMS (Content-Management-System) von Woltlab unterstützen Redis zum Auslagern häufig benötigter Daten in den Arbeitsspeicher des Servers. Dies sorgt dafür, dass die Last auf Datenbanken und Dateisystemen drastisch reduziert werden kann. Es macht also durchaus Sinn, sich dies einmal genauer anzusehen. Ein Auszug aus Wikipedia erklärt grob in welche Richtung es geht:

Redis ist eine In-Memory-Datenbank mit einer einfachen Schlüssel-Werte-Datenstruktur und gehört zur Familie der NoSQL-Datenbanken (ist also nicht relational). Nach einer Erhebung von DB-Engines.com ist Redis der verbreitetste Schlüssel-Werte-Speicher

Die einfache Struktur der Datenbank eignet sich weniger für komplexe Datenstrukturen, die überwiegend in der Datenbank selbst abgebildet werden sollen. Dafür ist der große Vorteil von Redis, dass es schneller ist als relationale Datenbanken wie z. B. MySQL.

Aber Redis kann natürlich sehr viel mehr deshalb noch kurz eine Beschreibung von Redis.io :


Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes with radius queries and streams. Redis has built-in replication, Lua scripting, LRU eviction, transactions and different levels of on-disk persistence, and provides high availability via Redis Sentinel and automatic partitioning with Redis Cluster.


Installation

Nun kommen wir aber mal zum eigentlichen Thema. Die Installation gestaltet sich relativ simpel, es sollte hier jedoch noch gesagt werden, dass sich diese Installation auf Debian und Ubuntu Systeme bezieht. Auf beiden Systemen läuft Plesk Onyx in der aktuellsten Version.


Wir loggen uns mit PuTTY oder einem anderen SSH-Client (ich bevorzuge MobaXterm) auf unserem Server ein. Hier angekommen, müssen wir das build-essential sowie das tcl wget Paket herunterladen und installieren. Diese zwei Pakete benötigen wir für Schritt Nr. 2.


Schritt 1:

Code
  1. # apt-get install build-essential
  2. # apt-get install tcl wget


Schritt 2 (Herunterladen und Compilieren des letzten Redis stable releases):

Code
  1. # wget http://download.redis.io/redis-stable.tar.gz
  2. # tar xvzf redis-stable.tar.gz
  3. # cd redis-stable/
  4. # make distclean
  5. # make
  6. # make test
  7. # make install

Schritt 3 (Installieren des Redis-Server Dienstes):

Code
  1. # cd utils/
  2. # ./install_server.sh

Schritt 4 (Speicherüberlastung aktivieren):

Code
  1. # echo "vm.overcommit_memory = 1" >> /etc/sysctl.conf && sysctl -p

Dies benötigen wir, da es sonst zu solchen Fehlermeldungen kommen kann:

Code
  1. WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

Damit auch diese Warnung nicht erscheint, müssen wir mit Schritt 5 fortfahren.

Code
  1. WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must berestarted after THP is disabled.

Schritt 5 (deaktivieren des transparant_hugepage):

Code
  1. # echo never > /sys/kernel/mm/transparent_hugepage/enabled

Schritt 6 (starten des Redis-Servers):

Code
  1. # systemctl start redis_6379
  2. # systemctl status redis_6379

Sollte bis hier hin alles geklappt haben können wir nun den Redis-Server testen:


Code
  1. # redis-cli
  2. 127.0.0.1:6379> ping
  3. PONG
  4. 127.0.0.1:6379>

Dein Redis-Server ist nun unter deine-Server-IP.tld:6379 erreichbar.


Software:

PuTTY - CRY-SYS

    About the Author

    Ich bin IT-Spezialist im Fachbereich der IT-Administratoren, somit greife ich auf Fachwissen und Erfahrung zurück. Natürlich habe ich auch Hobbys eines davon ist diese Seite hier.

    Mark Administrator

    Comments 3

    • Hallo Mark, vielen dank für diesen Guide. Ich habe auch einen Server mit Plesk und wollte Redis schon immer einmal für meinen Wordpress Auftritt ausprobieren.

      Vielen Dank, ich gebe dir Feedback ob es bei mir geklappt hat.

      Grüße

      Mike

      • Danke, dass freut mich. Bin gespannt ob es bei dir klappt.

      • Hallo Mark,

        der Redis Server läuft :). Ich danke dir nochmals!