Sådan installeres Redis Server i CentOS og Debian-baserede systemer


Redis er en open-source, højtydende og fleksibel lagring af datastruktur i hukommelsen (nøgleværdiformat) - bruges som database, cache og beskedmægler. Den er skrevet i ANSI C og kører på de fleste, hvis ikke alle Unix-lignende operativsystemer inklusive Linux (anbefales til implementering) uden eksterne afhængigheder.

Den er funktionsrig, understøtter flere programmeringssprog og datastrukturer, herunder strenge, hashes, lister, sæt, sorterede sæt med rækkeforespørgsler, bitmaps blandt andre.

  • Understøtter de fleste programmeringssprog inklusive C, Bash, Python, PHP, Node.js, Perl, Ruby for blot at nævne nogle få.
  • Har iboende replikering, Lua-scripting, LRU-udsættelse, transaktioner samt varierende niveauer af persistens på disken.
  • Giver høj tilgængelighed gennem Redis Sentinel og automatisk partitionering via Redis Cluster.
  • Understøtter kørende atomoperationer.
  • Det fungerer med et hukommelsesdatasæt for at opnå enestående ydeevne.
  • Understøtter trivial-til-opsætning master-slave asynkron replikering.
  • Understøtter automatisk failover.
  • Gør det muligt at gemme datasættet på disken sjældent i en given periode eller ved at tilføje hver kommando til en log.
  • Tillader valgfri deaktivering af vedholdenhed.
  • Understøtter publicering/abonnement på beskeder.
  • Det understøtter også MULTI-, EXEC-, DISCARD- og WATCH-transaktioner og mange flere.

  1. En RHEL 7-server med minimal installation
  2. En Debian-server med minimal installation
  3. GCC-kompilator og libc

I denne vejledning giver vi instruktioner om, hvordan du installerer en Redis Server fra kilde (som er den anbefalede metode) i Linux. Vi viser også, hvordan du konfigurerer, administrerer og sikrer Redis. Da Redis serverer alle data fra hukommelsen, foreslår vi kraftigt, at du bruger en VPS-server med høj hukommelse sammen med denne vejledning.

Trin 1: Installer Redis Server fra kilde

1. Installer først de krævede buildafhængigheder.

--------------- On CentOS / RHEL / Fedora --------------- 
# yum groupinstall "Development Tools"
# dnf groupinstall "Development Tools"

--------------- On Debian / Ubuntu --------------- 
$ sudo apt install build-essential

2. Derefter skal du downloade og kompilere den seneste stabile Redis-version ved hjælp af den specielle URL, der altid peger på den seneste stabile Redis ved hjælp af wget-kommandoen.

$ wget -c http://download.redis.io/redis-stable.tar.gz
$ tar -xvzf redis-stable.tar.gz
$ cd redis-stable
$ make 
$ make test
$ sudo make install

3. Efter Redis-kompilering er src -mappen inde i Redis-distributionen befolket med de forskellige følgende eksekverbare filer, der er en del af Redis:

  • redis-server - redis-server.
  • redis-sentinel - redis sentinel eksekverbar (overvågning og failover).
  • redis-cli - et CLI-værktøj til at interagere med redis.
  • redis-benchmark - bruges til at kontrollere redis-præstationer.
  • redis-check-aof og redis-check-dump - nyttigt i sjældne tilfælde af beskadigede datafiler.

Trin 2: Konfigurer Redis Server i Linux

4. Dernæst skal du konfigurere Redis til et udviklingsmiljø, der skal styres af init-systemet (systemd med henblik på denne tutorial). Start med at oprette de nødvendige mapper til lagring af Redis-konfigurationsfiler og dine data:

$ sudo mkdir /etc/redis
$ sudo mkdir -p /var/redis/

4. Kopier derefter den medfølgende Redis-konfigurationsfil til den mappe, du oprettede ovenfor.

$ sudo cp redis.conf /etc/redis/

5. Åbn nu konfigurationsfilen, og opdater nogle få indstillinger som følger.

$ sudo vi /etc/redis/redis.conf

6. Søg derefter efter følgende muligheder, og skift derefter (eller brug) deres standardværdier i henhold til dine lokale miljøbehov.

port  6379				#default port is already 6379. 
daemonize yes				#run as a daemon
supervised systemd			#signal systemd
pidfile /var/run/redis.pid 		#specify pid file
loglevel notice				#server verbosity level
logfile /var/log/redis.log		#log file name
dir  /var/redis/			#redis directory

Trin 3: Opret Redis Systemd-enhedsfil

7. Nu skal du oprette en systemd-enhedsfil til redis for at kontrollere dæmonen ved at køre følgende kommando.

$ sudo vi /etc/systemd/system/redis.service

Og tilføj konfigurationen nedenfor:

[Unit]
Description=Redis In-Memory Data Store
After=network.target

[Service]
User=root
Group=root
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always
Type=forking

[Install]
WantedBy=multi-user.target

Gem og luk filen.

Trin 4: Administrer og test Redis Server i Linux

8. Når du har udført alle de nødvendige konfigurationer, kan du nu starte Redis-serveren, indtil videre, aktivere den til automatisk start ved systemstart; se derefter dens status som følger.

$ sudo systemctl start redis
$ sudo systemctl enable redis
$ sudo systemctl status redis

9. Test derefter, om hele redis-opsætningen fungerer fint. Brug kommandoen redis-cli til at interagere med redis-serveren. Når du har oprettet forbindelse til serveren, skal du prøve at køre et par kommandoer.

$ redis-cli
Test connection to server using ping command:
127.0.0.1:6379> ping
Use the echo command to echo a given string:
127.0.0.1:6379> echo "Tecmint is testing Redis"
You can also set a key value using the set command like this:
127.0.0.1:6379> set mykey "Tecmint is testing Redis"
Now view the value of mykey:
127.0.0.1:6379> get mykey

10. Luk derefter forbindelsen med kommandoen exit , og genstart redis-serveren. Kontroller derefter, om mykey stadig er gemt på serveren som vist nedenfor:

127.0.0.1:6379> exit
$ sudo systemctl restart redis
$ redis-cli
127.0.0.1:6379> get mykey

11. For at slette en nøgle skal du bruge slettekommandoen som følger:

127.0.0.1:6379> del mykey
127.0.0.1:6379> get mykey

Trin 5: Sikring af Redis Server i Linux

12. Dette afsnit er beregnet til brugere, der har til hensigt at bruge en redis-server, der er forbundet til et eksternt netværk som Internettet.

Vigtigt: At udsætte redis til internettet uden nogen sikkerhed gør det ekstremt let at udnytte; sikre derfor redis-serveren som følger:

  • bloker forbindelser til redis-porten i systemets firewall
  • indstil bind direktiv til loopback-interface: 127.0.0.1
  • indstil mulighed for kravtilpasning, så klienter skal godkendes ved hjælp af kommandoen AUTH.
  • opsæt SSL-tunneling for at kryptere trafik mellem Redis-servere og Redis-klienter.

For mere information om brug skal du køre kommandoen nedenfor:

$ redis-cli -h

Du kan finde flere serverkommandoer og lære at bruge redis i din applikation fra Redis-hjemmesiden: https://redis.io/

I denne vejledning viste vi, hvordan du installerer, konfigurerer, administrerer såvel som sikker Redis i Linux. Brug kommentarformularen nedenfor for at dele tanker.