Jinsi ya Kufunga Seva ya Redis katika Mifumo ya CentOS na Debian


Redis ni hifadhi ya chanzo huria, yenye utendaji wa juu na inayoweza kunyumbulika ya muundo wa data ya kumbukumbu (muundo wa thamani ya ufunguo) - inayotumika kama hifadhidata, kache na wakala wa ujumbe. Imeandikwa katika ANSI C na hutumika kwa mifumo mingi ya uendeshaji kama si Unix ikiwa ni pamoja na Linux (inayopendekezwa kwa kupelekwa) bila tegemezi za nje.

Ina vipengele vingi, inasaidia lugha nyingi za programu na miundo ya data ikiwa ni pamoja na masharti, heshi, orodha, seti, seti zilizopangwa na maswali mbalimbali, bitmaps kati ya zingine.

  • Inaauni lugha nyingi za programu zikiwemo C, Bash, Python, PHP, Node.js, Perl, Ruby kwa kutaja chache tu.
  • Ina urudufishaji asilia, uandishi wa Lua, kufukuzwa kwa LRU, miamala na viwango tofauti vya uendelevu kwenye diski.
  • Hutoa upatikanaji wa juu kupitia Redis Sentinel na ugawaji kiotomatiki kupitia Redis Cluster.
  • Inaauni uendeshaji wa shughuli za atomiki.
  • Hufanya kazi na mkusanyiko wa data wa kumbukumbu ili kufikia utendakazi wa ajabu.
  • Inaauni urudufishaji wa asynchronous wa bwana-mkubwa mdogo-kwa-usanidi.
  • Inaauni kushindwa kiotomatiki.
  • Hukuwezesha kuhifadhi seti ya data kwenye diski mara chache kwa muda fulani, au kwa kuambatisha kila amri kwenye kumbukumbu.
  • Huruhusu kulemaza kwa hiari ya kuendelea.
  • Inaauni uchapishaji/usajili wa utumaji ujumbe.
  • Pia inasaidia shughuli za MULTI, EXEC, DISCARD na WATCH na mengine mengi.

  1. Seva ya RHEL 7 iliyo na Usakinishaji mdogo
  2. Seva ya Debian iliyo na Usakinishaji mdogo
  3. Mkusanyaji wa GCC na libc

Katika somo hili, tutatoa maagizo ya jinsi ya kusakinisha Seva ya Redis kutoka kwa chanzo (ambayo ndiyo njia inayopendekezwa) katika Linux. Pia tutaonyesha jinsi ya kusanidi, kudhibiti na salama Redis. Kwa kuwa Redis hutumikia data zote kutoka kwa kumbukumbu, tunapendekeza sana kutumia Seva ya VPS yenye kumbukumbu ya juu na mwongozo huu.

Hatua ya 1: Sakinisha Seva ya Redis kutoka Chanzo

1. Kwanza, weka utegemezi wa kujenga unaohitajika.

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

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

2. Kisha, pakua na ukusanye toleo la hivi punde la Redis dhabiti kwa kutumia URL maalum ambayo kila wakati huelekeza kwenye Redis ya hivi punde kwa kutumia amri ya 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. Baada ya ujumuishaji wa Redis saraka ya src ndani ya usambazaji wa Redis inajazwa na utekelezeji ufuatao ambao ni sehemu ya Redis:

  • redis-server – redis seva.
  • redis-sentinel - redis sentinel inayoweza kutekelezwa (ufuatiliaji na kushindwa).
  • redis-cli - shirika la CLI ili kuingiliana na redis.
  • redis-benchmark - hutumika kuangalia maonyesho ya redis.
  • redis-check-aof na redis-check-dump - muhimu katika tukio nadra la faili za data mbovu.

Hatua ya 2: Sanidi Seva ya Redis katika Linux

4. Kisha, unahitaji kusanidi Redis kwa mazingira ya uendelezaji ili kusimamiwa na mfumo wa init (uliopangwa kwa madhumuni ya mafunzo haya). Anza kwa kuunda saraka muhimu za kuhifadhi faili za usanidi wa Redis na data yako:

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

4. Kisha nakili kiolezo cha faili ya usanidi ya Redis iliyotolewa, kwenye saraka uliyounda hapo juu.

$ sudo cp redis.conf /etc/redis/

5. Sasa fungua faili ya usanidi na usasishe mipangilio michache kama ifuatavyo.

$ sudo vi /etc/redis/redis.conf

6. Tafuta chaguo zifuatazo, kisha ubadilishe (au utumie) thamani zao msingi kulingana na mahitaji ya eneo lako la mazingira.

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

Hatua ya 3: Unda Faili ya Kitengo cha Redis Systemd

7. Sasa unahitaji kuunda faili ya kitengo cha systemd kwa redis ili kudhibiti daemon, kwa kuendesha amri ifuatayo.

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

Na ongeza usanidi hapa chini:

[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

Hifadhi na funga faili.

Hatua ya 4: Dhibiti na Ujaribu Seva ya Redis katika Linux

8. Mara baada ya kufanya usanidi wote muhimu, sasa unaweza kuanza seva ya Redis, kwa sasa, iwezeshe kuanza kiotomatiki kwenye boot ya mfumo; kisha tazama hali yake kama ifuatavyo.

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

9. Kisha, jaribu ikiwa usanidi wote wa redis unafanya kazi vizuri. Ili kuingiliana na seva ya redis, tumia amri ya redis-cli. Baada ya kuunganisha kwenye seva, jaribu kuendesha amri chache.

$ 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. Kisha funga muunganisho kwa toka amri, na uanzishe upya seva. Baadaye, angalia ikiwa mykey bado imehifadhiwa kwenye seva kama inavyoonyeshwa hapa chini:

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

11. Kufuta kitufe, tumia amri ya kufuta kama ifuatavyo:

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

Hatua ya 5: Kulinda Seva ya Redis katika Linux

12. Sehemu hii imekusudiwa watumiaji wanaokusudia kutumia seva ya redis iliyounganishwa kwenye mtandao wa nje kama vile Mtandao.

Muhimu: Kufichua redis kwenye Mtandao bila usalama wowote hurahisisha sana kutumia; kwa hivyo salama seva ya redis kama ifuatavyo:

  • zuia miunganisho kwenye lango la redis katika mfumo ulio na kinga
  • weka maagizo ya kumfunga kwenye kiolesura cha kurudi nyuma: 127.0.0.1
  • weka chaguo la demandpass ili wateja watahitajika kuthibitisha kwa kutumia amri ya AUTH.
  • sanidi kichuguu cha SSL ili kusimba trafiki kwa njia fiche kati ya seva za Redis na wateja wa Redis.

Kwa habari zaidi ya utumiaji, endesha amri hapa chini:

$ redis-cli -h

Unaweza kupata amri zaidi za seva na ujifunze jinsi ya kutumia redis ndani ya programu yako kutoka kwa Ukurasa wa Nyumbani wa Redis: https://redis.io/

Katika somo hili, tulionyesha jinsi ya kusakinisha, kusanidi, kudhibiti na vile vile salama Redis katika Linux. Ili kushiriki mawazo yoyote, tumia fomu ya maoni hapa chini.