Nextcloud Redis config

le 05-07-24 17:27

Franchement, pas trop de mal avec ce Redis. L'installer ? Un coup d'apt et hop.
C'est une boite noire et ça marche "presque" tout seul. Un tout petit peu de modif dans /etc/redis/redis.conf et re-hop.

Donc pour redis :

  • bind 127.0.0.1 ::1 (on n'écoute que sur la boucle local, je ne veux pas que de l'exterieur on vienne taper des requetes)
  • protected-mode yes (par défaut, cela empeche des requetes d'autres serveurs sur le meme reseau)
  • port 6379 (le port d'écoute)
  • databases 16 (vous mettez le nombre que vous voulez, tout depend comment est utilisé redis. ici j'ai 16 database et vous verrez dans la config nextcloud que j'utilise la numero 3)
  • daemonize yes (je veux que le serveur tourne en service)
  • loglevel warning (pas besoin de se taper toutes les alertes)
  • logfile /var/log/redis/redis-server.log (la encore, vous pouvez comme pour apache créer un lien vers un emplacement disque dur de maniere à soulager la microcard)
  • dir /var/lib/redis (vous pouvez aussi créer un lien vers un emplacement disque dur de maniere à soulager la microcard)

Voilà. Tout le reste, vu notre configuration "légère", il n'y a pas besoin de toucher.

Ensuite, un peu de config pour Nextcloud (ne vous inquietez pas, je remettrais un fichier config.php complet pour nextcloud dans un autre post ). La encore on reste simple et direct. Ce qui nous donne :
[prism="language-javascript"]
'memcache.local' => '\OC\Memcache\APCu',
'memcache.locking' => '\OC\Memcache\Redis',
0 => 'memcache.distributed’ => ‘\OC\Memcache\Redis',
'redis' =>
array (
'host' => '127.0.0.1',
'port' => 6379,
'dbindex' => 3,
'password' => '',
'timeout' => 1.5,
'read_timeout' => 1.5,
),
[/prism]
Petites explications :

  • Le hic auquel je me suis affronté, c'est memcache.local. Je l'avais mis sur redis, mais j'ai eu trop de probleme de blocage genre "verrouillage", je ne sais pas pourquoi. J'ai résolu le probleme en utilisant APCu.
  • memcache.distributed : ça c'est le petit truc bizarre. Il en faut un :) ca permet à Nextcloud de gérer plusieurs serveur de cache. Je n'en ai pas. mais le code nextcloud avait un petit "bug" (a peut etre encore ?). Il cherchait un tableau comportant les serveurs. J'avais modifié le code (ce n'est que du php...), mais à chaque update j'étais bloqué par la sécurité qui empeche le déroulement en cas de fichier modifié. D'où cette ligne finalement qui dit que c'est distribué sur un seul serveur. Dont acte.

Image par TitusStaunton de Pixabay