在k8s中运行postgresql的最佳方式是什么?



我们想在k8s中以主从模式运行postgresql,什么是最好的方法?

国际海事组织

  1. 运行postgresql with statfulset which pod started by order,这样我们就可以识别master"或";slave"在启动脚本中按pod名称(如"-0"如master等)并相应地进行配置

  2. 运行k8s服务作为浮动IP在主和从之间,甚至不一样的浮动IP,因为它更像代理

  3. 在pg配置文件中配置pod名称以避免重新创建pod

但是可能有一个问题是k8s服务不知道谁是后端主节点,所以它可能会将写请求发送到从节点。据我所知,在postgresql本身中没有主从之间的重定向。一些外部工具,如pgpool可以做重定向,但有点重。

在2022年有其他的方法或最好的方法吗?谢谢你的帮助!

您可以检查stolon和cruncy数据postgres操作符