【问题标题】:Kubernetes AWS shared persistent volumeKubernetes AWS 共享持久卷
【发布时间】:2019-09-12 04:52:57
【问题描述】:

我有以下几点:

2 个 pod 副本,负载平衡。 每个副本有 2 个容器共享网络。

我正在寻找的是共享卷...

我正在寻找一种解决方案,其中 2 个 pod 和 pod 中的每个容器可以共享一个具有读写访问权限的目录。因此,如果 pod 1 中的 one 容器向其写入数据,则 pod 2 中的容器将能够访问新数据。

这可以通过持久卷和 PVC 实现吗?如果是这样,我需要什么以及指向哪些 FS 最有效、静态与动态以及存储类的更多详细信息的指针。

卷可以是 S3 存储桶吗?

谢谢!

【问题讨论】:

    标签: amazon-web-services kubernetes persistent-volumes kubernetes-pvc


    【解决方案1】:

    根据价格和所需的努力,有多种选择:

    1. 最简单但更昂贵的解决方案是使用EFS + NFS Persistent Volumes。但是,EFS 有严重的吞吐量限制,详情请阅读here
    2. 您可以在内部创建带有 NFS-server 的 pod,然后再次将 NFS 持久卷挂载到 pod 中。请参阅示例here。这需要更多的手动工作,并且不是完全高度可用的。如果 NFS-server pod 失败,那么在重新创建之前,您会观察到一些(希望是)短暂的停机时间。
    3. 对于 HA 配置,您可以在 Kubernetes 上配置 GlusterFS。这需要付出最大的努力,但可以提供极大的灵活性和速度。
    4. 尽管使用糟糕的拐杖以某种方式将 S3 安装到 pod 中是可能的,但这种解决方案有许多缺点,并且总体上不是生产级的。出于测试目的,您可以这样做。

    【讨论】:

    • 感谢您分享这些知识点,我相信 1 或 2 应该可以解决,我需要更深入地研究。关于 S3,说我确实想测试这条开发路线,如何实现?
    【解决方案2】:

    请参阅https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes 了解所有可用的卷后端(您需要ReadWriteMany 兼容性)

    你可以在那里找到AWSElasticBlockStore 不支持它。您将需要任何支持ReadWriteMany 的第三方批量提供商。

    UPD:另一个答案 https://stackoverflow.com/a/51216537/923620 表明 AWS EFS 也可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-27
      • 2019-10-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-23
      • 2018-12-09
      • 1970-01-01
      相关资源
      最近更新 更多