Introduzione

Redis è un archivio dati di valori-chiave (key-value) in memoria open source. Può essere utilizzato come database, cache e broker di messaggi e supporta varie strutture di dati come stringhe, hash, elenchi, set e altro. Redis offre elevata disponibilità tramite Redis Sentinel e il partizionamento automatico su più nodi Redis con Redis Cluster.

Questo tutorial descrive come installare e configurare Redis su Ubuntu 20.04 LTS Focal Fossa.

Se desideri installare Redis su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.

Connessione al Server

Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:

ssh [email protected]_DEL_SERVER

Successivamente sarà necessario inserire la password dell'utente root.

Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:

ssh [email protected]_DEL_SERVER

Successivamente vi verrà chiesto di inserire la password del vostro utente.

La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:

ssh [email protected]_DEL_SERVER -p PORTA

Installare Redis su Ubuntu 20.04

L'installazione di Redis su Ubuntu è un processo semplice.

La versione 5.0.x di Redis è inclusa nei repository Ubuntu 20.04 predefiniti. Per installarlo esegui i seguenti comandi come utente root o utente con privilegi sudo:

sudo apt update
sudo apt install redis-server

Una volta completata l'installazione, il servizio Redis si avvierà automaticamente. Per verificare lo stato del servizio, immettere il seguente comando:

sudo systemctl status redis-server

Dovresti vedere un messaggio di output simile al seguente:

● redis-server.service - Advanced key-value store
     Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2020-06-08 17:22:07 CEST; 7s ago
       Docs: http://redis.io/documentation,
             man:redis-server(1)
   Main PID: 46383 (redis-server)
      Tasks: 4 (limit: 2286)
     Memory: 1.8M
     CGroup: /system.slice/redis-server.service
             └─46383 /usr/bin/redis-server 127.0.0.1:6379

Il servizio Redis non verrà avviato se IPv6 è disabilitato sul server.

Questo è tutto. Redis è installato e in esecuzione sul server Ubuntu 20.04 LTS Focal Fossa.

Configurare Redis Remote Access

Per impostazione predefinita, il server Redis non accetta connessioni remote. Puoi connetterti a Redis solo da 127.0.0.1 (localhost) - la macchina su cui Redis è in esecuzione.

Se si utilizza una configurazione a server singolo, in cui anche il client che si collega al database è in esecuzione sullo stesso host, non è necessario abilitare l'accesso remoto.

Per configurare Redis per accettare connessioni remote, apri il file di configurazione Redis con il tuo editor di testo:

sudo nano /etc/redis/redis.conf

Individua la riga che inizia con bind 127.0.0.1 ::1 e commentala in questo modo:

# bind 0.0.0.0 ::1
/etc/redis/redis.conf

Se il tuo server ha un IP privato e vuoi che Redis sia raggiungibile solo dalla rete privata invece di commentare la linea, l'indirizzo IP privato dopo 127.0.0.1.

Salvare il file e riavviare il servizio Redis per rendere effettive le modifiche:

sudo systemctl restart redis-server

Utilizzare il comando seguente per verificare che redis sia in ascolto su tutte le interfacce sulla porta 6379:

ss -an | grep 6379

Dovresti vedere qualcosa di simile al seguente, 0.0.0.0 indica tutti gli indirizzi IPv4 sulla macchina.

tcp    LISTEN     0       511                                           0.0.0.0:6379                                       0.0.0.0:*
tcp    LISTEN     0       511                                              [::]:6379                                          [::]:*

Successivamente, dovrai configurare il firewall per abilitare il traffico dalla porta TCP 6379.

In genere, si desidera consentire l'accesso al server Redis solo da un indirizzo IP o intervallo IP specifico. Ad esempio, per consentire connessioni solo dalla sottorete 192.168.121.0/24 , eseguire il comando seguente:

sudo ufw allow proto tcp from 192.168.121.0/24 to any port 6379

Assicurarsi che il firewall sia configurato per accettare connessioni solo da intervalli IP attendibili.

A questo punto, dovresti essere in grado di connetterti a Redis sulla porta TCP 6379 da posizioni remote.

Per verificare che tutto sia impostato correttamente, puoi provare a eseguire il ping del server Redis dal tuo computer remoto usando l'utiliy redis-cli:

redis-cli -h <REDIS_IP_ADDRESS> ping

Il comando dovrebbe restituire una risposta di PONG:

PONG

Conclusione

Ti abbiamo mostrato come installare Redis su Ubuntu 20.04 LTS Focal Fossa. Per ulteriori informazioni su come gestire l'installazione di Redis, visitare la pagina della documentazione di Redis.