Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Sentinel升级Redis的最佳实践?_Redis_Redis Sentinel - Fatal编程技术网

使用Sentinel升级Redis的最佳实践?

使用Sentinel升级Redis的最佳实践?,redis,redis-sentinel,Redis,Redis Sentinel,我有三个redis节点被三个哨兵监视。我四处搜索,文档似乎不清楚如何最好地升级这种类型的配置。我目前的版本是3.0.6,我想升级到最新的5.0.5。关于这方面的程序,我有几个问题 可以升级两个主要版本吗?我在我们的登台环境中这样做了,看起来还不错。我们使用了相当基本的redis功能,版本之间没有中断性的更改 秩序重要吗?我应该先升级所有哨兵,然后升级redis节点,还是在验证redis平面后,哨兵平面应该是最后一个?我应该一次做一个sentinel/redis节点吗 如果您对此有任何建议或经验,

我有三个redis节点被三个哨兵监视。我四处搜索,文档似乎不清楚如何最好地升级这种类型的配置。我目前的版本是3.0.6,我想升级到最新的5.0.5。关于这方面的程序,我有几个问题

  • 可以升级两个主要版本吗?我在我们的登台环境中这样做了,看起来还不错。我们使用了相当基本的redis功能,版本之间没有中断性的更改

  • 秩序重要吗?我应该先升级所有哨兵,然后升级redis节点,还是在验证redis平面后,哨兵平面应该是最后一个?我应该一次做一个sentinel/redis节点吗


  • 如果您对此有任何建议或经验,我们将不胜感激。

    我很惊讶没有人对此做出回应,但我知道,这类主题涉及堆栈溢出和堆栈交换。我还感到惊讶的是,在这个问题上,我所能找到的文件资料却很少

    我在登台环境中进行了一些广泛的测试,然后开始生产,我遵循的程序似乎在大部分情况下都有效:

    • 在我们的例子中,从3.0.6升级到5.0.5似乎工作顺利。正如我在最初的帖子中所说的,我们在redis中使用了基础知识,从客户端的角度来看没有太大的变化

    • 我按以下顺序继续升级:

    • 前两个哨兵对等点,然后是当前处于
      领导状态的哨兵
    • 每一个redis节点都列为
      从属节点
      (现在称为
      副本
      )。
      • 升级每个节点后,它将希望从主节点复制其
        dump.rdb
      • 可以从3节点同步到5节点,但一旦5节点成为主节点,3节点就无法同步,因此一旦故障转移到升级的节点,就无法返回到早期版本
    • 最后,使用Sentinel将升级后的节点作为主节点进行故障切换,并升级以前的主节点
    希望将来有人会发现这一点很有用