Redis è un archivio di strutture dati valore-chiave in memoria open source (con licenza BSD) usato come database, cache e broker di messaggi. Redis supporta strutture di dati come stringhe, hash, elenchi, set, set ordinati con query di intervallo, bitmap, log di hyperlog, indici geospaziali e flussi. Redis fornisce anche un'elevata disponibilità con la logica del software Redis Sentinel, creando il partizionamento automatico tra i nodi Redis con Redis Cluster.
Alla fine della guida, saprai come installare e configurare Redis sul tuo Ubuntu 20.04 sistema operativo.
Prerequisiti
- Sistema operativo consigliato: Ubuntu 20.04 o versioni successive
- Account utente: Un account utente con sudo o accesso root.
Aggiorna sistema operativo
Aggiorna il tuo Ubuntu sistema operativo per assicurarsi che tutti i pacchetti esistenti siano aggiornati:
sudo apt update && sudo apt upgrade -y
Il tutorial utilizzerà il comando sudo e supponendo che tu abbia lo stato sudo . Per verificare lo stato di sudo sul tuo account:
sudo whoami
Esempio di output che mostra lo stato di sudo:
[joshua@ubuntu ~]$ sudo whoami
root
Se non hai impostato un account utente sudo e lo desideri, visita il nostro tutorial su Come aggiungere un utente a Sudoer su Ubuntu .
Per utilizzare l'account root , usa il comando seguente con la password di root per accedere.
su
Installa Redis
Per impostazione predefinita, la serie Redis 5 viene inclusa nei repository di Ubuntu 20.04. Per installare il servizio Redis, digita il seguente comando:
sudo apt install redis-server
Esempio di output:

Digita "Y", quindi premere "INVIO CHIAVE" per procedere con l'installazione.
Verifica che Redis sia stato installato correttamente verificando utilizzando il comando della politica apt-cache:
sudo apt-cache policy redis-server
Esempio di output:

Successivamente, verifica lo stato e assicurati che Redis sia in esecuzione e, soprattutto, senza errori:
systemctl status redis-server
Esempio di output:

Nota, Reddis ascolta attivamente localhost sulla porta 6379 predefinita . Per confermare questo tipo, quanto segue:
ps -ef | grep redis
Esempio di output:
joshua@ubuntu:~$ ps -ef | grep redis
redis 8346 1 0 21:40 ? 00:00:00 /usr/bin/redis-server 127.0.0.1:6379
joshua 9058 7363 0 21:40 pts/0 00:00:00 grep --color=auto redis
Ora, mentre stai verificando che tutto funzioni e sia operativo, è una buona idea collegarti al tuo servizio Redis ed eseguire un test ping.
Per eseguire il test, inserisci il seguente comando:
redis-cli
Una volta connesso, il tuo terminale visualizzerà (127.0.0.1:6379 ). Ora esegui il ping del servizio Redis come segue:
ping
Esempio di output:
127.0.0.1:6379> ping
PONG
Digita quanto segue per uscire dall'istanza Redis:
exit
Congratulazioni, hai installato Redis sul tuo sistema operativo Ubuntu e verificato che sia operativo. Successivamente, puoi configurare Redis.
Come configurare Redis
Redis può essere configurato in diversi modi. L'azione più notevole del motivo per cui le persone usano Redis è per scopi di memorizzazione nella cache. Per fare ciò, devi aprire il “/etc/redis/redis.conf ” file utilizzando l'editor nano.
sudo nano /etc/redis.conf
Configura memoria massima
Ora, aggiungi quanto segue alla fine del file. Tieni presente che puoi modificare il valore della memoria impostandolo a tuo piacimento o, soprattutto, in modo ottimale per la tua applicazione web e l'hardware del server.
maxmemory 500mb
maxmemory-policy allkeys-lru
Come puoi vedere, l'impostazione nella guida ha 500 MB dedicati a Redis in quanto è su un host dedicato con molta RAM di riserva. Una volta esauriti i 500 MB, Redis rimuove qualsiasi chiave secondo l'algoritmo LRU.
Configura l'accesso alla rete
Un'altra opzione è ascoltare tutti i servizi o impostare un indirizzo IP/sottorete se ti piace il tuo servizio Redis.
Per prima cosa, trova la riga 69 nel file di configurazione.
Innanzitutto, per ascoltare tutte le interfacce di rete, commenta "#" la linea si lega a IP:
Esempio:
# bind 127.0.0.1 ::1
Metodo alternativo:
bind 0.0.0.0/0
Nota, assicurati che la tua rete interna sia affidabile e che siano in atto controlli di sicurezza appropriati.
Per associare un indirizzo IP, assicurati che sia un indirizzo IP statico.
Esempio:
bind 192.150.5.2
Per associare una sottorete di rete.
Esempio:
bind 192.150.5.0/24
Nota, si consiglia vivamente di impostare una password quando si utilizza la sottorete o l'accesso a tutte le interfacce da ascoltare.
Configura password
Un'altra funzionalità di sicurezza e per rafforzare ulteriormente Redis è impostare una password sull'istanza Redis.
Vai alla riga 507 e decommenta "# requiredpass" linea e impostare una password.
Esempio:
requiredpass APASSWORD
Assicurati che questa password sia robusta, numeri, lettere, simboli speciali e maiuscole casuali poiché i server Redis possono essere forzati molto bene su una scatola decente.
Quindi, quando si richiama Redis-CLI, utilizzare il comando seguente con la password impostata per l'utente.
Esempio:
auth THEPASSWORDSET
"SET DI PAROLE DI PASSAGGIO" è la password che è stata creata.
Quando un utente non riesce ad accedere, vedrà il seguente messaggio di errore.
(error) NOAUTH Authentication required.
Quando un utente accede correttamente, vedrà il seguente messaggio.
OK
Al termine, salva le modifiche CTRL+O quindi esci da CTRL+X . Ora riavvia il servizio Redis digitando:
sudo systemctl restart redis-server
Configura le regole UFW
Se utilizzi il firewall UFW installato per impostazione predefinita sulle distribuzioni Ubuntu, dovrai creare regole di autorizzazione sulla porta TCP 6379. A seconda della tua installazione e dei requisiti se utilizzi una rete singola o in cluster, di seguito sono riportati alcuni esempi:
Istanza server IP di rete aggiuntiva:
sudo ufw allow proto tcp from <ip address> to any port 6379
Rete cluster con molte istanze:
sudo ufw allow proto tcp from <ip address>/24 to any port 6379
Nota, la seconda regola UFW è una regola di sottorete. Nota, assicurati che la rete interna sia sicura e affidabile prima di consentirla.
Ora, poiché hai testato all'inizio della guida eseguendo il ping del tuo servizio Redis per assicurarti che fosse operativo, puoi provare le regole del firewall e le modifiche nell'IP utilizzando “redis-cli” comando:
redis-cli -h <ip address> ping
Se impostato correttamente, l'output dovrebbe essere:
pong