Redis如何部署哨兵
一、Redis數(shù)據(jù)庫
- 主從復(fù)制:主從復(fù)制是高可用Redis的基礎(chǔ),哨兵和集群都是在主從復(fù)制基礎(chǔ)上實現(xiàn)高可用的。主從復(fù)制主要實現(xiàn)了數(shù)據(jù)的多機(jī)備份,以及對于讀操作的負(fù)載均衡和簡單的故障恢復(fù)。缺陷:故障恢復(fù)無法自動化;寫操作無法負(fù)載均衡;存儲能力受到單機(jī)的限制。
- 哨兵:在主從復(fù)制的基礎(chǔ)上,哨兵實現(xiàn)了自動化的故障恢復(fù)。缺陷:寫操作無法負(fù)載均衡;存儲能力受到單機(jī)的限制;哨兵無法對從節(jié)點進(jìn)行自動故障轉(zhuǎn)移,在讀寫分離場景下,從節(jié)點故障會導(dǎo)致讀服務(wù)不可用,需要對從節(jié)點做額外的監(jiān)控、切換操作。
- 集群:通過集群,Redis解決了寫操作無法負(fù)載均衡,以及存儲能力受到單機(jī)限制的問題,實現(xiàn)了較為完善的高可用方案。
二、Redis哨兵模式
哨兵的核心功能:在主從復(fù)制的基礎(chǔ)上,哨兵引入了主節(jié)點的自動故障轉(zhuǎn)移。
#哨兵模式原理:哨兵(sentinel):是一個分布式系統(tǒng),用于對主從結(jié)構(gòu)中的每臺服務(wù)器進(jìn)行監(jiān)控,當(dāng)出現(xiàn)故障時通過投票機(jī)制選擇新的 Master 并將所有 Slave 連接到新的 Master。所以整個運行哨兵的集群的數(shù)量不得少于3個節(jié)點。
哨兵模式的作用:
- 監(jiān)控:哨兵會不斷地檢查主節(jié)點和從節(jié)點是否運作正常。
- 自動故障轉(zhuǎn)移:當(dāng)主節(jié)點不能正常工作時,哨兵會開始自動故障轉(zhuǎn)移操作,它會將失效主節(jié)點的其中一個從節(jié)點升級為新的主節(jié)點,并讓其他從節(jié)點改為復(fù)制新的主節(jié)點。
- 通知(提醒):哨兵可以將故障轉(zhuǎn)移的結(jié)果發(fā)送給客戶端。
哨兵結(jié)構(gòu)由兩部分組成,哨兵節(jié)點和數(shù)據(jù)節(jié)點:
- 哨兵節(jié)點:哨兵系統(tǒng)由一個或多個哨兵節(jié)點組成,哨兵節(jié)點是特殊的redis節(jié)點,不存儲數(shù)據(jù)。
- 數(shù)據(jù)節(jié)點:主節(jié)點和從節(jié)點都是數(shù)據(jù)節(jié)點。
哨兵的啟動依賴于主從模式,所以須把主從模式安裝好的情況下再去做哨兵模式,所有節(jié)點上都需要部署哨兵模式,哨兵模式會監(jiān)控所有的 Redis 工作節(jié)點是否正常,當(dāng) Master 出現(xiàn)問題的時候,因為其他節(jié)點與主節(jié)點失去聯(lián)系,因此會投票,投票過半就認(rèn)為這個 Master 的確出現(xiàn)問題,然后會通知哨兵間,然后從 Slaves 中選取一個作為新的 Master。
需要特別注意的是,客觀下線是主節(jié)點才有的概念;如果從節(jié)點和哨兵節(jié)點發(fā)生故障,被哨兵主觀下線后,不會再有后續(xù)的客觀下線和故障轉(zhuǎn)移操作。
三、部署Redis哨兵
第一步 關(guān)閉防火墻和安全機(jī)制
systemctl stop firewalld systemctl disable firewalld setenforce 0
第二步 修改Redis配置文件
vim /opt/redis-5.0.7/sentinel.conf
第三步 開啟Master主節(jié)點
cd /opt/redis-5.0.7 redis-sentinel sentinel.conf
第四步 查看哨兵信息
redis-cli -p 26379 info sentinel
到此這篇關(guān)于Redis如何部署哨兵的文章就介紹到這了,更多相關(guān)Redis 部署哨兵內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Redis刪除某個目錄下的數(shù)據(jù)的實現(xiàn)
本文介紹了如何在Redis中刪除指定目錄下的數(shù)據(jù),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-09-09window下創(chuàng)建redis出現(xiàn)問題小結(jié)
這篇文章主要介紹了window下創(chuàng)建redis出現(xiàn)問題總結(jié),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10使用Spring?Boot實現(xiàn)Redis鍵過期回調(diào)功能示例詳解
這篇文章主要介紹了使用Spring?Boot實現(xiàn)Redis鍵過期回調(diào)功能,就是一個實現(xiàn)Redis鍵過期回調(diào)功能的Spring?Boot應(yīng)用的示例,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-07-07基于redis 7.2.3的makefile源碼解讀學(xué)習(xí)
這篇文章主要為大家介紹了基于redis 7.2.3的makefile源碼解讀學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12