Hur man installerar Redis på Debian 12, 11 eller 10

Redis är en öppen källkodsbutik för datastrukturer i minnet som ofta används som databas-, cache- och meddelandeförmedlare. Dess höga prestanda och flexibilitet gör den till ett populärt val inom olika tekniska sektorer. Den här guiden är till för dig om du vill installera Redis på Debian 12 Bookworm, Debian 11 Bullseye eller Debian 10 Buster.

Huvudfunktioner i Redis

  • Snabb dataåtkomst: Redis lagrar data i minnet, vilket resulterar i snabb hämtning. Detta gör den idealisk för cachning av applikationer.
  • Flera datastrukturer: Till skillnad från traditionella tabellbaserade databaser stöder Redis olika datastrukturer som strängar, hash, listor och uppsättningar.
  • Realtidsmeddelanden: Redis erbjuder meddelandemönster för publicering/prenumeration, vilket möjliggör applikationskommunikation i realtid.
  • Databeständighet: Redis är huvudsakligen en databas i minnet, men tillåter periodisk datalagring på disk, vilket ger en balans mellan hastighet och hållbarhet.
  • Skalbarhet och tillgänglighet: Funktioner som replikering, skärning och Redis Sentinel säkerställer hög tillgänglighet och skalbarhet över flera noder.

Vanliga användningsfall för Redis

  • Cachning: Redis används vanligtvis för att cachelagra data som ofta används, vilket påskyndar hämtningstiderna.
  • Sessionslagring: Den är väl lämpad för lagring av användarsessionsdata, särskilt i webbapplikationer med hög trafik.
  • Message Queuing: Pub/sub-funktionerna gör Redis till ett utmärkt val för system för meddelandeköer.

Att förstå Redis möjligheter kan avsevärt förbättra din teknikstack. Den kommande guiden kommer att beskriva hur du installerar Redis på Debian 12 Bookworm, Debian 11 Bullseye eller Debian 10 Buster. Vi kommer att täcka två installationsmetoder: en med Debians standardförråd och en annan med det officiella Redis-förvaret för den senaste versionen. Båda metoderna använder Command Line Interface (CLI)-kommandon. Håll utkik efter steg-för-steg-instruktionerna.

Steg för förinstallation med Redis-installation

Uppdatera Debians systempaket

Innan du installerar Redis eller någon annan programvara är det första steget att se till att ditt systems paket är uppdaterade. Detta kritiska preliminära steg hjälper till att mildra potentiella konflikter under den efterföljande installationsprocessen. Det säkerställer att alla systemberoenden är aktuella, vilket minimerar potentiella problem som uppstår från föråldrade programvarupaket.

I ett Debian-system kan du göra detta genom att köra följande kommando i terminalen:

sudo apt update && sudo apt upgrade

Installera nödvändiga paket för Redis-installation

När Debians systempaket är uppdaterade måste du installera specifika mjukvarupaket som är nödvändiga för Redis-installationen.

Du kan installera dessa paket genom att köra följande kommando:

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

Låt oss dissekera detta kommando för att förstå det bättre:

  • sudo apt install: Det här kommandot används för att installera paket på ditt Debiansystem.
  • software-properties-common: Detta paket innehåller specifika skript för säker hantering av programvara och källkod.
  • apt-transport-https: Detta paket är nödvändigt för att apt-pakethanteraren ska kunna hämta paket över 'https'-protokollet.
  • curl: Detta är ett kommandoradsverktyg för att överföra data med olika nätverksprotokoll. Det hjälper bland annat att ladda ner filer.
  • ca-certificates: Detta paket är nödvändigt för att verifiera säkerheten på webbplatser. Den tillhandahåller en uppsättning certifikat från Certifieringsmyndigheten (CA).
  • -y: Det här alternativet svarar automatiskt "ja" på alla uppmaningar under installationen.

Välj Redis installationsmetod

Alternativ 1: Installera Redis med APT Debian Repository

Även om Debian inkluderar Redis i sitt standardprogramvara, är versionen kanske inte den senaste. Debian gynnar stabilitet och tillhandahåller i allmänhet endast säkerhet eller betydande uppdateringar. Detta kan göra Redis-versionen på Debian äldre men utan tvekan mer stabil. Detta kan vara den perfekta vägen om din avsedda användning av Redis inte kräver de senaste funktionerna.

För att installera Redis med den här metoden måste du utföra följande kommando i din terminal:

sudo apt install redis

De sudo kommandot ger superanvändarprivilegier, medan apt install redis installerar programvaran Redis på ditt Debiansystem.

Alternativ 2: Installera Redis med Redis.io APT Repository

Den andra metoden kan vara mer tilltalande för dem som kräver eller önskar den mest uppdaterade versionen av Redis. Det innebär att importera APT-förvaret från det officiella Redis.io-förrådet. Det här förrådet får regelbundet buggfixar, säkerhetskorrigeringar och funktionsuppdateringar.

Importera Redis.io Repository

Importera först GPG-nyckeln. GPG, eller GNU Privacy Guard, hjälper till med säker kommunikation och datalagring. GPG-nyckeln verifierar datakällan och säkerställer att ingen ändrade den under nedladdningen.

Använd detta kommando för att importera GPG-nyckeln:

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

Därefter importerar vi förvaret med följande 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

Uppdatera paketindex efter Redis.io APT-import

Med det nya förvaret tillagt måste du uppdatera ditt systems paketindex för att veta vilka paket som är tillgängliga från den nya källan. Gör detta genom att köra följande kommando:

sudo apt-get update

Installera Redis via APT Command

Med allt inställt kan du installera Redis från Redis.io-förvaret. Om du redan hade Redis installerat från Debianförvaret kan du se en uppgradering istället. Följande kommando installerar Redis, tillsammans med Redis-servern och verktyg:

sudo apt install redis redis-server redis-tools

Verifiera Redis-installationen

Efter installationen är det alltid en bra idé att verifiera installationen. Du kan göra detta med apt-cache policy kommandot och bekräftar att du har installerat Redis.io-versionen. Så här använder du det:

apt-cache policy redis

Använd följande kommando för att aktivera Redis-instansen och ställa in den att starta under systemstart:

sudo systemctl enable redis-server --now

För att verifiera att Redis körs utan fel, använd det här kommandot:

systemctl status redis-server

Detta kommando ger information om redis-server tjänsten, som nu ska vara igång.

Inspektera Redis: Verifieringar efter installation på Debian

Lyssningsportar

Som standard lyssnar Redis på localhost med port 6379. För att säkerställa att Redis verkligen lyssnar aktivt som förväntat, använd följande kommando:

ps -ef | grep redis

Det här kommandot visar pågående processer som involverar Redis, vilket bör återspegla lyssningsstatusen för Redis på port 6379.

Ping Testar Redis-tjänsten

Ett pingtest är ett av de enklaste sätten att verifiera att din Redis-tjänst fungerar. Detta kommer att upprätta en anslutning till din Redis-tjänst och verifiera att den är igång, igång och redo att svara på kommandon.

Anslut först till Redis-tjänsten med följande kommando:

redis-cli

Efter att ha kört det här kommandot ska din terminal visas 127.0.0.1:6379, vilket indikerar att du är ansluten till Redis på den lokala värden. Nu kan du pinga Redis-tjänsten enligt följande:

ping

Avslutar Redis-instansen

När du har slutfört verifieringskontrollerna och bekräftat att Redis fungerar korrekt, avslutar du Redis-instansen genom att skriva:

exit

Vi har framgångsrikt installerat Redis på ett Debiansystem, antingen med Debians APT-förvaret eller det officiella Redis.io APT-förrådet.

Konfigurera och ställ in Redis

Redis utmärker sig genom sin flexibilitet och förmåga att passa olika behov. Det här avsnittet guidar dig om hur du justerar Redis för cachning och nätverksåtkomst och lägger till ett lösenord för ökad säkerhet.

Åtkomst till Redis-konfigurationsfilen

Resan att skräddarsy Redis börjar med Redis-konfigurationsfilen som finns på /etc/redis/redis.conf. Du måste öppna den här filen med en textredigerare som nano.

Kör följande kommando att göra:

sudo nano /etc/redis/redis.conf

Ange maximalt minne för cachelagring

Ett användningsfall för Redis är cachelagring av data för att öka applikationens prestanda. För att ange en specifik mängd minne för detta ändamål i Redis, lägg till följande rader efter konfigurationsfilen:

maxmemory 500mb 
maxmemory-policy allkeys-lru

I det här scenariot har vi allokerat 500 MB minne för Redis. Justera gärna denna kvantitet baserat på din servers specifikationer och din applikations krav.

När det tilldelade minnet når kapacitet kommer Redis att ta bort nycklar enligt LRU-policyn (Least Recently Used).

Konfigurera nätverksåtkomst

Som standard lyssnar Redis endast på det lokala värdgränssnittet. Du kan ändra denna inställning så att Redis kan lyssna på alla gränssnitt eller specifika IP-adresser/undernät.

Hitta först rad 69 i konfigurationsfilen.

Alternativ 1: Lyssna på alla nätverksgränssnitt

För att få Redis att lyssna på alla nätverksgränssnitt kan du kommentera bind rad genom att lägga till en # i början:

# bind 127.0.0.1 ::1

Alternativ 2: Bindning till en specifik IP-adress eller subnät

För att binda Redis till en specifik IP-adress eller subnät, byt ut bind linje med din föredragna IP eller subnät:

bind 0.0.0.0/0

eller

bind 192.150.5.0/24

När du binder Redis till en IP-adress eller subnät, rekommenderas starkt att ett lösenord upprätthålls för ökad säkerhet.

Genomför lösenordsautentisering

För att lägga till ett extra lager av skydd till din Redis-instans kan du ställa in ett lösenord för autentisering.

Sök efter raden som börjar med # requirepass (runt rad 507), avkommentera det och ange ett starkt lösenord:

requirepass YourStrongPasswordHere

Byta ut YourStrongPasswordHere med ett robust lösenord som innehåller en blandning av stora och små bokstäver, siffror och specialsymboler.

Begå ändringar och starta om Redis

När du har gjort de nödvändiga justeringarna av konfigurationsfilen, spara dina ändringar genom att trycka på Ctrl + O, och avsluta sedan nano redaktör genom att trycka på Ctrl + X.

Slutligen, starta om Redis-tjänsten för att aktivera de nya inställningarna:

sudo systemctl restart redis

Detta kommando ber systemet att stoppa Redis-tjänsten och omedelbart starta upp den igen, vilket säkerställer att Redis fungerar under de nya konfigurationsparametrarna du har ställt in.

För att säkerställa att Redis-tjänsten startades om och att den körs korrekt kan du kontrollera tjänstens status genom att utföra följande kommando:

sudo systemctl status redis

Detta kommando kommer att returnera information om Redis-tjänsten, inklusive dess status (aktiv eller inaktiv), drifttid och loggmeddelanden som du kan ha sett tidigare när du bekräftade installationen.

Konfigurera en brandvägg för Redis med UFW

Att säkra din Redis-server kräver att du konfigurerar en robust brandvägg. Redis inkluderar inte en brandvägg som standard. Dessutom erbjuder Debian inte en färdig brandväggslösning om du inte är skicklig med iptables. Men det finns en enkel metod du kan använda, även om du är nybörjare. Denna metod involverar Uncomplicated Firewall (UFW), ett användarvänligt brandväggsverktyg.

Se till att UFW är installerat

Kontrollera först om din Debian-server har UFW. Om det inte gör det, använd följande kommando för att installera det:

sudo apt install ufw -y

I detta kommando, sudo används för att utföra kommandot med root-privilegier, apt install är kommandot för att installera ett paket, ufw är paketet som ska installeras, och -y är ett alternativ som automatiskt svarar ja på alla uppmaningar, vilket gör att installationen kan fortsätta utan ytterligare användarinmatning.

Aktiverar UFW

När UFW har installerats måste den aktiveras för att börja fungera och skydda ditt system. Du kan aktivera UFW med detta kommando:

sudo ufw enable

Detta kommando talar om för UFW att aktivera och tillämpa alla regler som du har ställt in eller kommer att ställa in.

Konfigurera UFW-regler för Redis

Nu när UFW är aktiverat kan du konfigurera det för att skydda din Redis-server. Du kan behöva ställa in olika brandväggsregler beroende på din specifika situation och om din Redis-installation är en fristående server eller en del av ett kluster.

För en ytterligare nätverks-IP-serverinstans

Om du har en fristående Redis-server som du vill skydda med UFW, använd det här kommandot:

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

Här byter du ut <ip address> med IP-adressen för den server från vilken du vill tillåta anslutningar. Detta kommando talar om för UFW att tillåta TCP-anslutningar från den IP-adressen till vilket system som helst på port 6379, standardporten för Redis.

För ett klusternätverk med flera instanser

Om du arbetar med ett kluster av Redis-servrar kan du tillåta anslutningar från ett helt undernät. För att göra detta, använd följande kommando:

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

I det här kommandot, ersätt <ip address> med IP-adressen för det subnät från vilket du vill tillåta anslutningar. Observera att det här kommandot innebär ett betydande förtroende för alla enheter på detta undernät, eftersom det öppnar Redis-servern för dem alla. Använd därför endast detta kommando om du är säker på att ditt interna nätverk är säkert.

Verifiera UFW-konfigurationen

Efter att ha konfigurerat dina UFW-regler är det viktigt att bekräfta att de fungerar som avsett. Precis som du pingade din Redis-server i början av den här guiden för att säkerställa att den fungerade, kan du också testa dina nya brandväggsregler. Du kan göra detta med hjälp av redis-cli kommando:

redis-cli -h  <ip address> ping

Återigen, byt ut <ip address> med IP-adressen till din Redis-server. Om dina brandväggsregler har ställts in korrekt och Redis-servern fungerar som den ska, bör utdata från detta kommando vara en enkel pong.

I detta kommando, redis-cli är kommandoradsgränssnittet för Redis, -h anger värden (din servers IP-adress), och ping är ett kommando för att kontrollera anslutningen till Redis-servern.

Tolka utdata

Utgången från redis-cli kommandot hjälper dig att bekräfta om brandväggsreglerna fungerar som förväntat.

pong

Denna utgång är ett gott tecken. A pong svar indikerar att Redis-servern är tillgänglig och redo att acceptera kommandon. Det bekräftar att brandväggsreglerna du har ställt in i UFW fungerar korrekt, vilket gör att servern kan kommunicera som avsett.

Ytterligare Redis-konfigurationsexempel

Som diskuterats tidigare är Redis ett flexibelt datalager i minnet med många funktioner. Den kan användas för cachning och meddelandehantering. Genom att ändra dess konfigurationsfil kan du få Redis att fungera som du vill. Här kommer vi att visa fler konfigurationsalternativ för Redis.

Ställa in principen för utgångsdatum för nyckel-värde

För att ställa in en standardtid-till-levetid (TTL) för nycklar i Redis, ändra inställningarna för maxmemory-policy och maxmemory-samples i konfigurationsfilen. Använd följande kommando för att öppna filen:

sudo nano /etc/redis/redis.conf

Leta efter maxmemory-policy ställa in och konfigurera det efter eget tycke. Om du till exempel vill upprätta en policy som upphör att gälla enligt LRU-algoritmen (Least Recently Used), uppdatera konfigurationen som sådan:

maxmemory-policy volatile-lru

Leta sedan upp maxmemory-samples miljö. Detta kommer att diktera antalet prover som Redis ska granska för att komma fram till vräkningsbeslutet:

maxmemory-samples 5

Aktiverar TCP Keepalive

Aktivering av TCP Keepalive kan hjälpa till att upptäcka och stänga lediga anslutningar, vilket i sin tur frigör värdefulla systemresurser. Leta upp tcp-keepalive inställning i /etc/redis/redis.conf fil för att aktivera det:

tcp-keepalive 300

I det här exemplet ställer vi in ​​keepalive-intervallet till 300 sekunder. Du bör justera denna siffra enligt din servers krav och villkor.

Ställa in Slow Log Monitoring

Långsamma loggar ger en värdefull mekanism för att lokalisera prestandaproblem. De gör det genom att logga frågor som överskrider en angiven varaktighet. Hitta slowlog-log-slower-than och slowlog-max-len inställningar i /etc/redis/redis.conf fil för att konfigurera långsamma loggar:

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

Exemplet ovan sätter tröskelvärdet för slowlog till 10 000 mikrosekunder (motsvarande 10 millisekunder). Den långsamma loggen kommer att behålla de 128 senaste posterna. Du bör justera dessa värden för att matcha dina specifika krav och förutsättningar.

Aktiverar Redis Event Notifications

Redis kan skapa aviseringar för specifika händelser, vilket ger ett kraftfullt verktyg för övervakning och felsökning. För att aktivera händelseaviseringar, lokalisera notify-keyspace-events inställning i /etc/redis/redis.conf fil:

notify-keyspace-events ExA

Här konfigurerar vi Redis för att skicka meddelanden för utgångna och vräkta nycklar. Den officiella Redis-dokumentationen är en omfattande resurs för mer information om händelseaviseringar och tillgängliga val.

Justering av Redis-loggningsnivån

För att bättre felsöka och övervaka Redis, ändra dess loggningsnivå. Du kan göra detta i filen /etc/redis/redis.conf genom att justera loggnivåinställningen:

loglevel notice

Vi har ställt in standardloggningsnivån till "notice". Andra alternativ är 'debug', 'verbose', 'notice' och 'warning'. Välj den nivå som bäst passar dina behov.

sudo systemctl restart redis-server

Detta kommando startar om Redis och ändringarna kommer att vara aktiva.

Avslutande tankar

Vi har täckt installation och konfigurering av Redis på Debian 12, 11 eller 10 servrar. Detta inkluderar den första installationen, brandväggskonfiguration för säkerhet och andra anpassningsalternativ. Redis har många konfigurationsval, som låter dig justera dess prestanda och beteende för att passa dina behov.

Joshua James
Följ mig
Senaste inläggen av Joshua James (se alla)

Lämna en kommentar