【问题标题】:same data volume attached to multiple container even in different host即使在不同的主机中,相同的数据量也附加到多个容器
【发布时间】:2018-10-22 18:26:05
【问题描述】:

感谢flocker,我能够将 docker 卷绑定到集群中的特定容器,但现在我将拥有我的服务器的多个副本(进行负载平衡),所以我正在寻找要绑定的东西相同的数据卷到 docker 服务的多个副本。 在flocker documentaiton中我发现

多个容器可以访问同一个卷吗?弗洛克的作品 创建卷和容器的一对一关系。这意味着 一个容器可以有多个卷,并且这些卷 将始终跟随该容器。

Flocker 将卷附加到单个代理主机(docker 主机) 这一次只能是一个主机,因为 Flocker 附加 基于块的存储。不同主机上的节点不能访问同一个 卷,因为它一次只能附加到一个节点。

如果同一主机上的多个容器要使用同一个卷, 他们可以,但要小心,因为多个容器访问 相同的存储卷可能会导致损坏。

我可以将一个卷附加到多个主机吗?暂时没有,支持 来自多附加后端,如只读模式下的 GCE,或类似 NFS 像存储这样的后端,或者像 GlusterFS 这样的分布式文件系统 需要整合。 Flocker 主要关注块存储用途 一次将卷附加到单个节点的情况。

所以我认为用植绒机做我想做的事是不可能的。 如果可以帮助我,我可以使用不同的编排器 (k8s),即使我没有这方面的经验。

我不会使用 NAS/NFS 或任何分布式文件系统。

有什么建议吗?

提前致谢。

【问题讨论】:

    标签: docker kubernetes docker-swarm flocker


    【解决方案1】:

    在 k8s 中,如果支持卷的技术支持共享访问,您可以同时将卷挂载到不同的 Pod。

    Kubernetes Persistent Volumes中所述:

    访问模式 PersistentVolume 可以以任何方式安装在主机上 资源提供者支持。如下所示,供应商将 具有不同的功能,每个 PV 的访问模式设置为 该特定卷支持的特定模式。例如,NFS 可以支持多个读/写客户端,但特定的 NFS PV 可能 在服务器上以只读方式导出。每个 PV 都有自己的一组 描述特定 PV 功能的访问模式。

    访问方式有:

    • ReadWriteOnce – 卷可由单个节点以读写方式挂载
    • ReadOnlyMany – 卷可以被许多节点以只读方式挂载
    • ReadWriteMany – 卷可以被许多节点以读写方式挂载

    支持 ReadOnlyMany 模式的卷类型:

    • Azure 文件
    • CephFS
    • FC
    • 弹性卷
    • GCEPersistentDisk
    • Glusterfs
    • iSCSI
    • Quobyte
    • NFS
    • RBD
    • ScaleIO

    支持 ReadWriteMany 模式的卷类型:

    • Azure 文件
    • CephFS
    • Glusterfs
    • Quobyte
    • RBD
    • PortworxVolume
    • VsphereVolume(在 pod 并置时工作)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-15
      • 2018-12-13
      • 2015-01-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-01
      • 1970-01-01
      相关资源
      最近更新 更多