Kif Tinstalla Redis Server f'Sistemi Ibbażati fuq CentOS u Debian


Redis huwa maħżen tal-istruttura tad-dejta fil-memorja b'sors miftuħ, ta' prestazzjoni għolja u flessibbli (format ta' valur ewlieni) - użat bħala database, cache u sensar tal-messaġġi. Huwa miktub f'ANSI C u jaħdem fuq il-biċċa l-kbira, jekk mhux kollha, tas-sistemi operattivi bħal Unix inkluż Linux (rakkomandat għall-iskjerament) mingħajr dipendenzi esterni.

Huwa b'ħafna karatteristiċi, jappoġġja lingwi ta 'programmar multipli u strutturi tad-dejta inklużi kordi, hashes, listi, settijiet, settijiet magħżula b'mistoqsijiet ta' firxa, bitmaps fost oħrajn.

  • Jappoġġja l-biċċa l-kbira tal-lingwi ta' programmar inklużi C, Bash, Python, PHP, Node.js, Perl, Ruby biex insemmu biss ftit.
  • Għandu replikazzjoni inerenti, scripting Lua, żgumbrament LRU, transazzjonijiet kif ukoll livelli differenti ta' persistenza fuq id-diska.
  • Tipprovdi disponibbiltà għolja permezz ta' Redis Sentinel u qsim awtomatiku permezz ta' Redis Cluster.
  • Jappoġġja t-tmexxija ta' operazzjonijiet atomiċi.
  • Taħdem b'sett tad-dejta fil-memorja biex tikseb prestazzjoni notevoli.
  • Jappoġġja replikazzjoni asinkronika master-slave trivjali għal setup.
  • Jappoġġja failover awtomatiku.
  • Jippermettilek tissejvja d-dataset fuq disk b'mod mhux frekwenti għal perjodu ta' żmien partikolari, jew billi tehmeż kull kmand ma' log.
  • Jitppermetti d-diżattivazzjoni fakultattiva tal-persistenza.
  • Jappoġġja messaġġi għall-pubblikazzjoni/abbonament.
  • Jappoġġja wkoll transazzjonijiet MULTI, EXEC, DISCARD u WATCH u ħafna aktar.

  1. Server RHEL 7 b'Installazzjoni Minima
  2. Server Debian b'Installazzjoni Minima
  3. Kompilatur GCC u libc

F'dan it-tutorja, aħna ser nipprovdu struzzjonijiet dwar kif tinstalla Server Redis mis-sors (li huwa l-metodu rakkomandat) fil-Linux. Se nuru wkoll kif tikkonfigura, timmaniġġja u niżguraw Redis. Peress li Redis jaqdi d-dejta kollha mill-memorja, nissuġġerixxu bil-qawwa li tuża Server VPS ta 'memorja għolja ma' din il-gwida.

Pass 1: Installa Redis Server mis-Sors

1. L-ewwel, installa d-dipendenzi tal-bini meħtieġa.

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

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

2. Sussegwentement, niżżel u kkumpila l-aħħar verżjoni stabbli ta 'Redis billi tuża l-URL speċjali li dejjem jindika l-aħħar Redis stabbli bl-użu ta' kmand wget.

$ 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. Wara l-kumpilazzjoni Redis id-direttorju src ġewwa d-distribuzzjoni Redis huwa popolat bl-eżekutibbli differenti li ġejjin li huma parti minn Redis:

  • redis-server – server redis.
  • redis-sentinel – redis sentinel eżekutibbli (monitoraġġ u failover).
  • redis-cli – utilità CLI biex jinteraġixxi mar-redis.
  • redis-benchmark – użat biex jiċċekkja l-prestazzjonijiet tar-redis.
  • redis-check-aof u redis-check-dump – utli fil-każ rari ta' fajls tad-dejta korrotta.

Pass 2: Ikkonfigura Redis Server fil-Linux

4. Sussegwentement, għandek bżonn tikkonfigura Redis għal ambjent ta 'żvilupp li għandu jiġi ġestit mis-sistema init (systemd għall-iskop ta' dan it-tutorja). Ibda billi toħloq id-direttorji meħtieġa għall-ħażna tal-fajls tal-konfigurazzjoni Redis u d-dejta tiegħek:

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

4. Imbagħad ikkopja l-mudell tal-fajl tal-konfigurazzjoni Redis ipprovdut, fid-direttorju li ħloqt hawn fuq.

$ sudo cp redis.conf /etc/redis/

5. Issa tiftaħ il-fajl tal-konfigurazzjoni u aġġorna ftit settings kif ġej.

$ sudo vi /etc/redis/redis.conf

6. Imbagħad fittex l-għażliet li ġejjin, imbagħad ibdel (jew uża) il-valuri awtomatiċi tagħhom skont il-ħtiġijiet tal-ambjent lokali tiegħek.

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

Pass 3: Oħloq Redis Systemd Unit File

7. Issa għandek bżonn toħloq fajl ta 'unità systemd għal redis sabiex tikkontrolla d-daemon, billi tħaddem il-kmand li ġej.

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

U żid il-konfigurazzjoni hawn taħt:

[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

Issejvja u agħlaq il-fajl.

Pass 4: Immaniġġja u Ittestja Redis Server fil-Linux

8. Ladarba tkun wettaqt il-konfigurazzjonijiet kollha meħtieġa, issa tista 'tibda s-server Redis, għalissa, tippermettilu li jibda awtomatikament fil-boot tas-sistema; imbagħad ara l-istatus tagħha kif ġej.

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

9. Sussegwentement, ittestja jekk is-setup kollu tar-redis qed jaħdem tajjeb. Biex jinteraġixxi mas-server redis, uża l-kmand redis-cli. Wara li tikkonnettja mas-server, ipprova mexxi ftit kmandi.

$ 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. Imbagħad agħlaq il-konnessjoni mal-kmand ħruġ, u terġa 'tibda s-server redis. Wara, iċċekkja jekk mykey għadux maħżun fuq is-server kif muri hawn taħt:

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

11. Biex tħassar ċavetta, uża l-kmand tat-tħassir kif ġej:

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

Pass 5: Niżguraw Redis Server fil-Linux

12. Din it-taqsima hija maħsuba għal utenti li beħsiebhom jużaw server redis konness ma' netwerk estern bħall-Internet.

Importanti: L-esponiment tar-redis għall-Internet mingħajr ebda sigurtà jagħmilha estremament faċli biex jiġi sfruttat; għalhekk assigura s-server redis kif ġej:

  • imblokka l-konnessjonijiet mal-port redis fis-sistema firewalled
  • issessettja d-direttiva ta' bind għal interface loopback: 127.0.0.1
  • Issettja l-għażla requirepass sabiex il-klijenti jkunu meħtieġa jawtentikaw bl-użu tal-kmand AUTH.
  • stabbilixxi SSL tunneling biex tikkodifika t-traffiku bejn is-servers Redis u l-klijenti Redis.

Għal aktar informazzjoni dwar l-użu, mexxi l-kmand hawn taħt:

$ redis-cli -h

Tista' ssib aktar kmandi tas-server u titgħallem kif tuża redis fl-applikazzjoni tiegħek mill-Homepage ta' Redis: https://redis.io/

F'dan it-tutorja, urejna kif tinstalla, tikkonfigura, timmaniġġja kif ukoll niżgura Redis fil-Linux. Biex taqsam xi ħsibijiet, uża l-formola tal-kummenti hawn taħt.