具有 TB 数据的 kubernetes 上的 ReadWriteMany 卷

ReadWriteMany volumes on kubernetes with terabytes of data

我们想要部署一个 k8s 集群,它将同时 运行 ~100 IO-heavy pods。他们都应该能够访问同一卷。

到目前为止我们尝试了什么:

必须有某种方法可以将 2TB 的数据挂载到具有相对高可用性的 GKE 集群中吗?

Firestorage 似乎可行,但它比其他解决方案要昂贵得多,而且如果有大量 IO 操作,它很快就会变得不可行。


我打算在服务器故障时提出这个问题,但 k8s 社区比 SO 小得多。

我想我在 2020 年 1 月有了明确的答案,至少对于我们的用例而言:

| Solution        | Complexity | Performance | Cost           |
|-----------------|------------|-------------|----------------|
| NFS             | Low        | Low         | Low            |
| Cloud Filestore | Low        | Mediocre?   | Per Read/Write |
| CephFS          | High*      | High        | Low            |

* You need to add an additional step for GKE: Change the base image to ubuntu

我自己还没有对 Filestore 进行基准测试,但我会接受 stringy05 的回复:其他人很难从中获得非常好的吞吐量

如果 Helm 支持,Ceph 会简单很多。