redis哨兵搭建
在上一篇文章redis主从实现的情况下实现哨兵 故障 master自动切换
redis服务器配置:
master 192.168.51.65
slave 192.168.51.67
1、master创建sentinel.conf配置文件
logfile "/home/zmoon/redis-5.0.12/sentinel.log" daemonize yes # 本机ip bind 192.168.51.65 127.0.0.1 port 26379 # 主机点ip sentinel myid ef2d4b006899967bde76f4e3ff664ff192862bb0 # 这里的密码是指 Redis-1 的 requirepass sentinel deny-scripts-reconfig yes sentinel monitor mymaster 192.168.51.67 6380 2 sentinel auth-pass mymaster Xunmeizongmu_2019
2.slave创建sentinel.conf配置文件
logfile "/home/zmoon/redis-5.0.12/sentinel.log" daemonize yes # 本机ip bind 192.168.51.67 127.0.0.1 port 26379 # 主机点ip sentinel myid 9a923b1dac5c1ae11fb765b06edb09d32b1b1243 # 这里的密码是指 Redis-1 的 requirepass sentinel deny-scripts-reconfig yes sentinel monitor mymaster 192.168.51.67 6380 2 sentinel auth-pass mymaster Xunmeizongmu_2019
3.启动哨兵
SUSE65:/home/zmoon/redis-5.0.12/bin # ./redis-sentinel ../sentinel.conf SUSE65:/home/zmoon/redis-5.0.12/bin #
测试:
关闭master redis 查看日志 master正常切换到slave去了
SUSE65:/home/zmoon/redis-5.0.12 # tail -f -n100 sentinel.log 11790:X 28 Apr 2022 17:10:54.561 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo 11790:X 28 Apr 2022 17:10:54.561 # Redis version=5.0.12, bits=64, commit=00000000, modified=0, pid=11790, just started 11790:X 28 Apr 2022 17:10:54.562 # Configuration loaded 11791:X 28 Apr 2022 17:10:54.565 * Running mode=sentinel, port=26379. 11791:X 28 Apr 2022 17:10:54.565 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128. 11791:X 28 Apr 2022 17:10:54.774 # Sentinel ID is ef2d4b006899967bde76f4e3ff664ff192862bb0 11791:X 28 Apr 2022 17:10:54.774 # +monitor master mymaster 192.168.51.65 6379 quorum 2 11791:X 28 Apr 2022 17:10:54.776 * +slave slave 192.168.51.67:6380 192.168.51.67 6380 @ mymaster 192.168.51.65 6379 11791:X 28 Apr 2022 17:15:17.898 # +sdown master mymaster 192.168.51.65 6379 11791:X 28 Apr 2022 17:15:56.391 * +reboot master mymaster 192.168.51.65 6379 11791:X 28 Apr 2022 17:15:56.457 # -sdown master mymaster 192.168.51.65 6379 11791:X 28 Apr 2022 17:18:46.041 # +sdown master mymaster 192.168.51.65 6379 11791:X 28 Apr 2022 17:23:02.530 * +reboot master mymaster 192.168.51.65 6379 11791:X 28 Apr 2022 17:23:02.584 # -sdown master mymaster 192.168.51.65 6379 11791:X 28 Apr 2022 17:23:04.073 * +sentinel sentinel 9a923b1dac5c1ae11fb765b06edb09d32b1b1243 192.168.51.67 26379 @ mymaster 192.168.51.65 6379 11791:X 28 Apr 2022 17:24:25.580 # +sdown master mymaster 192.168.51.65 6379 11791:X 28 Apr 2022 17:24:25.788 # +new-epoch 1 11791:X 28 Apr 2022 17:24:25.843 # +vote-for-leader 9a923b1dac5c1ae11fb765b06edb09d32b1b1243 1 11791:X 28 Apr 2022 17:24:26.460 # +config-update-from sentinel 9a923b1dac5c1ae11fb765b06edb09d32b1b1243 192.168.51.67 26379 @ mymaster 192.168.51.65 6379 11791:X 28 Apr 2022 17:24:26.460 # +switch-master mymaster 192.168.51.65 6379 192.168.51.67 6380 11791:X 28 Apr 2022 17:24:26.460 * +slave slave 192.168.51.65:6379 192.168.51.65 6379 @ mymaster 192.168.51.67 6380 11791:X 28 Apr 2022 17:24:56.525 # +sdown slave 192.168.51.65:6379 192.168.51.65 6379 @ mymaster 192.168.51.67 6380 11791:X 28 Apr 2022 17:50:46.753 # -sdown slave 192.168.51.65:6379 192.168.51.65 6379 @ mymaster 192.168.51.67 6380
通过对slave redis进行写测试
SUSE67:/home/zmoon/redis-5.0.12/bin # ./redis-cli -p 6380 -a Xunmeizongmu_2019 Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe. 127.0.0.1:6380> SET key "value" (error) READONLY You can't write against a read only replica. 127.0.0.1:6380> SET key "value" OK 127.0.0.1:6380> SET key "value" OK 127.0.0.1:6380>
可以看到 当关闭master redis后 slave写入成功
至此 哨兵搭建完成