Sådan installeres Redis på Debian 12, 11 eller 10

Redis er en open source-datastrukturbutik i hukommelsen, der i vid udstrækning bruges som database-, cache- og meddelelsesmægler. Dens høje ydeevne og fleksibilitet gør den til et populært valg i forskellige teknologisektorer. Denne vejledning er til dig, hvis du vil installere Redis på Debian 12 Bookworm, Debian 11 Bullseye eller Debian 10 Buster.

Nøglefunktioner i Redis

  • Hurtig dataadgang: Redis gemmer data i hukommelsen, hvilket resulterer i hurtig hentning. Dette gør den ideel til cache-applikationer.
  • Flere datastrukturer: I modsætning til traditionelle tabelbaserede databaser understøtter Redis forskellige datastrukturer som strenge, hashes, lister og sæt.
  • Realtidsmeddelelser: Redis tilbyder Udgiv/Abonner-meddelelsesmønstre, hvilket muliggør applikationskommunikation i realtid.
  • Datapersistens: Selvom Redis primært er en database i hukommelsen, giver Redis mulighed for periodisk datalagring på disk, hvilket giver en balance mellem hastighed og holdbarhed.
  • Skalerbarhed og tilgængelighed: Funktioner som replikering, sharding og Redis Sentinel sikrer høj tilgængelighed og skalerbarhed på tværs af flere noder.

Almindelige brugssager for Redis

  • Caching: Redis bruges almindeligvis til at cache ofte tilgåede data, hvilket fremskynder hentningstiderne.
  • Sessionsopbevaring: Den er velegnet til lagring af brugersessionsdata, især i webapplikationer med høj trafik.
  • Message Queuing: Pub/sub-kapaciteterne gør Redis til et fremragende valg til systemer til meddelelseskø.

Forståelse af Redis's muligheder kan forbedre din teknologistak betydeligt. Den kommende guide vil detaljere, hvordan du installerer Redis på Debian 12 Bookworm, Debian 11 Bullseye eller Debian 10 Buster. Vi vil dække to installationsmetoder: en ved at bruge Debians standardlager og en anden ved at bruge det officielle Redis-lager til den seneste version. Begge metoder vil bruge Command Line Interface (CLI) kommandoer. Hold øje med trin-for-trin instruktionerne.

Trin til forudinstallation med Redis-installation

Opdater Debians systempakker

Før du installerer Redis eller anden software, er det første skridt at sikre, at dit systems pakker er opdaterede. Dette kritiske indledende trin hjælper med at afbøde potentielle konflikter under den efterfølgende installationsproces. Det sikrer, at alle systemafhængigheder er aktuelle, hvilket minimerer potentielle problemer, der opstår fra forældede softwarepakker.

I et Debian-system kan du gøre dette ved at køre følgende kommando i terminalen:

sudo apt update && sudo apt upgrade

Installer nødvendige pakker til Redis-installation

Når Debian-systempakkerne er opdaterede, skal du installere specifikke softwarepakker, der er nødvendige for Redis-installationen.

Du kan installere disse pakker ved at køre følgende kommando:

sudo apt install software-properties-common apt-transport-https curl ca-certificates -y

Lad os dissekere denne kommando for at forstå den bedre:

  • sudo apt install: Denne kommando bruges til at installere pakker på dit Debian-system.
  • software-properties-common: Denne pakke indeholder specifikke scripts til sikker administration af software og kildekode.
  • apt-transport-https: Denne pakke er nødvendig for at apt-pakkeadministratoren kan hente pakker over 'https'-protokollen.
  • curl: Dette er et kommandolinjeværktøj til overførsel af data ved hjælp af forskellige netværksprotokoller. Det hjælper blandt andet med at downloade filer.
  • ca-certificates: Denne pakke er nødvendig for at verificere sikkerheden på websteder. Det giver et sæt certificeringsmyndigheder (CA) certifikater.
  • -y: Denne mulighed svarer automatisk "ja" til alle meddelelser under installationen.

Vælg Redis installationsmetode

Mulighed 1: Installer Redis med APT Debian Repository

Selvom Debian inkluderer Redis i sit standardsoftwareudbud, er versionen muligvis ikke den nyeste. Debian favoriserer stabilitet og leverer generelt kun sikkerhed eller væsentlige opdateringer. Dette kan gøre Redis-versionen på Debian ældre, men uden tvivl mere stabil. Dette kan være den perfekte rute, hvis din påtænkte brug af Redis ikke kræver de nyeste funktioner.

For at installere Redis via denne metode, skal du udføre følgende kommando i din terminal:

sudo apt install redis

Det sudo kommandoen giver superbrugerrettigheder, mens apt install redis installerer Redis-softwarepakken på dit Debian-system.

Mulighed 2: Installer Redis med Redis.io APT Repository

Den anden metode kan være mere tiltalende for dem, der kræver eller ønsker den mest opdaterede version af Redis. Det involverer import af APT-lageret fra det officielle Redis.io-lager. Dette lager modtager regelmæssigt fejlrettelser, sikkerhedsrettelser og funktionsopdateringer.

Importer Redis.io-lageret

Importer først GPG-nøglen. GPG, eller GNU Privacy Guard, hjælper med sikker kommunikation og datalagring. GPG-nøglen verificerer datakilden og sikrer, at ingen har ændret den under download.

Brug denne kommando til at importere GPG-nøglen:

curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg

Dernæst importerer vi lageret med følgende kommando:

echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list

Opdater pakkeindeks efter Redis.io APT-import

Med det nye lager tilføjet, skal du opdatere dit systems pakkeindeks for at kende de tilgængelige pakker fra den nye kilde. Gør dette ved at køre følgende kommando:

sudo apt-get update

Installer Redis via APT Command

Med alt sat op kan du installere Redis fra Redis.io-lageret. Hvis du allerede havde Redis installeret fra Debian-depotet, vil du muligvis se en opgradering i stedet. Følgende kommando installerer Redis sammen med Redis-serveren og værktøjer:

sudo apt install redis redis-server redis-tools

Bekræft Redis-installationen

Efter installationen er det altid en god idé at verificere installationen. Du kan gøre dette med apt-cache policy kommando, der bekræfter, at du har installeret Redis.io-versionen. Sådan bruger du det:

apt-cache policy redis

Brug følgende kommando til at aktivere Redis-forekomsten og indstille den til at starte under systemstart:

sudo systemctl enable redis-server --now

For at kontrollere, at Redis kører uden fejl, skal du bruge denne kommando:

systemctl status redis-server

Denne kommando giver information om redis-server service, som nu skulle køre.

Inspicering af Redis: Bekræftelser efter installation på Debian

Lytteporte

Som standard lytter Redis på localhost ved hjælp af port 6379. For at sikre, at Redis faktisk lytter aktivt som forventet, skal du bruge følgende kommando:

ps -ef | grep redis

Denne kommando viser kørende processer, der involverer Redis, som bør afspejle Redis lyttestatus på port 6379.

Ping tester Redis-tjenesten

En ping-test er en af ​​de enkleste måder at bekræfte, at din Redis-tjeneste er operationel. Dette vil etablere en forbindelse til din Redis-tjeneste og bekræfte, at den er oppe, kører og klar til at reagere på kommandoer.

Først skal du oprette forbindelse til Redis-tjenesten med følgende kommando:

redis-cli

Efter at have kørt denne kommando, skal din terminal vises 127.0.0.1:6379, hvilket indikerer, at du er forbundet til Redis på den lokale vært. Nu kan du pinge Redis-tjenesten som følger:

ping

Forlader Redis-instansen

Når du har gennemført verifikationskontrollen og bekræftet, at Redis fungerer korrekt, skal du afslutte Redis-forekomsten ved at skrive:

exit

Vi har med succes installeret Redis på et Debian-system, enten ved at bruge Debians APT-lager eller det officielle Redis.io APT-lager.

Konfigurer og opsæt Redis

Redis skiller sig ud på grund af sin fleksibilitet og evne til at passe til forskellige behov. Dette afsnit guider dig til at justere Redis til caching og netværksadgang og tilføje en adgangskode for øget sikkerhed.

Adgang til Redis-konfigurationsfilen

Rejsen med at skræddersy Redis begynder med Redis-konfigurationsfilen, der findes på /etc/redis/redis.conf. Du skal åbne denne fil ved hjælp af en teksteditor som f.eks nano.

Kør følgende kommando for at gøre:

sudo nano /etc/redis/redis.conf

Udpegning af maksimal hukommelse til cachelagring

En use case for Redis er caching af data for at øge applikationens ydeevne. For at angive en specifik mængde hukommelse til dette formål i Redis skal du tilføje følgende linjer efter konfigurationsfilen:

maxmemory 500mb 
maxmemory-policy allkeys-lru

I dette scenarie har vi allokeret 500 MB hukommelse til Redis. Du er velkommen til at justere denne mængde baseret på din servers specifikationer og din applikations krav.

Når den tildelte hukommelse når kapacitet, fjerner Redis nøgler i henhold til politikken for mindst nyligt brugt (LRU).

Opsætning af netværksadgang

Som standard lytter Redis kun på den lokale værtsgrænseflade. Du kan ændre denne indstilling for at tillade Redis at lytte på alle grænseflader eller specifikke IP-adresser/undernet.

Find først linje 69 i konfigurationsfilen.

Mulighed 1: Lytte til alle netværksgrænseflader

For at få Redis til at lytte på alle netværksgrænseflader, kan du kommentere bind linje ved at tilføje en # ved begyndelsen:

# bind 127.0.0.1 ::1

Mulighed 2: Binding til en specifik IP-adresse eller undernet

For at binde Redis til en specifik IP-adresse eller undernet skal du erstatte bind linje med din foretrukne IP eller subnet:

bind 0.0.0.0/0

eller

bind 192.150.5.0/24

Når du binder Redis til en IP-adresse eller et undernet, anbefales det kraftigt, at en adgangskode håndhæves for at øge sikkerheden.

Håndhævelse af adgangskodegodkendelse

For at tilføje et ekstra lag af beskyttelse til din Redis-instans kan du indstille en adgangskode til godkendelse.

Søg efter linjen, der starter med # requirepass (omkring linje 507), fjern kommenterer og indstil en stærk adgangskode:

requirepass YourStrongPasswordHere

Erstatte YourStrongPasswordHere med en robust adgangskode, der inkluderer en blanding af store og små bogstaver, tal og specielle symboler.

Forpligtelse af ændringer og genstart af Redis

Når du har foretaget de nødvendige justeringer af konfigurationsfilen, skal du gemme dine ændringer ved at trykke på Ctrl + O, og forlad derefter nano redaktør ved at trykke på Ctrl + X.

Til sidst skal du genstarte Redis-tjenesten for at aktivere de nye indstillinger:

sudo systemctl restart redis

Denne kommando anmoder systemet om at standse Redis-tjenesten og straks starte den op igen, og dermed sikre, at Redis fungerer under de nye konfigurationsparametre, du har indstillet.

For at sikre, at Redis-tjenesten blev genstartet med succes og kører korrekt, kan du kontrollere tjenestens status ved at udføre følgende kommando:

sudo systemctl status redis

Denne kommando returnerer information om Redis-tjenesten, inklusive dens status (aktiv eller inaktiv), oppetid og logmeddelelser, som du måske har set tidligere, da du bekræftede installationen.

Konfigurer en firewall til Redis med UFW

Sikring af din Redis-server kræver opsætning af en robust firewall. Redis inkluderer ikke en firewall som standard. Desuden tilbyder Debian ikke en out-of-the-box firewall-løsning, medmindre du er dygtig til iptables. Men der er en ligetil metode, du kan bruge, selvom du er nybegynder. Denne metode involverer Uncomplicated Firewall (UFW), et brugervenligt firewallværktøj.

Sikring af UFW er installeret

Tjek først, om din Debian-server har UFW. Hvis det ikke gør det, skal du bruge følgende kommando til at installere det:

sudo apt install ufw -y

I denne kommando, sudo bruges til at udføre kommandoen med root-rettigheder, apt install er kommandoen til at installere en pakke, ufw er pakken, der skal installeres, og -y er en mulighed, der automatisk svarer ja til alle prompter, og derved tillader installationen at fortsætte uden yderligere brugerinput.

Aktiverer UFW

Når UFW er installeret, skal det være aktiveret for at begynde at fungere og beskytte dit system. Du kan aktivere UFW med denne kommando:

sudo ufw enable

Denne kommando fortæller UFW at aktivere og anvende de regler, du har angivet eller vil indstille.

Konfiguration af UFW-regler for Redis

Nu hvor UFW er aktiveret, kan du konfigurere det til at beskytte din Redis-server. Du skal muligvis opsætte forskellige firewallregler afhængigt af din specifikke situation, og om din Redis-installation er en selvstændig server eller en del af en klynge.

For en ekstra netværks-IP-serverinstans

Hvis du har en selvstændig Redis-server, som du vil beskytte med UFW, skal du bruge denne kommando:

sudo ufw allow proto tcp from <ip address> to any port 6379

Her erstatter du <ip address> med IP-adressen på den server, hvorfra du vil tillade forbindelser. Denne kommando fortæller UFW at tillade TCP-forbindelser fra denne IP-adresse til ethvert system på port 6379, standardporten for Redis.

Til et klyngenetværk med flere forekomster

Hvis du arbejder med en klynge af Redis-servere, kan du tillade forbindelser fra et helt undernet. For at gøre dette skal du bruge følgende kommando:

sudo ufw allow proto tcp from <ip address>/24 to any port 6379

I denne kommando skal du erstatte <ip address> med IP-adressen på det undernet, hvorfra du vil tillade forbindelser. Bemærk, at denne kommando indebærer betydelig tillid til alle enheder på dette undernet, da den åbner Redis-serveren for dem alle. Brug derfor kun denne kommando, hvis du er sikker på, at dit interne netværk er sikkert.

Bekræftelse af UFW-konfigurationen

Når du har konfigureret dine UFW-regler, er det vigtigt at bekræfte, at de fungerer efter hensigten. Ligesom du pingede din Redis-server i begyndelsen af ​​denne vejledning for at sikre, at den var operationel, kan du også teste dine nye firewall-regler. Du kan gøre dette ved at bruge redis-cli kommando:

redis-cli -h  <ip address> ping

Igen, udskift <ip address> med IP-adressen på din Redis-server. Hvis dine firewall-regler er konfigureret korrekt, og Redis-serveren fungerer som den skal, bør outputtet fra denne kommando være en simpel pong.

I denne kommando, redis-cli er kommandolinjegrænsefladen for Redis, -h angiver værten (din servers IP-adresse), og ping er en kommando til at kontrollere forbindelsen til Redis-serveren.

Fortolkning af output

Outputtet fra redis-cli kommandoen hjælper dig med at bekræfte, om firewall-reglerne fungerer som forventet.

pong

Dette output er et godt tegn. EN pong svar angiver, at Redis-serveren er tilgængelig og klar til at acceptere kommandoer. Det bekræfter, at de firewall-regler, du har sat op i UFW, fungerer korrekt, så serveren kan kommunikere efter hensigten.

Yderligere Redis-konfigurationseksempler

Som diskuteret tidligere, er Redis et fleksibelt datalager i hukommelsen med mange funktioner. Det kan bruges til caching og meddelelser. Ændring af dens konfigurationsfil giver dig mulighed for at få Redis til at fungere, som du vil. Her vil vi vise flere konfigurationsmuligheder for Redis.

Indstilling af nøgleværdiudløbspolitikken

For at indstille en standard time-to-live (TTL) for nøgler i Redis, skal du ændre indstillingerne for maxmemory-policy og maxmemory-samples i konfigurationsfilen. Brug følgende kommando til at åbne filen:

sudo nano /etc/redis/redis.conf

Se efter maxmemory-policy indstilling og konfigurer den efter din smag. Hvis du f.eks. ønsker at etablere en politik, der udløber nøgler i henhold til algoritmen Least Recently Used (LRU), skal du opdatere konfigurationen som sådan:

maxmemory-policy volatile-lru

Dernæst skal du finde maxmemory-samples indstilling. Dette vil diktere antallet af prøver, som Redis skal gennemgå for at nå frem til beslutningen om udsættelse:

maxmemory-samples 5

Aktiverer TCP Keepalive

Aktivering af TCP keepalive kan hjælpe med at opdage og lukke inaktive forbindelser, hvilket igen frigiver værdifulde systemressourcer. Find tcp-keepalive indstilling i /etc/redis/redis.conf fil for at aktivere det:

tcp-keepalive 300

I dette eksempel indstiller vi keepalive-intervallet til 300 sekunder. Du bør justere dette tal i henhold til din servers krav og betingelser.

Opsætning af Slow Log Monitoring

Langsomme logfiler giver en værdifuld mekanisme til at lokalisere ydeevneproblemer. De gør det ved at logge forespørgsler, der overskrider en specificeret varighed. Find slowlog-log-slower-than og slowlog-max-len indstillinger i /etc/redis/redis.conf fil for at konfigurere langsomme logfiler:

slowlog-log-slower-than 10000
slowlog-max-len 128

Ovenstående eksempel sætter slowlog-tærsklen til 10.000 mikrosekunder (svarende til 10 millisekunder). Den langsomme log vil bevare de 128 seneste poster. Du bør justere disse værdier, så de passer til dine specifikke krav og betingelser.

Aktivering af Redis-begivenhedsmeddelelser

Redis kan oprette meddelelser for specifikke begivenheder, hvilket giver et kraftfuldt værktøj til overvågning og fejlretning. For at aktivere begivenhedsmeddelelser skal du finde notify-keyspace-events indstilling i /etc/redis/redis.conf fil:

notify-keyspace-events ExA

Her konfigurerer vi Redis til at sende meddelelser om udløbne og smidte nøgler. Den officielle Redis-dokumentation er en omfattende ressource for mere information om begivenhedsnotifikationer og tilgængelige valg.

Justering af Redis-logningsniveauet

For bedre at fejlfinde og overvåge Redis skal du ændre dets logningsniveau. Du kan gøre dette i filen /etc/redis/redis.conf ved at justere loglevel-indstillingen:

loglevel notice

Vi har indstillet standard logningsniveauet til 'bemærk'. Andre muligheder er 'debug', 'verbose', 'notice' og 'advarsel'. Vælg det niveau, der passer bedst til dine behov.

sudo systemctl restart redis-server

Denne kommando genstarter Redis, og ændringerne vil være aktive.

Afsluttende tanker

Vi har dækket installation og konfiguration af Redis på Debian 12, 11 eller 10 servere. Dette inkluderer den indledende installation, firewall-konfiguration for sikkerhed og andre tilpasningsmuligheder. Redis har mange konfigurationsvalg, så du kan justere dens ydeevne og adfærd, så den passer til dine behov.

Joshua James
Følg mig
Seneste indlæg af Joshua James (se alt)

Skriv en kommentar