1.修改配置文件
拷贝redis.conf 为master.conf、slave.conf两个文件
master.conf修改
2.1—找到port port 6379(可以不修改)
2.2—找到:bind 127.0.0.1 注释掉:# bind 127.0.0.1(有人改成bind 0.0.0.0)
2.3 — 找到:protected-mode no(设置成:protected-mode no;保护模式关闭,如果你不关闭保护模式,启动哨兵的时候,无法正常运行。还有个解决办法就是你设置密码,但是一般都不设置redis的密码。麻烦,我每次连接还得输入密码。在部署中,可以设置密码。)
2.4— daemonize no(设置成:daemonize yes,标示后台启动。)
2.5—daemonize yes //redis后台运行
2.6—pidfile /var/run/redis_6379.pid //pidfile文件对应
2.7—appendonly yes //aof日志开启 有需要就开启,它会每次写操作都记录一条日志
2.8—requirepass 123456 设置密码
-
slave.conf修改
重复4以上的内容
3.1—找到:bind 127.0.0.1(修改成:bind 0.0.0.0,记得修改成自己ip,远程才能访问。)
3.2— 找到:# slaveof (把注释去掉,最后我这里是修改成:slaveof 172.17.36.17 6379,这样表明自己是从服务器。)
3.3—找到:masterauth 123456 #链接到master的密码,前面设置了 requirepass 123456 -
sentinel.conf
port 26379 //端口
bind 本机ip
sentinel auth-pass mymaster 123456 //链接master的密码
protected-mode no(设置成:protected-mode no;保护模式关闭,如果你不关闭保护模式,启动哨兵的时候,无法正常运行)
sentinel monitor mymaster 172.17.36.17 6379 2 # 其中mymaster是监控的这一套master-slave的名字,2是2个sentinel认为master有问题就故障转移 172.17.36.17 masterIP
sentinel down-after-milliseconds mymaster 30000 # sentinel失去master3万毫秒就认为master有问题了
sentinel parallel-syncs mymaster 1 # 每个时间点只有1个slave对新master进行复制,不并发
sentinel failover-timeout mymaster 180000 # 故障转移时间
5、启动master、slave、sentinel服务
cd /opt/module/redis-4.0.11
redis-server master.conf
redis-server slave.conf
nohup redis-server sentinel.conf --sentinel &