排列5走势图首页    注册   登录
排列5走势图 = way to explore
排列5走势图 是一个排列5走势图关于 分享和探索的地方
现在注册
已注册用户请  登录
SkSk666
排列5走势图  ›  Redis

看到一篇容器化 redis 的文章,有一个哨兵模式数据丢失的问题完全不能理解

  •  
  •   SkSk666 · 8 天前 · 924 次点击
    http://www.infoq.cn/article/cS_Pp9r8Gjd9bpGpjTTv
    携程的 redis 容器化

    其中有一段写到:Master 挂了不希望 K8S 立刻把它拉起来,希望哨兵来感知到它,因为 K8S 如果在哨兵感知前拉起了它,导致哨兵还没切换 Master/Slave,Master 就活过来并且数据都丢失,这时候一同步到 Slave 上数据也全没有了,等于执行了一个清空操作,这对于业务和 DBA 来说是不能接受的。

    这种情况出现的原理是什么? Master 在挂了重新被拉起来,为什么数据会全部丢失?看上去这里的意思是指 Master 里的数据一点都没有了,不是指在 Master 挂了的时刻没有持久化的数据没有了。百思不得其解。。。。
    5 条回复    2020-03-26 17:56:51 +08:00
    fancy111
        1
    fancy111   8 天前
    。。。。 master 挂了内存清空当然没数据了啊,然后由于哨兵未切换,导致 master 还是 master,然后再把 master 同步到 slave,这样两个都空了
    dilu
        2
    dilu   8 天前
    就算不容器化,redis 的主库挂了也不能立刻重启,排列5走势图我 记得好像是 aof 文件如果有问题会导致 master 把 slave 的全部数据冲掉
    具体原理忘记了,反正一定要确保 aof 文件正常再重启
    julyclyde
        3
    julyclyde   8 天前
    @fancy111 “master 同步到 slave”这个操作不是按每个命令在 slave 重新执行一遍来实现的吗?排列5走势图我 记得不是复制整体内容啊?
    SkSk666
        4
    SkSk666   8 天前
    如果这个哨兵集群没有开启持久化,master 挂了,k8s 在哨兵感知前把 master 拉起来,此时 master 数据已经清空,导致同步到 slave 也清空。这个说得通。
    如果开启了持久化,k8s 重新拉起 master,此时哨兵还没有感知到 master 挂了,根本就不会切换 master,看上去只有 master 挂了的时刻没有持久化的数据会丢失

    不知道这样理解对不对
    PiersSoCool
        5
    PiersSoCool   8 天前
    @SkSk666 排列5走势图我 觉得也是,没有设置持久化就会丢失所有数据
    排列5走势图关于   ·   FAQ   ·   API   ·   排列5走势图排列5走势图我 们 的愿景   ·   广告投放   ·   感谢   ·   实用小排列5走势图工具   ·   1140 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 23:10 · PVG 07:10 · LAX 16:10 · JFK 19:10
    ♥ Do have faith in what you're doing.