哨兵
主機”當機”
- 將當機的master下線
- 找一個slave作為master
- 通知所有的slave連線新的master
- 啟動新的master與slave
- 全量複製N+部分複製N
- 誰來確認master當機了
- 找一個主?怎麼個找法?
- 修改配置後,原來的主恢復了怎麼辦?
簡介
哨兵(sentinel)是一個分散式系統,用於對主從結構中的每臺伺服器進行監控,當出現故障時透過投票機制選擇新的master並將所有slave連線到新的master。
哨兵的作用
- 監控
不斷的檢查master和slave是否正常執行
master存活檢測、master與slave執行情況檢測 - 通知(提醒)
當被監控的伺服器出現問題時,向其他(哨兵間,客戶端)傳送通知。 - 自動故障轉移
斷開master與slave連線,選取一個slave作為master,將其他slave連線到新的master,並告知客戶端新的伺服器地址
注意:
哨兵也是一臺redis伺服器,只是不提供資料服務
通常哨兵配置數量為單數
配置哨兵
- 配置一拖二的主從結構
- 配置三個哨兵(配置相同,埠不同)
參看sentinel.conf - 啟動哨兵
redis-sentinel sentinel-埠號.conf
本作品採用《CC 協議》,轉載必須註明作者和本文連結