GNU/Linux >> Linux Esercitazione >  >> Linux

Come installare Redis su CentOS 7

Redis è un database open source particolarmente veloce grazie ai suoi dati che possono essere salvati sia sulla memoria che sul disco. Rappresenta una delle migliori soluzioni per lo sviluppo di applicazioni che richiedono l'elaborazione dei dati in tempo reale.

Questo tutorial fornisce una spiegazione dettagliata di come installare e configurare il database Redis su un server con distribuzione Linux CentOS 7 e di come migliorare la sicurezza del database e creare un'installazione di replica.

Per prima cosa, connettiti al tuo server tramite una connessione SSH. Se non l'hai ancora fatto, ti consigliamo di seguire la nostra guida per connetterti in sicurezza con il protocollo SSH. Nel caso di un server locale, vai al passaggio successivo e apri il terminale del tuo server.

Installazione di Redis

Per installare Redis, usa il gestore di pacchetti yum:

$ sudo yum install redis

Una volta completata l'installazione, avvia il servizio e installalo sul sistema:

$ sudo systemctl start redis

$ sudo systemctl enable redis

Verifica dell'installazione

Per verificare la corretta installazione di Redis, usa il client a riga di comando redis-cli, impostando un valore di test nel tuo database:

$ redis-cli set test 123456

OK

Se tutto funziona correttamente, il server risponderà con "OK". Pertanto, controlla se il valore è stato salvato correttamente:

$ redis-cli get test

"123456"

Redis restituirà il valore appena salvato (in questo caso la stringa "123456"). Quindi, elimina questa chiave di prova:

$ redis-cli del test

(integer) 1

Migliorare la sicurezza della tua installazione

La configurazione iniziale di Redis permette di connettersi al database solo da un indirizzo locale e senza richiedere alcuna password o forma di autenticazione.

Tutte le impostazioni Redis vengono lette dal file di configurazione in /etc/redis.conf e possono essere sovrascritte in qualsiasi momento e in tempo reale, utilizzando qualsiasi software client tramite i comandi CONFIG SET / CONFIG GET. Ricorda però che le impostazioni modificate dal client non vengono salvate nel file di configurazione e, , andranno perse al successivo avvio di Redis. .

Per migliorare la sicurezza del tuo database, imposta una password di autenticazione, modificando o inserendo la voce requirepass nel file di configurazione:

requirepass 5eMX822gZ0lCGdd81rSIrTvPCUfeEFYAUIgyJNs4

La password viene salvata nel file di configurazione in chiaro e deve essere abbastanza lunga da resistere agli attacchi bruteforce poiché Redis è in grado di gestire più connessioni al secondo.

Tra le impostazioni più importanti troviamo anche il bind che imposta che all'indirizzo Redis deve abilitare la ricezione delle connessioni:

bind 127.0.0.1

Solo l'indirizzo locale 127.0.0.1 è abilitato per impostazione predefinita. Tuttavia, se è necessario esporre il server Redis all'esterno, è possibile aggiungere ulteriori indirizzi, come:

bind 127.0.0.1 51.125.63.201

Un altro errore comune è lasciare la porta predefinita impostata per ascoltare le connessioni in entrata. Ciò consente a qualsiasi software di scansione delle porte di individuare il server Redis.

port 2589

Modificando la porta da 6379 a 2589, il servizio Redis può essere nascosto e aggiungere un ulteriore livello di sicurezza alla tua installazione.

Dopo aver completato tutte le modifiche al file di configurazione, riavvia il servizio:

$ sudo systemctl restart redis

Per verificare i parametri appena applicati, utilizzare redis-cli per ottenere, ad esempio, il parametro di binding corrente, utilizzando la nuova porta configurata e la password impostata sopra:

$ redis-cli -a 5eMX822gZ0lCGdd81rSIrTvPCUfeEFYAUIgyJNs4 -p 2589 config get bind

Il server dovrebbe rispondere con i parametri richiesti:

1) "bind"

2) "127.0.0.1"

Creazione di un'installazione di replica

Redis consente di configurare un server di replica (copia) in pochi passaggi. Rispetto alla versione master, questo server di replica viene aggiornato in tempo reale.

Attraverso questa configurazione può essere offerto un servizio di backup per la lettura in caso di malfunzionamento del server principale.

Dopo esserti connesso al server secondario slave, completa l'installazione di Redis usando yum:

$ sudo yum install redis

Le stesse procedure di sicurezza del paragrafo precedente possono essere applicate anche per proteggere questa istanza Redis. Nell'esempio seguente verranno utilizzati i parametri predefiniti.

Per essere sincronizzata con il server principale (master), la macchina slave deve comunicare correttamente con la macchina master. Verificare che nella configurazione della macchina master sia presente l'indirizzo IP pubblico (parametro bind) e verificare se la connessione funziona avviando il comando dalla macchina slave:

$ redis-cli -h [MASTER_IP_ADDRESS] -a [PASSWORD_MASTER] ping

PONG

Se viene fornita una risposta al comando ping, lo slave è in grado di comunicare correttamente.

Procedere quindi con la configurazione vera e propria dello slave, modificando i seguenti parametri nel file di configurazione /etc/redis.conf:

# If it is there, specify the master connection password too. 
masterauth password
                # The slaveof directory specifies the master connection parameters (ADDRESS_IP PORT) 
slaveof 195.231.4.71 6379

Al termine, salva la configurazione e avvia il server slave Redis, digitando:

$ sudo systemctl start redis

$ sudo systemctl enable redis

Per verificare che la sincronizzazione sia stata attivata correttamente, utilizzare tail per visualizzare le ultime righe del file di log del servizio:

$ tail /var/log/redis/redis.log

6345:S 02 Jul 10:53:46.695 * MASTER <-> SLAVE sync: receiving 77 bytes from master

6345:S 02 Jul 10:53:46.695 * MASTER <-> SLAVE sync: Flushing old data

6345:S 02 Jul 10:53:46.695 * MASTER <-> SLAVE sync: Loading DB in memory

6345:S 02 Jul 10:53:46.695 * MASTER <-> SLAVE sync: Finished with success

Le ultime righe confermano che la sincronizzazione è attiva e funziona correttamente.

Quindi, esegui un vero test, impostando un valore nel tuo database e verificando che sia letto correttamente dal server master.

Imposta la chiave di prova dal server principale:

$ redis-cli -a password set test hello

OK

lo stesso valore viene letto dal server slave:

$ redis-cli get test

"hello"

Come puoi vedere, sia master che slave hanno memorizzato lo stesso valore. Ciò significa che la replica funziona correttamente!


Linux
  1. Come installare ClickHouse su CentOS 7

  2. Come installare il server Minecraft su CentOS 7

  3. Come installare Teamspeak 3 Server su CentOS 8

  4. Come installare il server Redis su CentOS 8

  5. Come installare Redis Server su Debian 11

Come installare Redis su CentOS 7

Come installare Nginx su CentOS 7

Come installare Webmin su CentOS 7

Come installare ownCloud su CentOS 7

Come installare MyWebSQL su CentOS 8

Come installare WordPress su un server CentOS 8