redis 搭建主从复制以及哨兵模式

单机模拟  https://my.oschina.net/shxjinchao/blog/2046247

修改7001节点的配置文件

cd /usr/local/redis-sentry/etc/7001/
vi redis.conf
###具体需要修改的配置
port 7001
####redis一般都在内网运行,所以注释掉#bind 127.0.0.1
# bind 127.0.0.1
关闭保护模式,protected-mode 把yes改为no
protected-mode no
##开启后台守护进程模式启动
daemonize yes
##密码
requirepass 123456
##
masterauth 123456
pidfile /var/run/redis_7001.pid
###指明日志文件名
logfile "/usr/local/redis-sentry/logs/7001/7001.log"
dir /usr/local/redis-sentry/data/7001

修改7002节点的配置文件

cd /usr/local/redis-sentry/etc/7002/
vi redis.conf
###具体需要修改的配置
port 7002
###注释掉bind属性
# bind 127.0.0.1
protected-mode no
##开启后台守护进程模式启动
daemonize yes
##密码
requirepass 123456
##
masterauth 123456
pidfile /var/run/redis_7002.pid
logfile "/usr/local/redis-sentry/logs/7002/7002.log"
dir /usr/local/redis-sentry/data/7002

修改7003节点的配置文件

cd /usr/local/redis-sentry/etc/7003/
vi redis.conf
###具体需要修改的配置
port 7003
###注释掉bind属性
# bind 127.0.0.1
protected-mode no
##开启后台守护进程模式启动
daemonize yes
##密码
requirepass 123456
##
masterauth 123456
pidfile /var/run/redis_7003.pid
logfile "/usr/local/redis-sentry/logs/7003/7003.log"
dir /usr/local/redis-sentry/data/7003

在/user/local/redis-sentry/etc/7002/redis.conf  和 /user/local/redis-sentry/etc/7003/redis.conf中配置如下:

vi /usr/local/redis-sentry/etc/7003/redis.conf
slaveof 192.168.56.100 7001

在7002节点创建哨兵配置文件

cd /usr/local/redis-sentry/etc/7002/ vi sentinel.conf

#sentinel端口
port 27002
#工作路径,注意路径不要和主重复,下面给出创建目录
dir "/usr/local/redis-sentry/sentry/7002/"
# 守护进程模式
daemonize yes
#关闭保护模式
protected-mode no
# 指明日志文件名
logfile "./sentinel.log"
#哨兵监控的master,主从配置一样,这里只用输入redis主节点的ip/port和法定人数。
sentinel monitor mymaster 192.168.56.100 7001 1
# master或slave多长时间(默认30秒)不能使用后标记为s_down状态。
sentinel down-after-milliseconds mymaster 5000
#若sentinel在该配置值内未能完成failover操作(即故障时master/slave自动切换),则认为本次failover失败。
sentinel failover-timeout mymaster 18000
#设置master和slaves验证密码
sentinel auth-pass mymaster 123456
#指定了在执行故障转移时, 最多可以有多少个从服务器同时对新的主服务器进行同步
sentinel parallel-syncs mymaster 1

通过哨兵查看集群的信息:

##连接哨兵
redis-cli -p 27002
##查看master的状态 
sentinel master mymaster
##查看salves的状态
SENTINEL slaves mymaster
##查看哨兵的状态
SENTINEL sentinels mymaster
##获取当前master的地址
SENTINEL get-master-addr-by-name mymaster
##查看哨兵信息
info sentinel


原文地址:https://www.cnblogs.com/dingpeng9055/p/11531728.html