Hoe Redis te installeren op Debian 12, 11 of 10

Redis is een open-source, in-memory datastructuuropslag die veel wordt gebruikt als database, cache en berichtenmakelaar. Dankzij de hoge prestaties en flexibiliteit is het een populaire keuze in verschillende technische sectoren. Deze handleiding is voor u als u Redis wilt installeren op Debian 12 Bookworm, Debian 11 Bullseye of Debian 10 Buster.

Belangrijkste kenmerken van Redis

  • Snelle gegevenstoegang: Redis slaat gegevens op in het geheugen, waardoor ze snel kunnen worden opgehaald. Dit maakt het ideaal voor caching-toepassingen.
  • Meerdere datastructuren: In tegenstelling tot traditionele op tabellen gebaseerde databases ondersteunt Redis verschillende gegevensstructuren, zoals tekenreeksen, hashes, lijsten en sets.
  • Realtime berichtenuitwisseling: Redis biedt berichtenpatronen voor publiceren/abonneren, waardoor realtime applicatiecommunicatie mogelijk wordt.
  • Gegevenspersistentie: Hoewel Redis in de eerste plaats een database in het geheugen is, kunt u periodiek gegevens op schijf opslaan, waardoor een balans wordt geboden tussen snelheid en duurzaamheid.
  • Schaalbaarheid en beschikbaarheid: Functies zoals replicatie, sharding en Redis Sentinel zorgen voor hoge beschikbaarheid en schaalbaarheid op meerdere knooppunten.

Veelvoorkomende gebruiksscenario's voor Redis

  • Caching: Redis wordt vaak gebruikt om veelgebruikte gegevens in het cachegeheugen op te slaan, waardoor de ophaaltijden worden versneld.
  • Sessie opslag: Het is zeer geschikt voor het opslaan van gebruikerssessiegegevens, vooral in webapplicaties met veel verkeer.
  • Berichtenwachtrij: De pub/sub-mogelijkheden maken Redis een uitstekende keuze voor berichtenwachtrijsystemen.

Als u de mogelijkheden van Redis begrijpt, kunt u uw technologiestapel aanzienlijk verbeteren. De komende gids zal gedetailleerd beschrijven hoe u Redis installeert op Debian 12 Bookworm, Debian 11 Bullseye of Debian 10 Buster. We bespreken twee installatiemethoden: één waarbij gebruik wordt gemaakt van de standaardrepository van Debian en een andere waarbij gebruik wordt gemaakt van de officiële Redis-repository voor de nieuwste versie. Beide methoden maken gebruik van Command Line Interface (CLI)-opdrachten. Houd ons in de gaten voor de stapsgewijze instructies.

Pre-installatiestappen met Redis-installatie

Update de Debian-systeempakketten

Voordat u Redis of andere software installeert, moet u er eerst voor zorgen dat de pakketten van uw systeem up-to-date zijn. Deze cruciale voorbereidende stap helpt potentiële conflicten tijdens het daaropvolgende installatieproces te verminderen. Het zorgt ervoor dat alle systeemafhankelijkheden actueel zijn, waardoor potentiële problemen als gevolg van verouderde softwarepakketten worden geminimaliseerd.

In een Debian-systeem kunt u dit doen door de volgende opdracht in de terminal uit te voeren:

sudo apt update && sudo apt upgrade

Installeer de vereiste pakketten voor Redis-installatie

Zodra de Debian-systeempakketten up-to-date zijn, moet u specifieke softwarepakketten installeren die nodig zijn voor de Redis-installatie.

U kunt deze pakketten installeren door de volgende opdracht uit te voeren:

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

Laten we dit commando ontleden om het beter te begrijpen:

  • sudo apt install: Dit commando wordt gebruikt om pakketten op uw Debian-systeem te installeren.
  • software-properties-common: Dit pakket bevat specifieke scripts voor het veilig beheren van software en broncode.
  • apt-transport-https: Dit pakket is nodig voor de apt-pakketbeheerder om pakketten op te halen via het 'https'-protocol.
  • curl: dit is een opdrachtregelprogramma voor het overbrengen van gegevens via verschillende netwerkprotocollen. Het helpt onder andere bij het downloaden van bestanden.
  • ca-certificates: Dit pakket is nodig om de veiligheid van websites te verifiëren. Het biedt een reeks certificaten van certificeringsautoriteiten (CA).
  • -y: deze optie antwoordt tijdens de installatie automatisch met 'ja' op alle vragen.

Selecteer Redis-installatiemethode

Optie 1: Installeer Redis met APT Debian Repository

Hoewel Debian Redis opneemt in zijn standaardsoftwareaanbod, is de versie mogelijk niet de meest recente. Debian geeft de voorkeur aan stabiliteit en biedt doorgaans alleen beveiliging of belangrijke updates. Dit kan de Redis-versie op Debian ouder maar aantoonbaar stabieler maken. Dit kan de perfecte route zijn als uw beoogde gebruik van Redis niet de meest recente functies vereist.

Om Redis via deze methode te installeren, moet u de volgende opdracht in uw terminal uitvoeren:

sudo apt install redis

De sudo commando biedt superuser-rechten, terwijl apt install redis installeert het Redis-softwarepakket op uw Debian-systeem.

Optie 2: Installeer Redis met Redis.io APT Repository

De tweede methode is mogelijk aantrekkelijker voor degenen die de meest up-to-date versie van Redis nodig hebben of wensen. Het omvat het importeren van de APT-repository uit de officiële Redis.io-repository. Deze repository ontvangt regelmatig bugfixes, beveiligingspatches en functie-updates.

Importeer de Redis.io-opslagplaats

Importeer eerst de GPG-sleutel. GPG, of GNU Privacy Guard, helpt bij veilige communicatie en gegevensopslag. De GPG-sleutel verifieert de gegevensbron en zorgt ervoor dat niemand deze tijdens het downloaden heeft gewijzigd.

Gebruik deze opdracht om de GPG-sleutel te importeren:

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

Vervolgens importeren we de repository met het volgende commando:

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

Updatepakkettenindex na Redis.io APT-import

Nu de nieuwe repository is toegevoegd, moet u de pakketindex van uw systeem bijwerken om te weten welke pakketten beschikbaar zijn vanuit de nieuwe bron. Doe dit door de volgende opdracht uit te voeren:

sudo apt-get update

Installeer Redis via APT-opdracht

Als alles is ingesteld, kunt u Redis installeren vanuit de Redis.io-repository. Als u Redis al had geïnstalleerd vanuit de Debian-repository, ziet u mogelijk in plaats daarvan een upgrade. Met de volgende opdracht wordt Redis geïnstalleerd, samen met de Redis-server en -hulpmiddelen:

sudo apt install redis redis-server redis-tools

Controleer de Redis-installatie

Na de installatie is het altijd een goed idee om de installatie te verifiëren. Dit kunt u doen met de apt-cache policy opdracht, waarmee wordt bevestigd dat u de Redis.io-versie hebt geïnstalleerd. Hier ziet u hoe u het kunt gebruiken:

apt-cache policy redis

Gebruik de volgende opdracht om de Redis-instantie te activeren en in te stellen dat deze tijdens het opstarten van het systeem wordt gestart:

sudo systemctl enable redis-server --now

Gebruik deze opdracht om te controleren of Redis zonder fouten werkt:

systemctl status redis-server

Deze opdracht geeft informatie over de redis-server service, die nu actief zou moeten zijn.

Redis inspecteren: verificaties na de installatie op Debian

Luisterpoorten

Standaard luistert Redis op localhost via poort 6379. Om ervoor te zorgen dat Redis inderdaad actief luistert zoals verwacht, gebruikt u de volgende opdracht:

ps -ef | grep redis

Met deze opdracht worden actieve processen weergegeven waarbij Redis betrokken is, wat de luisterstatus van Redis op poort 6379 zou moeten weerspiegelen.

Ping-testen van de Redis-service

Een ping-test is een van de eenvoudigste manieren om te verifiëren dat uw Redis-service operationeel is. Hiermee wordt een verbinding tot stand gebracht met uw Redis-service, waarbij wordt gecontroleerd of deze actief is en gereed is om op opdrachten te reageren.

Maak eerst verbinding met de Redis-service met de volgende opdracht:

redis-cli

Nadat u deze opdracht hebt uitgevoerd, zou uw terminal moeten worden weergegeven 127.0.0.1:6379, wat aangeeft dat u bent verbonden met Redis op de localhost. Nu kunt u de Redis-service als volgt pingen:

ping

Het Redis-exemplaar afsluiten

Nadat u de verificatiecontroles hebt voltooid en hebt bevestigd dat Redis correct werkt, sluit u de Redis-instantie af door het volgende te typen:

exit

We hebben Redis met succes geïnstalleerd op een Debian-systeem, met behulp van de Debian APT-repository of de officiële Redis.io APT-repository.

Configureer en installeer Redis

Redis onderscheidt zich door zijn flexibiliteit en het vermogen om aan verschillende behoeften te voldoen. In deze sectie wordt u begeleid bij het aanpassen van Redis voor caching en netwerktoegang en bij het toevoegen van een wachtwoord voor betere beveiliging.

Toegang tot het Redis-configuratiebestand

Het traject van het afstemmen van Redis begint met het Redis-configuratiebestand op /etc/redis/redis.conf. U moet dit bestand openen met een teksteditor zoals nano.

Voer de volgende opdracht uit:

sudo nano /etc/redis/redis.conf

Maximaal geheugen voor caching aanwijzen

Een gebruiksvoorbeeld voor Redis is het cachen van gegevens om de applicatieprestaties te verbeteren. Om hiervoor in Redis een specifieke hoeveelheid geheugen aan te wijzen, voegt u de volgende regels toe na het configuratiebestand:

maxmemory 500mb 
maxmemory-policy allkeys-lru

In dit scenario hebben we 500 MB geheugen toegewezen voor Redis. U kunt dit aantal gerust aanpassen op basis van de specificaties van uw server en de vereisten van uw applicatie.

Zodra het toegewezen geheugen de capaciteit bereikt, verwijdert Redis sleutels volgens het Least Recent Used (LRU)-beleid.

Netwerktoegang instellen

Standaard luistert Redis alleen op de localhost-interface. U kunt deze instelling wijzigen zodat Redis kan luisteren op alle interfaces of specifieke IP-adressen/subnetten.

Zoek eerst regel 69 in het configuratiebestand.

Optie 1: luisteren naar alle netwerkinterfaces

Om Redis op alle netwerkinterfaces te laten luisteren, kunt u commentaar geven op het bind lijn door een toe te voegen # aan het begin:

# bind 127.0.0.1 ::1

Optie 2: Binden aan een specifiek IP-adres of subnet

Om Redis aan een specifiek IP-adres of subnet te binden, vervangt u de bind lijn met uw voorkeurs-IP of subnet:

bind 0.0.0.0/0

of

bind 192.150.5.0/24

Wanneer Redis aan een IP-adres of subnet wordt gekoppeld, wordt ten zeerste aanbevolen een wachtwoord af te dwingen voor verhoogde beveiliging.

Wachtwoordverificatie afdwingen

Als u een extra beveiligingslaag aan uw Redis-instantie wilt toevoegen, kunt u een wachtwoord instellen voor authenticatie.

Zoek naar de regel die begint met # requirepass (rond regel 507), verwijder het commentaar en stel een sterk wachtwoord in:

requirepass YourStrongPasswordHere

Vervangen YourStrongPasswordHere met een stevig wachtwoord dat een combinatie van hoofdletters en kleine letters, cijfers en speciale symbolen bevat.

Wijzigingen doorvoeren en Redis opnieuw starten

Nadat u de nodige aanpassingen aan het configuratiebestand heeft gemaakt, slaat u uw wijzigingen op door op te drukken Ctrl + Oen verlaat vervolgens de nano editor door op te drukken Ctrl + X.

Start ten slotte de Redis-service opnieuw op om de nieuwe instellingen door te voeren:

sudo systemctl restart redis

Met deze opdracht wordt het systeem gevraagd de Redis-service te stoppen en onmiddellijk opnieuw op te starten, zodat Redis werkt onder de nieuwe configuratieparameters die u hebt ingesteld.

Om er zeker van te zijn dat de Redis-service opnieuw is opgestart en correct werkt, kunt u de status van de service controleren door de volgende opdracht uit te voeren:

sudo systemctl status redis

Deze opdracht retourneert informatie over de Redis-service, inclusief de status (actief of inactief), uptime en logberichten die u mogelijk eerder hebt gezien bij het bevestigen van de installatie.

Configureer een firewall voor Redis met UFW

Voor het beveiligen van uw Redis-server is het instellen van een robuuste firewall vereist. Redis bevat standaard geen firewall. Bovendien biedt Debian geen kant-en-klare firewall-oplossing, tenzij u bedreven bent in het gebruik van iptables. Maar er is een eenvoudige methode die u kunt gebruiken, zelfs als u een beginner bent. Deze methode maakt gebruik van de Uncomplicated Firewall (UFW), een gebruiksvriendelijke firewalltool.

Ervoor zorgen dat UFW is geïnstalleerd

Controleer eerst of uw Debian-server over UFW beschikt. Als dit niet het geval is, gebruikt u de volgende opdracht om het te installeren:

sudo apt install ufw -y

Bij deze opdracht sudo wordt gebruikt om de opdracht uit te voeren met rootrechten, apt install is de opdracht om een ​​pakket te installeren, ufw is het pakket dat moet worden geïnstalleerd, en -y is een optie die automatisch ja antwoordt op alle vragen, waardoor de installatie kan doorgaan zonder verdere gebruikersinvoer.

UFW inschakelen

Zodra UFW is geïnstalleerd, moet het worden ingeschakeld om te kunnen functioneren en uw systeem te beschermen. U kunt UFW inschakelen met deze opdracht:

sudo ufw enable

Dit commando vertelt UFW om alle regels die u heeft ingesteld of gaat instellen, te activeren en toe te passen.

UFW-regels configureren voor Redis

Nu UFW is geactiveerd, kunt u het configureren om uw Redis-server te beschermen. Mogelijk moet u verschillende firewallregels instellen, afhankelijk van uw specifieke situatie en of uw Redis-installatie een zelfstandige server of onderdeel van een cluster is.

Voor een extra netwerk-IP-serverinstantie

Als u een zelfstandige Redis-server hebt die u wilt beveiligen met UFW, gebruikt u deze opdracht:

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

Hier vervang jij <ip address> met het IP-adres van de server waarvan u verbindingen wilt toestaan. Deze opdracht vertelt UFW om TCP-verbindingen vanaf dat IP-adres toe te staan ​​met elk systeem op poort 6379, de standaardpoort voor Redis.

Voor een clusternetwerk met meerdere instanties

Als u met een cluster Redis-servers werkt, kunt u verbindingen vanuit een heel subnet toestaan. Gebruik hiervoor de volgende opdracht:

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

In deze opdracht vervangt u <ip address> met het IP-adres van het subnet waarvan u verbindingen wilt toestaan. Merk op dat deze opdracht een aanzienlijk vertrouwen impliceert in alle apparaten op dit subnet, omdat het de Redis-server voor allemaal opent. Gebruik deze opdracht daarom alleen als u zeker weet dat uw interne netwerk veilig is.

De UFW-configuratie verifiëren

Na het configureren van uw UFW-regels is het essentieel dat u bevestigt dat ze werken zoals bedoeld. Net zoals u aan het begin van deze handleiding uw Redis-server hebt gepingd om er zeker van te zijn dat deze operationeel was, kunt u ook uw nieuwe firewallregels testen. Dit kunt u doen met behulp van de redis-cli commando:

redis-cli -h  <ip address> ping

Nogmaals, vervangen <ip address> met het IP-adres van uw Redis-server. Als uw firewallregels correct zijn ingesteld en de Redis-server naar behoren werkt, zou de uitvoer van deze opdracht een eenvoudig pong.

Bij deze opdracht redis-cli is de opdrachtregelinterface voor Redis, -h specificeert de host (het IP-adres van uw server), en ping is een opdracht om de connectiviteit met de Redis-server te controleren.

De uitvoer interpreteren

De uitvoer van de redis-cli Met deze opdracht kunt u bevestigen of de firewallregels werken zoals verwacht.

pong

Deze uitkomst is een goed teken. A pong Het antwoord geeft aan dat de Redis-server toegankelijk is en klaar is om opdrachten te accepteren. Het bevestigt dat de firewallregels die u in UFW hebt ingesteld correct werken, waardoor de server kan communiceren zoals bedoeld.

Aanvullende Redis-configuratievoorbeelden

Zoals eerder besproken is Redis een flexibele gegevensopslag in het geheugen met veel functies. Het kan worden gebruikt voor caching en berichtenuitwisseling. Door het configuratiebestand te wijzigen, kunt u Redis laten werken zoals u dat wilt. Hier laten we meer configuratieopties voor Redis zien.

Het beleid voor het verlopen van sleutelwaarden instellen

Als u een standaard time-to-live (TTL) voor sleutels in Redis wilt instellen, wijzigt u de instellingen maxmemory-policy en maxmemory-samples in het configuratiebestand. Gebruik de volgende opdracht om het bestand te openen:

sudo nano /etc/redis/redis.conf

Zoek naar de maxmemory-policy instellen en naar wens configureren. Als u bijvoorbeeld een beleid wilt instellen dat sleutels laat verlopen volgens het Least Recent Used (LRU)-algoritme, werkt u de configuratie als volgt bij:

maxmemory-policy volatile-lru

Zoek vervolgens de maxmemory-samples instelling. Dit bepaalt het aantal monsters dat Redis moet beoordelen om tot een uitzettingsbesluit te komen:

maxmemory-samples 5

TCP Keepalive inschakelen

Het activeren van TCP keepalive kan helpen bij het detecteren en sluiten van inactieve verbindingen, waardoor waardevolle systeembronnen vrijkomen. Zoek de tcp-keepalive instelling in de /etc/redis/redis.conf bestand om het in te schakelen:

tcp-keepalive 300

In dit voorbeeld stellen we het keepalive-interval in op 300 seconden. U moet dit cijfer aanpassen aan de vereisten en omstandigheden van uw server.

Slow Log-monitoring instellen

Langzame logboeken bieden een waardevol mechanisme voor het opsporen van prestatieproblemen. Dit doen ze door zoekopdrachten te registreren die een bepaalde duur overschrijden. Vind de slowlog-log-slower-than En slowlog-max-len instellingen in de /etc/redis/redis.conf bestand om langzame logs te configureren:

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

In het bovenstaande voorbeeld wordt de slowlog-drempel ingesteld op 10.000 microseconden (equivalent aan 10 milliseconden). Het langzame logboek bewaart de 128 meest recente vermeldingen. U dient deze waarden aan te passen aan uw specifieke eisen en omstandigheden.

Redis-gebeurtenismeldingen inschakelen

Redis kan meldingen maken voor specifieke gebeurtenissen, wat een krachtig hulpmiddel is voor monitoring en foutopsporing. Om gebeurtenismeldingen te activeren, zoekt u naar de notify-keyspace-events instelling in de /etc/redis/redis.conf bestand:

notify-keyspace-events ExA

Hier configureren we Redis om meldingen te verzenden voor verlopen en uitgezet sleutels. De officiële Redis-documentatie is een uitgebreide bron voor meer informatie over gebeurtenismeldingen en beschikbare keuzes.

Het Redis-logboekniveau aanpassen

Wijzig het logboekregistratieniveau om problemen met Redis beter op te lossen en te monitoren. U kunt dit doen in het bestand /etc/redis/redis.conf door de loglevel-instelling aan te passen:

loglevel notice

We hebben het standaardregistratieniveau ingesteld op 'opmerken'. Andere opties zijn 'debug', 'uitgebreid', 'opmerken' en 'waarschuwing'. Kies het niveau dat het beste bij uw behoeften past.

sudo systemctl restart redis-server

Met deze opdracht wordt Redis opnieuw opgestart en zijn de wijzigingen actief.

Afsluitende gedachten

We hebben het installeren en configureren van Redis op Debian 12-, 11- of 10-servers besproken. Dit omvat de initiële installatie, firewallconfiguratie voor beveiliging en andere aanpassingsopties. Redis heeft veel configuratiekeuzes, zodat u de prestaties en het gedrag kunt aanpassen aan uw behoeften.

Joshua James
Volg mij
Laatste berichten van Joshua James (alles zien)

Plaats een reactie