Kako namestiti strežnik Redis v sisteme CentOS in Debian
Redis je odprtokodna, visoko zmogljiva in prilagodljiva shramba podatkovne strukture v pomnilniku (format ključ-vrednost) - uporablja se kot posrednik baz podatkov, predpomnilnika in sporočil. Napisano je v ANSI C in deluje na večini, če ne na vseh Unixu podobnih operacijskih sistemih, vključno z Linuxom (priporočeno za uvajanje) brez zunanjih odvisnosti.
Je bogat s funkcijami, podpira več programskih jezikov in podatkovnih struktur, vključno z nizi, razpršitvami, seznami, nizi, razvrščenimi nizi z poizvedbami za obseg in bitnimi slikami med drugim.
- Podpira večino programskih jezikov, vključno s C, Bash, Python, PHP, Node.js, Perl, Ruby, če omenim le nekaj.
- Ima lastno replikacijo, skripte Lua, izselitev LRU, transakcije in različne stopnje obstojnosti na disku.
- Zagotavlja visoko razpoložljivost prek Redis Sentinel in samodejno razdeljevanje prek Redis Cluster.
- Podpira izvajanje atomskih operacij.
- Za doseganje izjemne zmogljivosti deluje z naborom podatkov v pomnilniku.
- Podpira asinhrono replikacijo trivial-to-setup master-slave.
- Podpira samodejno preusmeritev.
- Omogoča redko shranjevanje nabora podatkov na disku za določeno časovno obdobje ali z dodajanjem vsakega ukaza v dnevnik.
- Omogoča neobvezno onemogočanje obstojnosti.
- Podpira objavo/naročanje sporočil.
- Podpira tudi MULTI, EXEC, DISCARD in WATCH transakcije in še veliko več.
- Strežnik RHEL 7 z minimalno namestitvijo
- Debian strežnik z minimalno namestitvijo
- GCC prevajalnik in libc
V tej vadnici bomo podali navodila, kako namestiti strežnik Redis iz vira (kar je priporočena metoda) v Linux. Pokazali bomo tudi, kako konfigurirati, upravljati in zaščititi Redis. Ker Redis streže vse podatke iz pomnilnika, toplo priporočamo, da s tem vodnikom uporabite strežnik VPS z velikim pomnilnikom.
1. korak: Namestite strežnik Redis iz vira
1. Najprej namestite zahtevane odvisnosti gradnje.
--------------- On CentOS / RHEL / Fedora --------------- # yum groupinstall "Development Tools" # dnf groupinstall "Development Tools" --------------- On Debian / Ubuntu --------------- $ sudo apt install build-essential
2. Nato prenesite in sestavite najnovejšo stabilno različico Redisa s posebnim URL -jem, ki z ukazom wget vedno kaže na najnovejšo stabilno različico Redis.
$ 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. Po prevajanju Redis se imenik src
v distribuciji Redis napolni z različnimi naslednjimi izvršljivimi datotekami, ki so del Redisa:
- redis-server - strežnik redis.
- redis-sentinel - izvedljiva redis sentinel (spremljanje in preusmeritev).
- redis-cli - pripomoček CLI za interakcijo z redisom.
- redis-benchmark - uporablja se za preverjanje uspešnosti redisa.
- redis-check-aof in redis-check-dump - uporabno v redkih primerih poškodovanih podatkovnih datotek.
2. korak: Konfigurirajte strežnik Redis v Linuxu
4. Nato morate Redis konfigurirati za razvojno okolje, ki ga upravlja sistem init (systemd za namen te vadnice). Začnite z ustvarjanjem potrebnih imenikov za shranjevanje konfiguracijskih datotek Redis in vaših podatkov:
$ sudo mkdir /etc/redis $ sudo mkdir -p /var/redis/
4. Nato prenesite priloženo konfiguracijsko datoteko Redis v imenik, ki ste ga ustvarili zgoraj.
$ sudo cp redis.conf /etc/redis/
5. Zdaj odprite konfiguracijsko datoteko in posodobite nekaj nastavitev, kot sledi.
$ sudo vi /etc/redis/redis.conf
6. Nato poiščite naslednje možnosti, nato spremenite (ali uporabite) njihove privzete vrednosti glede na potrebe lokalnega okolja.
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
3. korak: Ustvarite datoteko Redis Systemd Unit
7. Zdaj morate ustvariti datoteko enote systemd za redis, če želite upravljati demona, tako da izvedete naslednji ukaz.
$ sudo vi /etc/systemd/system/redis.service
In dodajte konfiguracijo spodaj:
[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
Shranite in zaprite datoteko.
4. korak: Upravljanje in testiranje strežnika Redis v Linuxu
8. Ko izvedete vse potrebne konfiguracije, lahko zdaj zaženete strežnik Redis, zaenkrat mu omogočite samodejni zagon ob zagonu sistema; nato si oglejte njegov status, kot sledi.
$ sudo systemctl start redis $ sudo systemctl enable redis $ sudo systemctl status redis
9. Nato preizkusite, ali celotna nastavitev redisa deluje dobro. Za interakcijo s strežnikom redis uporabite ukaz redis-cli. Po povezavi s strežnikom poskusite zagnati nekaj ukazov.
$ 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. Nato preknite povezavo z ukazom exit
in znova zaženite strežnik redis. Nato preverite, ali je mykey še vedno shranjen na strežniku, kot je prikazano spodaj:
127.0.0.1:6379> exit $ sudo systemctl restart redis $ redis-cli 127.0.0.1:6379> get mykey
11. Če želite izbrisati ključ, uporabite ukaz delete na naslednji način:
127.0.0.1:6379> del mykey 127.0.0.1:6379> get mykey
5. korak: Zaščita strežnika Redis v Linuxu
12. Ta razdelek je namenjen uporabnikom, ki nameravajo uporabljati strežnik redis, povezan z zunanjim omrežjem, kot je internet.
Pomembno: Izpostavljenost redisov internetu brez kakršne koli varnosti omogoča izredno enostavno uporabo; zato zavarujte strežnik redis na naslednji način:
- blokirajte povezave z vrati redis v požarnem zidu sistema
- nastavite bind direktivo na povratni vmesnik: 127.0.0.1
- nastavite možnost passpass, tako da bodo odjemalci morali preveriti pristnost z ukazom AUTH.
- nastavite tunel SSL za šifriranje prometa med strežniki Redis in odjemalci Redis.
Za več informacij o uporabi zaženite spodnji ukaz:
$ redis-cli -h
Na domači strani Redis lahko najdete več strežniških ukazov in se naučite, kako uporabljati redis v svoji aplikaciji: https://redis.io/
V tej vadnici smo pokazali, kako namestiti, konfigurirati, upravljati in zaščititi Redis v Linuxu. Če želite deliti svoje misli, uporabite spodnji obrazec za komentar.