Redis Sentinel(哨兵)
7.1 哨兵介紹
Sentinel介紹
redis的主從模式下,主節點一旦發生故障不能提供服務,需要人工干預,將從節點晉升為主節點同時還需要修改客戶端配置。對於很多應用場景這種方式無法接受。
Sentinel(哨兵)架構解決了redis主從人工干預的問題。
redis sentinel是redis的高可用實現方案,實際生產環境中,對提高整個系統可用性非常有幫助的。
7.2 哨兵主要功能
Redis Sentinel 是一個分散式系統, Redis Sentinel為 Redis 提供高可用性。可以在沒有人為干預的情況下阻止某種型別的故障。
redis的sentinel系統用於管理多個redis伺服器(instance)該系統執行以下三個任務:
1.監控(Monitoring):
Sentine1 會不斷地定期檢查你的主伺服器和從伺服器是否運作正常。
2.提醒(Notification):
當被監控的某個 Redis伺服器出現問題時, sentinel可以透過 API 向管理員或者其他應用程式傳送通知。
3.自動故障遷移(Automatic failover)
當一個主伺服器不能正常工作時, sentine1 會開始一次自動故障遷移操作, 它會將失效主伺服器的其中一個從伺服器升級為新的主伺服器, 並讓失效主伺服器的其他從伺服器改為複製新的主伺服器; 當客戶端試圖連線失效的主伺服器時,叢集也會向客戶端返回新主伺服器的地址,
使得叢集可以使用新主伺服器代替失效伺服器
安裝命令
哨兵是基於主從複製,所以需要先部署好主從複製手工操作步驟如下:
1.先配置和建立好1臺伺服器的節點和哨兵
2.使用 rsync 傳輸到另外2臺機器
3.修改另外兩臺機器的ip地址 建議使用 ansible 指令碼本批次部署
db01命令
配置檔案詳解: