Hvordan installere Redis Server i CentOS og Debian-baserte systemer


Redis er en åpen kildekode, høy ytelse og fleksibel datastrukturlager i minnet (nøkkelverdi-format) – brukt som database-, hurtigbuffer- og meldingsmegler. Den er skrevet i ANSI C og kjører på de fleste om ikke alle Unix-lignende operativsystemer inkludert Linux (anbefalt for utrulling) uten eksterne avhengigheter.

Den er funksjonsrik, støtter flere programmeringsspråk og datastrukturer, inkludert strenger, hashes, lister, sett, sorterte sett med rekkeviddespørringer, punktgrafikk blant andre.

Redis-funksjoner:

  • Støtter de fleste programmeringsspråk inkludert C, Bash, Python, PHP, Node.js, Perl, Ruby bare for å nevne noen få.
  • Har iboende replikering, Lua-skripting, LRU-utkastelse, transaksjoner samt varierende nivåer av utholdenhet på disken.
  • Gir høy tilgjengelighet gjennom Redis Sentinel og automatisk partisjonering via Redis Cluster.
  • Støtter kjører atomoperasjoner.
  • Den fungerer med et datasett i minnet for å oppnå bemerkelsesverdig ytelse.
  • Støtter trivielt-til-oppsett master-slave asynkron replikering.
  • Støtter automatisk failover.
  • Gjør det mulig å lagre datasettet på disk sjelden i en gitt tidsperiode, eller ved å legge til hver kommando i en logg.
  • Tillater valgfri deaktivering av utholdenhet.
  • Støtter publiser/abonner på meldinger.
  • Den støtter også MULTI, EXEC, DISCARD og WATCH transaksjoner og mange flere.

Krav:

  1. En CentOS 7 Server og RHEL 7 Server med minimal installasjon
  2. En Ubuntu-server eller Debian-server med minimal installasjon
  3. GCC-kompilator og libc

I denne opplæringen vil vi gi instruksjoner om hvordan du installerer en Redis Server fra kilden (som er den anbefalte metoden) i Linux. Vi vil også vise hvordan du konfigurerer, administrerer og sikrer Redis. Siden Redis serverer all data fra minnet, anbefaler vi på det sterkeste å bruke en VPS-server med høyt minne med denne veiledningen.

Trinn 1: Installer Redis Server fra kilden

1. Installer først de nødvendige byggeavhengighetene.

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

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

2. Deretter laster du ned og kompilerer den siste stabile Redis-versjonen ved å bruke den spesielle URL-adressen som alltid peker til den siste stabile Redis ved å bruke 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. Etter Redis-kompileringen er src-katalogen i Redis-distribusjonen fylt med de forskjellige følgende kjørbare filene som er en del av Redis:

  • redis-server – redis-server.
  • redis-sentinel – redis sentinel kjørbar (overvåking og failover).
  • redis-cli – et CLI-verktøy for å samhandle med redis.
  • redis-benchmark – brukes til å sjekke redis-prestasjoner.
  • redis-check-aof og redis-check-dump – nyttig i det sjeldne tilfellet med korrupte datafiler.

Trinn 2: Konfigurer Redis Server i Linux

4. Deretter må du konfigurere Redis for et utviklingsmiljø som skal administreres av init-systemet (systemd for formålet med denne opplæringen) . Start med å lage de nødvendige katalogene for lagring av Redis-konfigurasjonsfiler og dataene dine:

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

4. Kopier deretter malen Redis-konfigurasjonsfilen som følger med, til katalogen du opprettet ovenfor.

sudo cp redis.conf /etc/redis/

5. Åpne nå konfigurasjonsfilen og oppdater noen innstillinger som følger.

sudo vi /etc/redis/redis.conf

6. Søk deretter etter følgende alternativer, og endre (eller bruk) standardverdiene 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

Trinn 3: Lag Redis Systemd Unit File

7. Nå må du lage en systemd enhetsfil for redis for å kontrollere daemonen, ved å kjøre følgende kommando.

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

Og legg til konfigurasjonen 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

Lagre og lukk filen.

Trinn 4: Administrer og test Redis Server i Linux

8. Når du har utført alle nødvendige konfigurasjoner, kan du nå starte Redis-serveren, for nå, la den automatisk starte ved systemoppstart; deretter se statusen som følger.

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

9. Deretter tester du om hele redis-oppsettet fungerer bra. For å samhandle med redis-serveren, bruk redis-cli-kommandoen. Etter å ha koblet til serveren, prøv å kjøre noen 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. Lukk deretter tilkoblingen med kommandoen exit, og start redis-serveren på nytt. Etterpå, sjekk om mykey fortsatt er lagret 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 å slette en nøkkel, bruk delete-kommandoen som følger:

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

Trinn 5: Sikring av Redis Server i Linux

12. Denne delen er ment for brukere som har tenkt å bruke en redis-server koblet til et eksternt nettverk som Internett.

Viktig: Å eksponere redis for Internett uten sikkerhet gjør det ekstremt enkelt å utnytte; sikre derfor redis-serveren som følger:

  • blokkere tilkoblinger til redis-porten i systemets brannmur
  • sett bindedirektiv til loopback-grensesnitt: 127.0.0.1
  • angi requirepass-alternativet slik at klienter vil bli pålagt å autentisere ved hjelp av AUTH-kommandoen.
  • oppsett SSL-tunneling for å kryptere trafikk mellom Redis-servere og Redis-klienter.

For mer informasjon om bruk, kjør kommandoen nedenfor:

redis-cli -h

Du kan finne flere serverkommandoer og lære hvordan du bruker redis i applikasjonen din fra Redis-hjemmesiden: https://redis.io/

I denne opplæringen viste vi hvordan du installerer, konfigurerer, administrerer og sikrer Redis i Linux. For å dele noen tanker, bruk kommentarskjemaet nedenfor.