Redis三種集群模式-哨兵機制


Redis哨兵機制,一主二從

注:Redis哨兵切換,建議一主多從

一、一主二從

  教程步驟:https://www.cnblogs.com/pinghengxing/p/11139997.html

二、哨兵配置(sentinel.conf) 

  哨兵機制也分單台以及集群,在此我們只構建哨兵集群

      cd /usr/software/redis/redis-ms/ 

  1.創建哨兵目錄

    /usr/software/redis/redis-ms/sentinel/26001

    /usr/software/redis/redis-ms/sentinel/26002

    /usr/software/redis/redis-ms/sentinel/26003

  2.修改sentinel.conf

    cd  /usr/software/redis/redis-ms/sentinel/26001

    vim sentinel.conf

    #修改如下鍵值對 (自己創建對應的日志、數據文件目錄)

# bind 127.0.0.1 192.168.1.1

  protected-mode no
  port 26001
  daemonize yes
  pidfile /var/run/redis-sentinel_26001.pid
  logfile "/usr/software/redis/redis-ms/sentinel/26001/log/redis-sentinel.log"
  dir /usr/software/redis/redis-ms/sentinel/26001/tmp
  #設置 主名稱 ip地址 端口號 參入選舉的哨兵數
  #配置哨兵需要監控的主節點ip和端口,最后的2代表,如果有2個哨兵主觀認為主節點down了,
  #那么就客觀認為主節點down掉了,開始發起投票選舉新主節點的操作。多個主節點配置多個。
  sentinel monitor mymaster 140.143.26.123 7001 2
  # switched off.
  #設置連接master和slave時的密碼,注意的是sentinel不能分別為master和slave設置不同的密碼,
  #因此master和slave的密碼應該設置相同。
  sentinel auth-pass mymaster ww
  sentinel down-after-milliseconds mymaster 30000
  sentinel parallel-syncs mymaster 1
  sentinel failover-timeout mymaster 180000

針對其他的sentinel.conf只需要修改配置文件的地址以及端口(改為26002,26003)即可

 3、修改主redis.conf的以下配置

    masterauth ww# 主服務器配置masterauth作用主要是為了后期sentinel引入后重新選舉master並且7001端口redis重新加入主從復制時必備的,否則會出現權限不足

三、啟動測試、

    1、對redis-sentinel做軟連接(可以在任意目錄執行redis-sentinel )

    ln -s /usr/software/redis/redis-sentinel     /usr/bin/

    2、首先啟動三台redis

    

           然后啟動三台哨兵,如下:

     

    

    運行后發現sentinel.conf的配置文件被重寫了,從內容可以看出有哪些slave和sentinel

    

 

 四、故障轉移

 kill 掉 7001的主節點

 

發現主節點轉移到7003上

 重新啟動7001后,7001變為從節點,但發現連接不上主節點master_link_status:down,

這是因為我沒有在7001節點上設置

masterauth ww,設置后重啟,連接正常

 

設置masterauth ww 並重啟后狀態

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM