Redis 主備搭建
在之前的文章中已經(jīng)描述怎么樣來搭建 redis 的高可用服務(wù),但是在實際使用中由于 spring 和 jedis 無法很好的支持,第三方的支持又不敢直接使用,所以在生產(chǎn)環(huán)境中采用了主備的架構(gòu)。
準(zhǔn)備 3 臺服務(wù)器,分別為 192.168.100.1、192.168.100.2、192.168.100.3。Redis 部署結(jié)構(gòu)如下:<br />
192.168.100.1 -- Master Sentinel <br />
192.168.100.2 -- Slave Sentinel <br />
192.168.100.3 -- Slave Sentinel <br />
下面分別介紹每個節(jié)點 Redis.conf 的內(nèi)容,下面值列出了 Master修改的部分:
daemonize yes // 后臺進(jìn)程運(yùn)行
masterauth "123456" // 連接密碼
requirepass "123456" // 防止主備切換后設(shè)置的密碼
接下來是 slave 的 Redis.conf 設(shè)置,下面只是個性的配置:
daemonize yes // 后臺進(jìn)程運(yùn)行
masterauth "123456"
requirepass "123456" // 防止主備切換后設(shè)置的密碼
slaveof 192.168.100.33 6379 // 設(shè)置主的IP配置
通過上面的配置已經(jīng)搭建起主從的配置了,首先要啟動 Master ,然后啟動 Slave 。然后通過 ./redis-cli 命令來查看是否成功。
下面來配置 Redis 的監(jiān)控程序,需要修改的是 sentinel.conf 配置文件。三個節(jié)點的配置都一樣,如下,具體參數(shù)請查看 sentinel.conf 文檔。
port 26380
sentinel monitor mymaster 192.168.100.1 6379 1
sentinel auth-pass mymaster 123456 // 123456 是密碼
sentinel down-after-milliseconds mymaster 30000
sentinel failover-timeout mymaster 80000
sentinel parallel-syncs mymaster 1
接下來就是分別啟動 sentinel ,命令如下:
src/redis-sentinel sentinel.conf