echo編輯整理,歡迎轉載,轉載請聲明文章來源。歡迎添加echo微信(微信號:t2421499075)交流學習。 百戰不敗,依不自稱常勝,百敗不頹,依能奮力前行。——這纔是真正的堪稱強大!!!redis
搭建Redis集羣以前請準備好3臺已經安裝好Redis的服務器,CentOS7下安裝Redis請閱讀:https://blog.csdn.net/xlecho/article/details/102975520算法
服務器地址 | 系統 | Redis版本 |
---|---|---|
192.168.222.133 | CentOS7 | 5.0.1 |
192.168.222.134 | CentOS7 | 5.0.1 |
192.168.222.135 | CentOS7 | 5.0.1 |
咱們以135做爲master,其餘兩個節點所有做爲slave節點安全
slaveof 192.168.222.135 6379 # 注意,若是你的節點設置了密碼訪問,你須要配置下面這個配置 masterauth master密碼
這裏沒有將slave設置成爲‘只讀’,若是實際生產環境若是不設置這個集羣就會出現重大問題。服務器
service redis start
# 啓動redis redis-server redis.conf # 鏈接redis redis-cli -h 192.168.222.135 -p 6379 # 查看狀態 info replication
配置若是成功咱們能夠看到以下信息:
微信
退出集羣比較簡單,能夠直接刪除掉上面的配置,也能夠執行如下命令併發
slaveof no one
看到這個信息咱們就已經完成了咱們的主從配置。可是什麼是哨兵模式?哨兵模式是基於咱們集羣的,咱們有了集羣以後,咱們就要來配置咱們的哨兵模式了性能
哨兵模式英文名Sentinel,它是爲了解決Redis集羣的高可用應運而生的。Redis集羣,通常來講只會有一個master服務,當master掛掉以後,之能手動切換master就會形成一段時間內的服務不可用。sentinel就是專門針對這種狀況而產生的一個監聽服務。它主要負責監聽咱們一個組內全部Redis,當咱們的master掛掉以後,它就會根據Raft算法進行選舉一臺新的leader出來,而後將選舉出來的leader當成咱們的master。學習
哨兵模式的主要做用就是監控弄Redis集羣,因此咱們搭建哨兵模式以前要確認咱們的Redis集羣已經成功搭建了。哨兵模式的搭建其實也相對比較簡單,只須要配置主節點監控便可。.net
# 找到redis根目錄下面的sentinel.conf的配置文件,修改以下配置 daemonize yes port 26379 protected-mode no dir /usr/local/redis/redis-5.0.1/sentinel-tmp sentinel monitor mymaster 192.168.222.135 6379 2 sentinel auth-pass mymaster 48835a9c-7a5a-4ec8-af6a-80af3e87b194 # 若是哨兵3s內沒有收到主節點的心跳,哨兵就認爲主節點宕機了,默認是30秒 sentinel down-after-milliseconds mymaster 3000 # 若是10秒後,master仍沒活過來,則啓動failover,默認180s sentinel failover-timeout mymaster 10000
# 啓動redis服務 redis-server redis.conf # 啓動sentinel redis-sentinel sentinel.conf
模擬以前確保咱們的redis、sentinel服務都啓動了,登陸master,直接在master上面進行shutdown。操做完成以後等待一會,而後使用登陸咱們的從服務器,鏈接上從服務的redis以後,咱們使用命令info replication 查看當前節點是否成爲了mastercode
這是因爲咱們的下面兩行配置的位置放反了引發的。正確順序按照下面的順序便可
sentinel monitor mymaster 192.168.222.135 6379 2 sentinel auth-pass mymaster 48835a9c-7a5a-4ec8-af6a-80af3e87b194
作一個有底線的博客主