如何在Kubernetes群集中扩展Wordpress-使用多个Pod副本-访问单个PVC(永久文件存储)

时间:2019-04-21 07:44:05

标签: wordpress docker kubernetes google-cloud-platform kubernetes-pvc

我正在学习Kubernetes,并试图建立一个可以处理单个高流量Wordpress网站的集群。通过从Google Cloud和Kubernetes.io在线阅读多个示例,他们在创建PVC时都设置了“ accessMode”-“ readWriteOnce”。

这是否意味着如果我将Wordpress部署扩展为使用多个副本,它们都将使用相同的单个PVC存储持久性数据-读/写数据。 (就像他们使用单个数据库实例一样?)

此处的google示例仅使用一个单副本单数据库实例-https://cloud.google.com/kubernetes-engine/docs/tutorials/persistent-disk

我的问题是如何处理多副本实例上的持久性存储?

2 个答案:

答案 0 :(得分:1)

ReadWriteOnce表示所有副本将使用相同的卷,因此它们都将在一个节点上运行。这可能不是最理想的。

您可以设置ReadWriteMany卷(NFS,GlusterFS,CephFS等)存储类,该类将允许多个节点安装一个卷。

或者,您也可以使用volumeClaimTemplate作为StatefulSet来运行应用程序,以确保每个副本都将安装其自己的ReadWriteOnce卷。

答案 1 :(得分:0)

如果在AWS上(因此受一次只能安装在单个实例上的EBS卷的限制而阻塞),则此处的另一个选项是将Pod Affinity设置为在同一节点上调度。从HA的角度来看并不理想,但这是一个选择。

如果在设置之后您开始遇到任何棘手的问题(例如,无法登录到管理员,重定向循环,媒体消失),我写了一个guide,说明人们在遇到某些较常见的问题时在Kubernetes上运行Wordpress可能值得一看!