User Tools

Site Tools


doc:appunti:linux:sa:redis_2nd_instance

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
doc:appunti:linux:sa:redis_2nd_instance [2024/03/13 11:28] niccolodoc:appunti:linux:sa:redis_2nd_instance [2024/03/19 12:25] (current) – [Configurazione di Nextcloud] niccolo
Line 1: Line 1:
 ====== Istanze multiple del database Redis ====== ====== Istanze multiple del database Redis ======
 +
 +Il servizio Redis prevede il concetto di database multipli; l'installazione predefinita Debian 12 Bookworm prevede la creazione di 16 database distinti (numerati da 0 a 15) tramite l'opzione **databases 16** del file di configurazione ''/etc/redis/redis.conf''. Tuttavia tale concetto è molto diverso da quello di database dei motori SQL tradizionali (es. MySQL o PostgreSQL); se sullo stesso host si hanno diverse applicazioni che necessitano di un database Redis è opportuno creare **ulteriori istanze di Redis** piuttosto che condividere la stessa istanza.
 +
 +Nel nostro esempio l'istanza predefinita di Redis (in ascolto su localhost:6379/TCP) viene [[rspamd_spamassassin|usata da Rspamd per gestire i propri moduli greylist e antivirus]]. Avendo installato Nextcloud abbiamo bisogno di una ulteriore istanza di Redis per gestire il //[[https://docs.nextcloud.com/server/28/admin_manual/configuration_files/files_locking_transactional.html|transactional file locking]]//.
  
 Creare un file **/etc/redis/redis-nextcloud.conf** copiando l'originale **redis.conf**. Modificare le seguenti impostazioni: Creare un file **/etc/redis/redis-nextcloud.conf** copiando l'originale **redis.conf**. Modificare le seguenti impostazioni:
Line 11: Line 15:
 dbfilename dump-nextcloud.rdb dbfilename dump-nextcloud.rdb
 </file> </file>
 +
 +Abilitare e avviare il servizio:
 +
 +<code>
 +systemctl enable redis-server@nextcloud.service --now
 +</code>
 +
 +Verificare che sia possibile connettersi alla nuova istanza tramite Unix socket:
  
 <code> <code>
Line 18: Line 30:
 </code> </code>
  
 +===== Configurazione di Nextcloud =====
 +
 +<code>
 +adduser www-data redis
 +</code>
 +
 +Dopo aver cambiato appartenenza al gruppo, riavviare i processi:
 +
 +<code>
 +systemctl restart php8.2-fpm.service
 +systemctl restart apache2.service 
 +</code>
 +
 +Nel file di configurazione **[NEXTCLOUD_HOME]/config/config.php** si aggiungono gli opportuni valori alla variabile **$CONFIG**:
 +
 +<code php>
 +$CONFIG = array (
 +  ...
 +  'filelocking.enabled' => true,
 +  'memcache.local' => '\OC\Memcache\Redis',
 +  'memcache.distributed' => '\OC\Memcache\Redis',
 +  'memcache.locking' => '\OC\Memcache\Redis',
 +  'redis' => array (
 +    'host' => '/run/redis/redis-nextcloud.sock',
 +    'port' => 0,
 +    'timeout' => 0.0,
 +  ),
 +);
 +</code>
 ===== Web References ===== ===== Web References =====
  
doc/appunti/linux/sa/redis_2nd_instance.1710325710.txt.gz · Last modified: 2024/03/13 11:28 by niccolo