Zoeken op website

Hoe Redis Server te installeren in CentOS en Debian-gebaseerde systemen


Redis is een open-source, krachtige en flexibele gegevensstructuuropslag in het geheugen (sleutelwaarde-indeling) – gebruikt als database, cache en berichtenmakelaar. Het is geschreven in ANSI C en draait op de meeste, zo niet alle Unix-achtige besturingssystemen, inclusief Linux (aanbevolen voor implementatie) zonder externe afhankelijkheden.

Het is rijk aan functies, ondersteunt meerdere programmeertalen en datastructuren, waaronder strings, hashes, lijsten, sets, gesorteerde sets met bereikquery's, bitmaps en andere.

Redis-functies:

  • Ondersteunt de meeste programmeertalen, waaronder C, Bash, Python, PHP, Node.js, Perl, Ruby om er maar een paar te noemen.
  • Heeft inherente replicatie, Lua-scripting, LRU-uitzetting, transacties en verschillende niveaus van persistentie op de schijf.
  • Biedt hoge beschikbaarheid via Redis Sentinel en automatische partitionering via Redis Cluster.
  • Ondersteunt lopende atomaire operaties.
  • Het werkt met een dataset in het geheugen om opmerkelijke prestaties te bereiken.
  • Ondersteunt triviale master-slave asynchrone replicatie.
  • Ondersteunt automatische failover.
  • Hiermee kunt u de gegevensset gedurende een bepaalde periode onregelmatig op schijf opslaan, of door elke opdracht aan een logboek toe te voegen.
  • Maakt het optioneel uitschakelen van persistentie mogelijk.
  • Ondersteunt berichten publiceren/abonneren.
  • Het ondersteunt ook MULTI-, EXEC-, DISCARD- en WATCH-transacties en nog veel meer.

Vereisten:

  1. Een CentOS 7-server en RHEL 7-server met minimale installatie
  2. Een Ubuntu-server of Debian-server met minimale installatie
  3. GCC-compiler en libc

In deze zelfstudie geven we instructies voor het installeren van een Redis Server vanaf de broncode (wat de aanbevolen methode is) in Linux. We laten ook zien hoe u Redis kunt configureren, beheren en beveiligen. Omdat Redis alle gegevens uit het geheugen verwerkt, raden we u ten zeerste aan om in deze handleiding een VPS-server met veel geheugen te gebruiken.

Stap 1: Installeer Redis Server vanaf de bron

1. Installeer eerst de vereiste build-afhankelijkheden.

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

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

2. Download en compileer vervolgens de nieuwste stabiele Redis-versie met behulp van de speciale URL die altijd verwijst naar de nieuwste stabiele Redis met behulp van de wget-opdracht.

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. Na de Redis-compilatie wordt de map src binnen de Redis-distributie gevuld met de verschillende volgende uitvoerbare bestanden die deel uitmaken van Redis:

  • redis-server – redis-server.
  • redis-sentinel – uitvoerbaar bestand redis sentinel (monitoring en failover).
  • redis-cli – een CLI-hulpprogramma voor interactie met redis.
  • redis-benchmark – gebruikt om redis-prestaties te controleren.
  • redis-check-aof en redis-check-dump – handig in het zeldzame geval van beschadigde gegevensbestanden.

Stap 2: Configureer Redis Server in Linux

4. Vervolgens moet u Redis configureren voor een ontwikkelomgeving die moet worden beheerd door het init systeem (systemd voor het doel van deze tutorial) . Begin met het maken van de benodigde mappen voor het opslaan van Redis-configuratiebestanden en uw gegevens:

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

4. Kopieer vervolgens het meegeleverde Redis-configuratiebestand naar de map die u hierboven hebt gemaakt.

sudo cp redis.conf /etc/redis/

5. Open nu het configuratiebestand en update als volgt enkele instellingen.

sudo vi /etc/redis/redis.conf

6. Zoek vervolgens naar de volgende opties en wijzig (of gebruik) vervolgens hun standaardwaarden volgens de behoeften van uw lokale omgeving.

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

Stap 3: Maak een Redis Systemd Unit-bestand

7. Nu moet u een systemd unit-bestand voor redis maken om de daemon te besturen, door de volgende opdracht uit te voeren.

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

En voeg de onderstaande configuratie toe:

[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

Sla het bestand op en sluit het.

Stap 4: Beheer en test Redis Server in Linux

8. Zodra u alle benodigde configuraties heeft uitgevoerd, kunt u nu de Redis-server starten. Schakel deze voorlopig in om automatisch te starten bij het opstarten van het systeem; Bekijk vervolgens de status als volgt.

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

9. Test vervolgens of de hele redis-installatie goed werkt. Gebruik de opdracht redis-cli om te communiceren met de redis-server. Probeer, nadat u verbinding heeft gemaakt met de server, een paar opdrachten uit te voeren.

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. Sluit vervolgens de verbinding met de opdracht exit en start de redis-server opnieuw op. Controleer daarna of mykey nog steeds op de server is opgeslagen, zoals hieronder weergegeven:

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

11. Om een sleutel te verwijderen, gebruikt u de verwijderopdracht als volgt:

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

Stap 5: Redis Server beveiligen in Linux

12. Deze sectie is bedoeld voor gebruikers die van plan zijn een redis-server te gebruiken die is aangesloten op een extern netwerk zoals internet.

Belangrijk: het blootstellen van redis aan internet zonder enige beveiliging maakt het extreem gemakkelijk om er misbruik van te maken; beveilig de redis-server daarom als volgt:

  • blokkeer verbindingen met de redis-poort in het firewall-systeem
  • stel de bindrichtlijn in op de loopback-interface: 127.0.0.1
  • set requirepass optie zodat clients zich moeten authenticeren met behulp van de opdracht AUTH.
  • SSL-tunneling instellen om verkeer tussen Redis-servers en Redis-clients te coderen.

Voer de onderstaande opdracht uit voor meer gebruiksinformatie:

redis-cli -h

U kunt meer serveropdrachten vinden en leren hoe u redis binnen uw toepassing kunt gebruiken op de Redis-startpagina: https://redis.io/

In deze zelfstudie hebben we laten zien hoe u Redis in Linux installeert, configureert, beheert en beveiligt. Gebruik het onderstaande reactieformulier om uw gedachten te delen.