gpt4 book ai didi

caching - 当先前死掉的redis-master再次在线时如何禁用sentinel auto-slaveof

转载 作者:可可西里 更新时间:2023-11-01 10:59:45 25 4
gpt4 key购买 nike

有网络分区时redis sentinel的问题

我在 server01 上启动了一个 redis 服务器作为 master,在 server02 上启动了一个服务器作为 slave,在另一台服务器上有一个 redis sentinel,我设置了一个脚本让客户端在故障转移时指向新的 master。

然后在server01上发生分区隔离master,所以sentinel在server02上启动故障转移,server02的slave成为新的master。现在所有的客户端都在使用新的 master,这没问题。

然而,当分区恢复时,sentinel 将发送 slaveof 给旧的 master。老主人会删除所有数据并与新主人同步,即使新主人和旧主人之间没有什么区别。当有多个主从组时,同步命令将占用我生产环境中的所有带宽。

那么如何禁用auto slaveof呢?有更好的主意吗?

最佳答案

你想把老主人一起除掉吗?如果是这样,那么在它恢复之前发出一个 sentinel reset <podname>它(旧主人)将从哨兵中移除。当然,那样你就不会有新主人的奴隶了。

Redis 目前的工作方式,旧的 master 总是必须与新的 master 进行完全重新同步才能成为它的 slave。因此,在 Redis 本身的复制发生变化之前,只要您想要复制,就必须接受同步方面。

也就是说,我不确定“当有多个主从组时……”是什么意思。你能详细说明一下吗?

关于caching - 当先前死掉的redis-master再次在线时如何禁用sentinel auto-slaveof,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29765389/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com