1.在k8s集群部署postgresql数据库,底层存储使用heketi+glusterfs

2.容器正常running,但是报错

3.一开始重启所在虚拟机,pod重新running即可正常连接数据库

4.发现一直是在固定一台虚拟机上,排查问题从虚拟机的网络问题开始(虽然这个报错原因看起来是glusterfs,但是节点上其他pod正常运行)

5.创建第二个对照pod,固定在另一台虚拟机上,等待原始pod出问题进行对比排查

6.对照pod正常运行,原始pod在运行一段时间后,postgresql数据库再次出现无法连接的问题

7.把对照pod迁移到同一台虚拟机上,发现还是只有原始pod出问题

8.查阅资料发现glusterfs适合存储非结构化数据,而postgresql是结构型数据库。

9.把运行postgresql数据库的pod的存储方式从heketi+glusterfs改为hostPath(没有再出现错误)

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐