In questo tutorial impareremo come installare Redis 6 su Fedora 34.
Contenuti correlati
- Come installare e configurare Redis 6 su FreeBSD 13
- Come installare e configurare Redis 6 su OpenSUSE Leap 15.3
- Come eseguire Redis 6 con Docker e Docker-Compose
- Come installare e configurare Postgres 14 su Fedora 34
- Cose da fare su una nuova installazione desktop di Fedora 34
Prerequisiti
Per seguire, assicurati di avere:
- Un server Fedora 34 aggiornato
- Accesso a Internet
- Accesso root al server o utente con accesso sudo
Indice dei contenuti
- Aggiorna il server Fedora 34
- Installazione di Redis
- Configurazione di Redis
- Collegamento ed esecuzione di operazioni di base in Redis
- Esecuzione del benchmark Redis
1. Aggiorna Fedora 34 Server
Prima di procedere, assicurati che il server sia aggiornato utilizzando questo comando:
sudo dnf -y update
Assicuriamoci anche che vim sia installato usando questo comando poiché lo useremo in seguito:
sudo dnf install -y vim
2. Installazione di redis
Redis è disponibile nei repository Fedora 34 predefiniti. Per installarlo, usa questo comando:
sudo dnf install redis
Utilizzare questo comando per confermare il pacchetto redis installato:
# rpm -qi redis
Name : redis
Version : 6.2.6
Release : 1.fc34
Architecture: x86_64
Install Date: Thu 28 Oct 2021 07:22:18 PM UTC
Group : Unspecified
Size : 4939623
License : BSD and MIT
Signature : RSA/SHA256, Mon 04 Oct 2021 02:11:42 PM UTC, Key ID 1161ae6945719a39
Source RPM : redis-6.2.6-1.fc34.src.rpm
Build Date : Mon 04 Oct 2021 02:04:48 PM UTC
Build Host : buildvm-x86-25.iad2.fedoraproject.org
Packager : Fedora Project
Vendor : Fedora Project
URL : https://redis.io
Bug URL : https://bugz.fedoraproject.org/redis
Summary : A persistent key-value database
Description :
Redis is an advanced key-value store. It is often referred to as a data
structure server since keys can contain strings, hashes, lists, sets and
sorted sets.
You can run atomic operations on these types, like appending to a string;
incrementing the value in a hash; pushing to a list; computing set
intersection, union and difference; or getting the member with highest
ranking in a sorted set.
In order to achieve its outstanding performance, Redis works with an
in-memory dataset. Depending on your use case, you can persist it either
by dumping the dataset to disk every once in a while, or by appending
each command to a log.
Redis also supports trivial-to-setup master-slave replication, with very
fast non-blocking first synchronization, auto-reconnection on net split
and so forth.
Other features include Transactions, Pub/Sub, Lua scripting, Keys with a
limited time-to-live, and configuration settings to make Redis behave like
a cache.
You can use Redis from most programming languages also.
Ora che il servizio è stato installato, avviamolo con questo comando:
sudo systemctl start redis
Abilita il servizio in modo che si avvii all'avvio:
$ sudo systemctl enable redis
Created symlink /etc/systemd/system/multi-user.target.wants/redis.service → /usr/lib/systemd/system/redis.service.
Dopo l'avvio del servizio, utilizzare questo comando per verificare lo stato del servizio:
$ sudo systemctl status redis
● redis.service - Redis persistent key-value database
Loaded: loaded (/usr/lib/systemd/system/redis.service; disabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/redis.service.d
└─limit.conf
Active: active (running) since Thu 2021-10-28 19:34:31 UTC; 9s ago
Main PID: 27610 (redis-server)
Status: "Ready to accept connections"
Tasks: 5 (limit: 4603)
Memory: 2.1M
CPU: 22ms
CGroup: /system.slice/redis.service
└─27610 /usr/bin/redis-server 127.0.0.1:6379
Oct 28 19:34:31 ip-10-2-40-182.us-west-2.compute.internal systemd[1]: Starting Redis persistent key-value database...
Oct 28 19:34:31 ip-10-2-40-182.us-west-2.compute.internal systemd[1]: Started Redis persistent key-value database.
Il Active: active (running)
significa che il servizio è stato avviato correttamente.
3. Configurazione di Redis
Il file di configurazione di redis si trova in questo percorso /etc/redis/redis.conf
. In questa sezione, aggiorneremo il file di configurazione redis per consentire l'accesso remoto, per impostare una password di autenticazione, per aggiungere un file pid e per Imposta archivio persistente per il ripristino.
Modifica il file di configurazione redis usando questo:
sudo vim /etc/redis/redis.conf
Per consentire l'accesso remoto all'istanza redis, associare redis a 0.0.0.0 utilizzando questa riga:
bind 0.0.0.0
Per impostare la password in redis, usa questo:
requirepass j2GfJuLFR8
Per aggiungere un file pid a redis:
pidfile /var/run/redis/redis-server.pid
Imposta l'archivio persistente per il ripristino modificando appendonlyvalue su yes
appendonly yes
appendfilename "appendonly.aof"
Riavvia il servizio redis per applicare le modifiche:
sudo systemctl restart redis
4. Connessione ed esecuzione delle operazioni di base in Redis
Se hai un servizio firewalld attivo, consenti la porta 6379
sudo firewall-cmd --add-port=6379/tcp --permanent
sudo firewall-cmd --reload
Connessione a redis in locale:
$ redis-cli
Per autenticarsi:
127.0.0.1:6379> auth j2GfJuLFR8
OK
Dovresti ricevere OK
nell'uscita. Se inserisci una password errata, l'autenticazione non dovrebbe riuscire.
Controlla le informazioni redis.
127.0.0.1:6379> INFO
Questo produrrà un lungo elenco di dati. Puoi limitare l'output passando Section come argomento. Es.
127.0.0.1:6379> INFO Server # Server redis_version:6.2.6 redis_git_sha1:00000000 redis_git_dirty:0 redis_build_id:db74a1b227e296fe redis_mode:standalone os:Linux 5.11.12-300.fc34.x86_64 x86_64 arch_bits:64 multiplexing_api:epoll atomicvar_api:atomic-builtin gcc_version:11.2.1 process_id:27781 process_supervised:systemd run_id:9ba7b7785f0905ecc4dc3a6ecda2ffe5beaec53a tcp_port:6379 server_time_usec:1635451060104781 uptime_in_seconds:241 uptime_in_days:0 hz:10 configured_hz:10 lru_clock:8061108 executable:/usr/bin/redis-server config_file:/etc/redis/redis.conf io_threads_active:0
5. Esecuzione del benchmarking Redis
Esegui il benchmark con 15
connessioni parallele, per un totale di 10k
richieste, contro redis locali per testarne le prestazioni.
$ redis-benchmark -h 127.0.0.1 -p 6379 -n 10000 -c 15 -a j2GfJuLFR8
====== PING_INLINE ======
10000 requests completed in 0.23 seconds
15 parallel clients
3 bytes payload
keep alive: 1
host configuration "save": 3600 1 300 100 60 10000
host configuration "appendonly": no
multi-thread: no
Latency by percentile distribution:
0.000% <= 0.055 milliseconds (cumulative count 2)
50.000% <= 0.127 milliseconds (cumulative count 5509)
75.000% <= 0.159 milliseconds (cumulative count 7514)
..........
99.940% <= 0.503 milliseconds (cumulative count 9994)
100.000% <= 0.607 milliseconds (cumulative count 10000)
Summary:
throughput summary: 74074.07 requests per second
latency summary (msec):
avg min p50 p95 p99 max
0.159 0.072 0.151 0.239 0.279 0.567
Per ulteriori opzioni ed esempi, usa:
$ redis-benchmark --help
Conclusione
Siamo riusciti a installare e configurare Redis 6 in Fedora 34.