redis哨兵服务

发布于:2025-05-25 ⋅ 阅读:(26) ⋅ 点赞:(0)
  1. 配置主机Host67为master服务器
  2. 配置主机host68为 slave服务器
  3. 配置主机host69运行哨兵服务
  4. 测试配置
     
IP地址 主机名
192.168.10.167 redis167
192.168.10.168 redis168
192.168.10.169 redis169

步骤一:配置主机Host67为master服务器

[root@redis169 ~]# vim /etc/redis.conf 
bind 192.168.10.169
port 6379
[root@redis169 ~]# systemctl start redis
[root@redis169 ~]# redis-cli -h 192.168.10.169 -p 6379
192.168.10.169:6379> info replication
# Replication
role:master
connected_slaves:0
master_replid:854e99afaa5bf6f324ea939a0c7cb954bebacfbf
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:0
second_repl_offset:-1
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

步骤二:配置slave服务器host68

[root@redis168 ~]# vim /etc/redis.conf 
port 6379
bind 192.168.10.168
[root@redis168 ~]# systemctl start redis
[root@redis168 ~]# redis-cli -h 192.168.10.168 -p 6379
192.168.10.168:6379> info replication
# Replication
role:master
connected_slaves:0
master_replid:c638645a00206c150b75db92500ca4bb7256f44d
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:0
second_repl_offset:-1
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
192.168.10.168:6379> REPLICAOF 192.168.10.169 6379
OK
192.168.10.168:6379> config rewrite
OK
192.168.10.168:6379> info replication
# Replication
role:slave
master_host:192.168.10.169
master_port:6379
master_link_status:up
master_last_io_seconds_ago:6
master_sync_in_progress:0
slave_repl_offset:14
slave_priority:100
slave_read_only:1
connected_slaves:0
master_replid:57f7736d356b9c08bcf62412e36c36d066bcb981
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:14
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:14

步骤三:配置主机host69运行哨兵服务

[root@redis167 ~]# vim /etc/redis-sentinel.conf 
bind 192.168.10.167
port 26379
daemonize yes
sentinel monitor mymaster 192.168.10.169 6379 1
[root@redis167 ~]# systemctl start redis-sentinel.service 
[root@redis167 ~]# netstat -ntupl|grep 26379
tcp        0      0 0.0.0.0:26379           0.0.0.0:*               LISTEN      43343/redis-sentine 
tcp6       0      0 :::26379                :::*                    LISTEN      43343/redis-sentine 

步骤四:测试配置

思路:停止master主机的redis 服务,原slave角色会升级为主,哨兵服务会自动监视新的master服务,宕机的master 主机恢复后自动配置为当前主的从服务器。

停止master主机的redis 服务
[root@redis169 ~]# systemctl stop redis
在slave服务器查看角色
192.168.10.168:6379> info replication
# Replication
role:master  角色升级为主
connected_slaves:0    没从服务器
master_replid:fa0f962f88ecb4755d7cc95961841678a1caa43a
master_replid2:4a186e2c58c2aa05730fb39c0f44c9bd52dcadce
master_repl_offset:5182
second_repl_offset:900
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:5182

宕机的master 主机恢复后自动配置为当前主的从服务器。
[root@redis169 ~]# systemctl start redis
[root@redis169 ~]# redis-cli -h 192.168.10.169 -p 6379
192.168.10.169:6379> info replication
# Replication
role:slave
master_host:192.168.10.169
master_port:6379
master_link_status:down
master_last_io_seconds_ago:-1
master_sync_in_progress:0
slave_repl_offset:0
master_link_down_since_seconds:1748097868
slave_priority:100
slave_read_only:1
connected_slaves:0
master_replid:7a10f095ba10065594afad67ea4de531b5ecc11a
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:0
second_repl_offset:-1
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0


网站公告

今日签到

点亮在社区的每一天
去签到