Bii o ṣe le Fi Server Server Redis sori ẹrọ ni CentOS ati Awọn ọna ipilẹ Debian


Redis jẹ orisun-ṣiṣi, iṣẹ ṣiṣe giga ati rọ itaja eto iṣeto-iranti (ọna kika iye-bọtini) - ti a lo bi ibi ipamọ data kan, kaṣe ati alagbata ifiranṣẹ. A ti kọ ọ ni ANSI C ati ṣiṣe lori pupọ ti kii ba ṣe gbogbo awọn ẹrọ ṣiṣe bii Unix pẹlu Lainos (iṣeduro fun ṣiṣiṣẹ) laisi awọn igbẹkẹle ita.

O jẹ ọlọrọ ẹya-ara, ṣe atilẹyin awọn ede siseto lọpọlọpọ ati awọn ẹya data pẹlu awọn okun, awọn elile, awọn atokọ, awọn atokọ, awọn eto ti a ṣe lẹsẹsẹ pẹlu awọn ibeere ibiti, bitmaps laarin awọn miiran.

  • Ṣe atilẹyin ọpọlọpọ awọn ede siseto pẹlu C, Bash, Python, PHP, Node.js, Perl, Ruby kan lati darukọ ṣugbọn diẹ.
  • Ni atunda atọwọdọwọ, iwe afọwọkọ Lua, iyasilẹ LRU, awọn iṣowo bii awọn ipele oriṣiriṣi ti itẹramọṣẹ lori-disk.
  • Pese wiwa to gaju nipasẹ Redis Sentinel ati pipin aifọwọyi nipasẹ Redis Cluster.
  • Atilẹyin fun ṣiṣe awọn iṣẹ atomiki.
  • O n ṣiṣẹ pẹlu iwe data inu-iranti lati ni iṣẹ ṣiṣe ti o lapẹẹrẹ.
  • Ṣe atilẹyin atilẹyin ainitẹ-si-iṣeto oluwa-ẹrú idapọmọra asynchronous.
  • Ṣe atilẹyin ailagbara aifọwọyi.
  • n fun ọ laaye lati ṣafipamọ iwe data si disiki kii ṣe loorekoore fun akoko kan ti a fifun, tabi nipa fifiwe aṣẹ kọọkan si iwe-akọọlẹ kan.
  • Faye gba imukuro yiyan ti itẹramọṣẹ.
  • Ṣe atilẹyin atilẹyin atẹjade/ṣiṣe alabapin.
  • O tun ṣe atilẹyin MULTI, EXEC, DISCARD ati WATCH awọn iṣowo ati ọpọlọpọ diẹ sii.

  1. Olupin RHEL 7 pẹlu Pipin Pọọku
  2. Olupin Debian kan pẹlu Pipin Pọọku
  3. Akopọ GCC ati libc

Ninu ẹkọ yii, a yoo pese awọn itọnisọna lori bawo ni a ṣe le fi Redis Server sori ẹrọ lati orisun (eyiti o jẹ ọna iṣeduro) ni Lainos. A yoo tun fihan bi a ṣe le tunto, ṣakoso ati ni aabo Redis. Niwọn igba ti Redis ṣe iranṣẹ gbogbo data lati iranti, a daba ni iṣeduro lilo iranti VPS Server giga pẹlu itọsọna yii.

Igbesẹ 1: Fi Redis Server sii lati Orisun

1. Ni akọkọ, fi awọn igbẹkẹle kọ ti a beere sii.

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

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

2. Itele, ṣe igbasilẹ ati ṣajọ ẹya iduroṣinṣin Redis tuntun nipa lilo URL pataki ti o tọka nigbagbogbo si iduroṣinṣin tuntun Redis nipa lilo pipaṣẹ 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. Lẹhin akopọ Redis liana src inu pinpin kaakiri Redis jẹ olugbe pẹlu oriṣiriṣi awọn alaṣe atẹle ti o jẹ apakan ti Redis:

  • redis-server - olupin redis.
  • redis-sentinel - redis sentinel executable (mimojuto ati aiṣododo).
  • redis-cli - iwulo CLI lati ṣe pẹlu redis.
  • redis-benchmark - lo lati ṣayẹwo awọn iṣẹ redis.
  • redis-check-aof ati redis-check-dump - wulo ni iṣẹlẹ toje ti awọn faili data ibajẹ.

Igbese 2: Tunto Redis Server ni Lainos

4. Itele, o nilo lati tunto Redis fun agbegbe idagbasoke lati ṣakoso nipasẹ eto init (eto fun idi ti ẹkọ yii). Bẹrẹ nipa ṣiṣẹda awọn ilana pataki fun titoju awọn faili atunto Redis ati data rẹ:

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

4. Lẹhinna daakọ awoṣe faili iṣeto Redis ti a pese, sinu itọsọna ti o ṣẹda loke.

$ sudo cp redis.conf /etc/redis/

5. Bayi ṣii faili iṣeto ni ki o ṣe imudojuiwọn awọn eto diẹ bi atẹle.

$ sudo vi /etc/redis/redis.conf

6. Wiwa atẹle fun awọn aṣayan atẹle, lẹhinna yipada (tabi lo) awọn iye aiyipada wọn gẹgẹbi awọn aini agbegbe rẹ.

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

Igbesẹ 3: Ṣẹda Redis Systemd Unit Faili

7. Bayi o nilo lati ṣẹda faili sipo eto fun redis lati ṣakoso daemon, nipa ṣiṣe pipaṣẹ atẹle.

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

Ati ṣafikun iṣeto ni isalẹ:

[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

Fipamọ ki o pa faili naa.

Igbesẹ 4: Ṣakoso ati Idanwo Redis Server ni Lainos

8. Lọgan ti o ba ti ṣe gbogbo awọn atunto ti o yẹ, o le bẹrẹ bayi olupin Redis, fun bayi, jẹ ki o bẹrẹ ni adaṣe ni bata eto; lẹhinna wo ipo rẹ bi atẹle.

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

9. Itele, idanwo ti gbogbo eto redis ba n ṣiṣẹ daradara. Lati ṣepọ pẹlu olupin redis, lo pipaṣẹ redis-cli. Lẹhin sisopọ si olupin, gbiyanju ṣiṣe awọn ofin diẹ.

$ 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. Lẹhinna pa asopọ pẹlu pipaṣẹ , ki o tun bẹrẹ olupin redis naa. Lẹhinna, ṣayẹwo boya mykey tun wa ni fipamọ lori olupin bi o ṣe han ni isalẹ:

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

11. Lati paarẹ bọtini kan, lo pipaṣẹ paarẹ bi atẹle:

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

Igbesẹ 5: Ṣiṣe aabo Redis Server ni Lainos

12. Apakan yii ni a pinnu fun awọn olumulo ti o pinnu lati lo olupin redis ti o sopọ si nẹtiwọọki ita bi Intanẹẹti.

Pataki: Fifihan redis si Intanẹẹti laisi aabo eyikeyi jẹ ki o rọrun lalailopinpin lati lo nilokulo; nitorinaa ṣe aabo olupin redis gẹgẹbi atẹle:

  • dè awọn isopọ si ibudo redis ninu ina ti a fi sori ẹrọ
  • ṣeto itọsọna abuda si wiwo loopback: 127.0.0.1
  • ṣeto aṣayan ifaagun ki awọn alabara yoo nilo lati jẹrisi nipa lilo aṣẹ AUTH.
  • tunnel tunnel SSL si encrypt ijabọ laarin awọn olupin Redis ati awọn alabara Redis.

Fun alaye ilo diẹ sii, ṣiṣe aṣẹ ni isalẹ:

$ redis-cli -h

O le wa awọn aṣẹ olupin diẹ sii ki o kọ ẹkọ bi o ṣe le lo redis laarin ohun elo rẹ lati oju-ile Redis: https://redis.io/

Ninu ẹkọ yii, a fihan bi a ṣe le fi sori ẹrọ, tunto, ṣakoso bi daradara bi aabo Redis ni Lainos. Lati pin eyikeyi awọn ero, lo fọọmu asọye ni isalẹ.