Redis sentinel在kubernetes中的设置



我正在寻找一些关于kubernetes中哨兵设置的指导。我面临的问题如下。要启动哨兵进程,必须将配置文件(哨兵.conf)作为命令行参数传递,并且该文件必须可被哨兵进程写入。

我通过kubernetes configmap卷挂载生成了sentinel.conf配置文件。但是生成的配置文件只能是只读的。Kubernetes不允许它是可写的

为了避免这个问题,我将生成的配置文件复制到一个新的配置文件中,并使其可写。然后将新文件传递给哨兵进程。这是我在开始脚本中完成的。也可以通过init容器来完成。到目前为止一切顺利。

我所面临的问题是……每次容器重新启动时,将执行配置文件复制步骤,哨兵进程在配置文件中所做的任何更改都将丢失。如果对配置文件所做的更改在重新启动哨兵进程后丢失,这会是一个问题吗?

如果有人遇到这个问题并解决了,请指导我。我的redis版本是6.2.1

您可以将redis.conf文件存储在持久卷中

除此之外,在你的init容器脚本中,检查redis.conf是否已经存在。如果有,不要复制。如果没有,这是第一次,所以复制它。

你可以在这里和这里看到类似的东西。我不是这些链接的作者。但我发现他们很有帮助

最新更新