【问题标题】:Kubernetes statefulsets in a GCE multiple zone deploymentGCE 多区域部署中的 Kubernetes 状态集
【发布时间】:2017-05-24 19:48:06
【问题描述】:

我正在做一个在 GCE 上运行 Kubernetes 集群的项目。我的目标是在多个区域中运行一个包含 WordPress 站点的集群。我一直在阅读大量文档,但似乎在多区域场景中找不到任何关于持久卷和状态集的直接且中肯的内容。这不是受支持的配置吗?我可以启动集群并部署 statefulset,但我没有在整个集群中复制状态。有什么建议吗?

谢谢, 达里尔

【问题讨论】:

    标签: wordpress kubernetes google-kubernetes-engine


    【解决方案1】:

    阅读文档,我发现推荐的配置是创建一个具有复制功能的 MySQL 集群:https://kubernetes.io/docs/tasks/run-application/run-replicated-stateful-application/。这样,您就可以在集群实例之间正确复制数据(如果您处于多区域部署中,则可能必须创建一个外部端点)。

    关于 Wordpress 数据,我的建议是进行不可变部署:https://engineering.bitnami.com/articles/why-your-next-web-service-should-be-immutable.html。这样,如果您需要添加插件或执行升级,您将创建一个新的容器映像并重新部署它。关于媒体库资产和不变性,我认为最好的选择是使用像 S3 这样的外部存储服务https://wordpress.org/plugins/amazon-s3-and-cloudfront/

    所以,回答最初的问题:我认为 statefulset 同步在 K8s 中不可用(目前)。也许使用允许 ReadWriteMany 访问模式的卷提供程序可以满足您的需求 (https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes),尽管我不确定它的稳定性。

    【讨论】:

    • 非常感谢您的回复。我真的很感谢你插话。我继续我的研究,我的感觉与你所阐述的一致。我不知道不可变方面的知识。总有新东西要学。你认为使用 Kubernetes 可能不是最好的解决方案吗?
    猜你喜欢
    • 1970-01-01
    • 2018-07-15
    • 2023-04-06
    • 1970-01-01
    • 2016-09-15
    • 2020-02-14
    • 1970-01-01
    • 1970-01-01
    • 2019-03-24
    相关资源
    最近更新 更多