redis哨兵

承接上一博客,配置兩個從 redis6380和redis6381,一個主 redis。機器環境是win10

配置哨兵

實際環境,每個服務器有一個哨兵,例如:n臺服務器,每臺服務器4個redis實例,那麼哨兵數量爲n,並不是4n。當前爲測試哨兵,只有一個機器,所以每個redis一個哨兵。

1.在redis、redis6380、redis6381下面分別建立sentinel.conf文件

#當前Sentinel服務運行的端口
port 26379

#Sentinel去監視一個名爲mymaster的主redis實例,這個主實例的IP地址爲本機地址127.0.0.1,端口號爲6379
sentinel monitor mymaster 127.0.0.1 6379 1

#指定了Sentinel認爲Redis實例已經失效所需的毫秒數。當 實例超過該時間沒有返回PING,或者直接返回錯誤,那麼Sentinel將這個實例標記爲主觀下線。
sentinel down-after-milliseconds mymaster 3000

這個是master的sentinel.conf,兩個master的sentinel.conf文件除了port其他配置文件,他們的port分別爲26380、26381

測試

1.打開三個doc窗口,分別進入redis、redis6380、redis6381目錄,輸入命令,啓動redis

redis-server.exe redis.windows.conf

2.把 redis6380 和 redis6381 設置爲從,redis設置爲主,對 redis6380 和 redis6381執行命令

slaveof 127.0.0.1 6379

3.打開哨兵,依舊在redis目錄下分別運行

  redis-server.exe sentinel.conf --sentinel

運行後如下:

 現在主是redis,我們關閉redis,來看看redis6380、redis6381以及哨兵的反應,對redis窗口ctrl +c

哨兵,6379關閉後 6381變成主:

redis6380,可以進行寫命令了,從是不可以寫的

redis6381,依舊不能寫

接下來重啓啓動6379端口,哨兵反應:

6379成爲了一個新的從,不可寫,6380和6381不變:

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章