redis配置主從備份以及主備切換方案配置
阿新 • • 發佈:2018-12-25
前提:redis中,主從切換場景中,沒有絕對的主和從,只有初始化的主和從,然後當主down後,從就變成主了,而主即使連線上,也是從,不會變為主
1、redis-server的主備關係:
需要配置的機器,以及主備關係如下
master:10.118.36.10
slave1:10.118.36.74
slave2:10.118.36.161
2、修改redis-server的配置檔案:
切換到redis的根目錄
# cd /home/admin/Downloads/redis-3.0.3
master配置不變, 兩臺slave修改配置檔案(# vi redis-3.0.3/redis.conf),新增如下語句,其餘用預設配置: slaveof 10.118.36.10 6379 3、修改redis-sentinel的配置檔案 (# vi redis-3.0.3/sentinel.conf),但是這裡我使用一個新的檔案(#
vi redis-3.0.3/sentinel-test.conf):
切換到redis的根目錄
# cd /home/admin/Downloads/redis-3.0.3
# vi redis-3.0.3/sentinel-test.conf
三臺機器配置相同,如下:
4、啟動redis-server服務和redis-sentinel服務
切換到redis的根目錄
# cd /home/admin/Downloads/redis-3.0.3
啟動redis-server
# ./src/redis-server redis.conf
啟動redis-sentinel
# ./src/redis-sentinelsentinel-test.conf
5、檢查redis狀態(三臺都執行) 切換到redis的根目錄 # cd /home/admin/Downloads/redis-3.0.3 查詢命令 # ./src/redis-cli 查詢狀態資訊 > ping 返回的結果如果是PONG ,則表示服務執行正常
然後繼續執行命令,檢查主備是否正常
> info Replication
檢視返回結果(關鍵點)
master應為(offset和lag無所謂):
master配置不變, 兩臺slave修改配置檔案(# vi redis-3.0.3/redis.conf),新增如下語句,其餘用預設配置: slaveof 10.118.36.10 6379 3、修改redis-sentinel的配置檔案
三臺機器配置相同,如下:
############################程式碼區域,begin############################ port 26379 #MyMaster sentinel monitorMyMaster 10.118.36.106379 1 sentinel down-after-millisecondsMyMaster 5000 sentinel failover-timeoutMyMaster 900000 sentinel parallel-syncsMyMaster 2 ############################程式碼區域,end############################
5、檢查redis狀態(三臺都執行) 切換到redis的根目錄 # cd /home/admin/Downloads/redis-3.0.3 查詢命令 # ./src/redis-cli 查詢狀態資訊 > ping 返回的結果如果是PONG
role:master connected_slaves:2 slave0:ip=10.118.36.74,port=6379,state=online,offset=1241704,lag=0 slave1:ip=10.118.36.161,port=6379,state=online,offset=1241704,lag=0slave應為:
role:slave master_host:10.118.36.10 master_port:6379 master_link_status:up6、檢查sentinel狀態(三臺都執行) 切換到redis的根目錄 # cd /home/admin/Downloads/redis-3.0.3 執行命令 # ./src/redis-cli -p 26379 查詢狀態資訊 > info 檢視結果如果有如下所示,即表示正常叢集配置正常執行
# Sentinel sentinel_masters:1 sentinel_tilt:0 sentinel_running_scripts:0 sentinel_scripts_queue_length:0 master0:name=MyMaster,status=ok,address=10.118.36.10:6379,slaves=2,sentinels=3