Kif Issettja Redis Għal Disponibbiltà Għolja b'Sentinel f'CentOS 8 - Parti 2
Redis jipprovdi disponibbiltà għolja permezz tas-sistema distribwita Redis Sentinel. Sentinel jgħin biex jimmonitorja l-istanzi ta 'Redis, jiskopri fallimenti u se jagħmel swiċċijiet ta' rwoli awtomatikament u b'hekk jippermetti skjerament ta 'Redis biex jirreżisti kwalunkwe tip ta' fallimenti.
Hija tinkludi monitoraġġ ta 'istanzi Redis (kaptan u repliki), tappoġġja notifika ta' servizzi/proċessi oħra jew l-amministratur tas-sistema permezz ta 'skript, failover awtomatiku biex jippromwovi replika għal kaptan meta l-kaptan jinżel u jipprovdi konfigurazzjoni għall-klijenti biex jiskopru l-kurrent kaptan li joffri servizz partikolari.
Dan l-artikolu juri kif twaqqaf Redis għal disponibbiltà għolja b'Redis Sentinel f'CentOS 8, inkluż il-konfigurazzjoni tas-sentinelli, il-verifika tal-istatus tas-setup u l-ittestjar ta' failover ta' Sentinel.
- Kif Twaqqaf ir-Replikazzjoni Redis (bil-Modalità Cluster Disabled) f'CentOS 8 – Parti 1
Master Server and Sentinel1: 10.42.0.247 Redis Replica1 and Sentinel2: 10.42.0.21 Redis Replica2 and Sentinel3: 10.42.0.34
Skont id-dokumentazzjoni Redis Sentinel, wieħed jeħtieġ mill-inqas tliet istanzi Sentinel għal skjerament robust. Meta wieħed iqis it-twaqqif tagħna hawn fuq, jekk il-kaptan ifalli, Sentinels2 u Sentinel3 jaqblu dwar il-falliment u jkunu jistgħu jawtorizzaw failover, u b'hekk l-operazzjonijiet tal-klijenti jkunu jistgħu jkomplu.
Pass 1: Bidu u Attivazzjoni tas-Servizz Redis Sentinel
1. Fuq CentOS 8, is-servizz Redis Sentinel huwa installat flimkien mas-server Redis (li diġà għamilna fis-Setup tar-Replikazzjoni Redis).
Biex tibda s-servizz sentinel Redis u tippermettilu li jibda awtomatikament mal-boot tas-sistema, uża l-kmandi systemctl li ġejjin. Ukoll, ikkonferma li qed jaħdem billi tiċċekkja l-istatus tagħha (agħmel dan fuq in-nodi kollha):
# systemctl start redis-sentinel # systemctl enable redis-sentinel # systemctl status redis-sentinel
Pass 2: Konfigurazzjoni ta 'Redis Sentinel fuq in-Nodi Redis kollha
2. F'din it-taqsima, nispjegaw kif tikkonfigura Sentinel fuq in-nodi kollha tagħna. Is-servizz Sentinel għandu format ta 'konfigurazzjoni simili bħas-server Redis. Biex tikkonfiguraha, uża l-fajl tal-konfigurazzjoni /etc/redis-sentinel.conf iddokumentat lilu nnifsu.
L-ewwel, oħloq backup tal-fajl oriġinali u tiftaħha għall-editjar.
# cp /etc/redis-sentinel.conf /etc/redis-sentinel.conf.orig # vi /etc/redis-sentinel.conf
3. B'mod awtomatiku, Sentinel jisma' fuq il-port 26379, ivverifika dan fuq l-istanzi kollha. Innota li trid tħalli l-parametru tal-irbit ikkummentat barra (jew issettjat għal 0.0.0.0).
port 26379
4. Sussegwentement, għid lil Sentinel biex tissorvelja l-kaptan tagħna, u biex tikkunsidraha fl-istat \Objettivament Down biss jekk jaqblu mill-inqas 2 sentinelli tal-kworum. Tista' tissostitwixxi \mymaster b'isem personalizzat.
#On Master Server and Sentinel1 sentinel monitor mymaster 127.0.0.1 6379 2 #On Replica1 and Sentinel2 sentinel monitor mymaster 10.42.0.247 6379 2 #On Replica1 and Sentinel3 sentinel monitor mymaster 10.42.0.247 6379 2
Importanti: Id-dikjarazzjoni tal-monitor tas-sentinel GĦANDHA titqiegħed qabel id-dikjarazzjoni tal-passa tal-awtorizzazzjoni tas-sentinel biex jiġi evitat l-iżball \L-ebda kaptan bħal dan bl-isem speċifikat. meta jerġa’ jibda s-servizz sentinella.
5. Jekk il-kaptan Redis li għandu jimmonitorja għandu sett ta' password (fil-każ tagħna l-kaptan għandu), ipprovdi l-password sabiex l-istanza Sentinel tkun tista' jawtentika mal-istanza protetta.
sentinel auth-pass mymaster [email
6. Imbagħad issettja n-numru ta 'millisekondi li l-kaptan (jew kwalunkwe replika jew sentinella mehmuża) m'għandux ikun jista' jintlaħaq biex jikkunsidrah fl-istat \Suġġettivament Down.
Il-konfigurazzjoni li ġejja tfisser li l-kaptan jitqies li qed ifalli hekk kif ma nirċievu ebda tweġiba mill-pings tagħna fi żmien 5 sekondi (sekonda 1 hija ekwivalenti għal 1000 millisekondi).
sentinel down-after-milliseconds mymaster 5000
7. Sussegwentement, issettja l-timeout tal-failover f'millisekondi li jiddefinixxi ħafna affarijiet (aqra d-dokumentazzjoni tal-parametru fil-fajl tal-konfigurazzjoni).
sentinel failover-timeout mymaster 180000
8. Imbagħad issettja n-numru ta 'repliki li jistgħu jiġu kkonfigurati mill-ġdid biex jużaw il-kaptan il-ġdid wara failover fl-istess ħin. Peress li għandna żewġ repliki, se nissettjaw replika waħda peress li l-oħra se tiġi promossa għall-kaptan il-ġdid.
sentinel parallel-syncs mymaster 1
Innota li l-fajls tal-konfigurazzjoni fuq Redis Replica1 u Sentinel2, u Reddis Replica1 u Sentinel2 għandhom ikunu identiċi.
9. Sussegwentement, ibda mill-ġdid is-servizzi Sentinel fuq in-nodi kollha biex tapplika l-bidliet riċenti.
# systemctl restart redis-sentinel
10. Sussegwentement, tiftaħ il-port 26379 fil-firewall fuq in-nodi kollha biex tippermetti lill-istanzi Sentinel jibdew jitkellmu, jirċievu konnessjonijiet mill-istanzi Sentinel l-oħra, billi tuża l-firewall-cmd.
# firewall-cmd --zone=public --permanent --add-port=26379/tcp # firewall-cmd --reload
11. Ir-repliki kollha jiġu skoperti awtomatikament. Importanti, Sentinel se taġġorna l-konfigurazzjoni awtomatikament b'informazzjoni addizzjonali dwar repliki. Tista' tikkonferma dan billi tiftaħ il-fajl tal-konfigurazzjoni Sentinel għal kull istanza u tħares minnha.
Pereżempju, meta tħares lejn it-tmiem tal-fajl tal-konfigurazzjoni tal-kaptan, għandek tara d-dikjarazzjonijiet magħrufa-sentinels u magħrufa-repliki kif muri fil-screenshot li ġej.
Għandu jkun l-istess każ fuq replica1 u replica2.
Innota li l-konfigurazzjoni Sentinel hija wkoll miktuba mill-ġdid/aġġornata kull darba li replika tiġi promossa għal status kaptan waqt failover u kull darba li Sentinel ġdida tiġi skoperta fis-setup.
Pass 3: Iċċekkja l-Istatus tas-Setup ta' Redis Sentinel
12. Issa iċċekkja l-istatus/informazzjoni Sentinel fuq il-kaptan, billi tuża l-kmand info sentinel kif ġej.
# redis-cli -p 26379 info sentinel
Mill-output tal-kmand kif jidher fil-screenshot li ġej, għandna żewġ repliki/skjavi u tliet sentinelli.
13. Biex turi informazzjoni dettaljata dwar il-kaptan (imsejjaħ mymaster), uża l-kmand tal-kaptan sentinella.
# redis-cli -p 26379 sentinel master mymaster
14. Biex turi informazzjoni dettaljata dwar l-iskjavi u s-sentinelli, uża l-kmand tal-iskjavi sentinelli u l-kmand tas-sentinelli rispettivament.
# redis-cli -p 26379 sentinel slaves mymaster # redis-cli -p 26379 sentinel sentinels mymaster
15. Sussegwentement, staqsi l-indirizz tal-kaptan bl-isem mill-istanzi tal-iskjavi billi tuża l-kmand sentinel get-master-addr-by-name kif ġej.
L-output għandu jkun l-indirizz IP u l-port tal-istanza prinċipali attwali:
# redis-cli -p 26379 sentinel get-master-addr-by-name mymaster
Pass 4: Ittestja l-Failover Sentinel
16. Fl-aħħarnett, ejja nittestjaw failover awtomatiku fis-setup Sentinel tagħna. Fuq il-kaptan Redis/Sentinel, agħmel li l-kaptan Redis (li jaħdem fuq il-port 6379) jorqod għal 60 sekonda. Imbagħad mistoqsija l-indirizz tal-kaptan attwali fuq ir-repliki/iskjavi kif ġej.
# redis-cli -p 6379 127.0.0.1:6379> AUTH [email 127.0.0.1:6379> debug sleep 60 # redis-cli -p 26379 sentinel get-master-addr-by-name mymaster # redis-cli -p 26379 sentinel get-master-addr-by-name mymaster
Mill-output għall-mistoqsija, il-kaptan il-ġdid issa huwa replika/slave2 bl-indirizz IP 10.42.0.34 kif jidher fil-screenshot li ġej.
Tista' tikseb aktar informazzjoni mid-dokumentazzjoni ta' Redis Sentinel. Imma jekk għandek xi ħsibijiet x'taqsam jew mistoqsijiet, il-formola ta' feedback hawn taħt hija l-portal tiegħek għalina.
Fil-parti li jmiss u l-aħħar ta 'din is-serje, se nħarsu lejn kif twaqqaf Redis Cluster f'CentOS 8. Se jkun artiklu indipendenti mill-ewwel tnejn.