我正在使用带有一个主服务器、两个从服务器和一个 redis sentinel 实例的 redis 设置(我知道这不是推荐的,但我们只是在做一个概念证明)。
master 监听 6379。当我们对 master 进行故障转移时,我们查询 redis sentinel,现在我的 slave 是 master,所以假设 6380 现在是 master。
127.0.0.1:46379> sentinel masters
1) 1) "name"
2) "redis6379-master"
3) "ip"
4) "127.0.0.1"
5) "port"
6) "6380"
但是当我尝试在端口 6380 上写入实例时,它说它无法写入它,因为它是从站。因此,当我查询该实例时,这就是我得到的(为简单起见,部分截断):
# Replication
role:slave
master_host:127.0.0.1
master_port:6380
master_link_status:down
master_last_io_seconds_ago:-1
master_sync_in_progress:1
slave_repl_offset:1
master_sync_left_bytes:-1
master_sync_last_io_seconds_ago:10
master_link_down_since_seconds:531
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
似乎哨兵无法将奴隶重新配置为拥有主人?有什么线索吗?
谢谢,佩德罗