本文记录下搭建一个redis哨兵集群的案例,整个集群实例分布如下:
1、三个哨兵节点 2、三个数据节点(一主两从)
首先我们配置redis三个数据节点的配置文件,对应redis的一主两从,具体的信息如下:
# redis-6379.conf port 6379 daemonize yes pidfile /var/run/redis-6379.pid logfile "6379.log" dir "/Users/eleme/raysonxin/docker/redis-docker/log" dbfilename dump-6379.rdb # redis-6380.conf port 6380 daemonize yes pidfile /var/run/redis-6380.pid logfile "6380.log" dir "/Users/eleme/raysonxin/docker/redis-docker/log" dbfilename dump-6380.rdb slaveof 127.0.0.1 6379 # redis-6381.conf port 6381 daemonize yes pidfile /var/run/redis-6381.pid logfile "6381.log" dir "/Users/eleme/raysonxin/docker/redis-docker/log" dbfilename dump-6381.rdb slaveof 127.0.0.1 6379
然后咱们配置3个redis的sentinel配置文件作为三个监控节点,具体的配置内容如下:
# sentinel-26379.conf port 26379 daemonize yes dir "/Users/eleme/raysonxin/docker/redis-docker/log" logfile "26379.log" # 配置监听的主服务器,这里sentinel monitor代表监控,mymaster代表服务器的名称,可以自定义,192.168.11.128代表监控的主服务器,6379代表端口,2代表只有两个或两个以上的哨兵认为主服务器不可用的时候,才会进行failover操作。 sentinel monitor mymaster 127.0.0.1 6379 2 # 判断主节点时间 sentinel down-after-milliseconds mymaster 10000 sentinel parallel-syncs mymaster 1 sentinel failover-timeout mymaster 180000 # sentinel-26380.conf port 26380 daemonize yes dir "/Users/eleme/raysonxin/docker/redis-docker/log" logfile "26380.log" # 配置监听的主服务器,这里sentinel monitor代表监控,mymaster代表服务器的名称,可以自定义,192.168.11.128代表监控的主服务器,6379代表端口,2代表只有两个或两个以上的哨兵认为主服务器不可用的时候,才会进行failover操作。 sentinel monitor mymaster 127.0.0.1 6379 2 # 判断主节点时间 sentinel down-after-milliseconds mymaster 10000 sentinel parallel-syncs mymaster 1 sentinel failover-timeout mymaster 180000 # sentinel-26381.conf port 26381 daemonize yes dir "/Users/eleme/raysonxin/docker/redis-docker/log" logfile "26381.log" # 配置监听的主服务器,这里sentinel monitor代表监控,mymaster代表服务器的名称,可以自定义,192.168.11.128代表监控的主服务器,6379代表端口,2代表只有两个或两个以上的哨兵认为主服务器不可用的时候,才会进行failover操作。 sentinel monitor mymaster 127.0.0.1 6379 2 # 判断主节点时间 sentinel down-after-milliseconds mymaster 10000 sentinel parallel-syncs mymaster 1 sentinel failover-timeout mymaster 180000
然后依次情动3个redis的数据实例:
redis-server conf/redis-6379.conf redis-server conf/redis-6380.conf redis-server conf/redis-6381.conf
最后依次启动3个redis的sentinel实例:
redis-sentinel conf/redis-26379.conf redis-sentinel conf/redis-26380.conf redis-sentinel conf/redis-26381.conf
最后在查看redis数据节点信息的时候,连接上数据节点,然后使用:
info replication
如果要查看sentinel节点的信息,连接上sentinel节点,然后使用:
info sentinel
即可验证整个集群信息。
还没有评论,来说两句吧...