kubernetes - Google Kubernetes Engine 上的用户数据存储解决方案

标签 kubernetes filesystems storage nfs

我正在 GCP 上开发一个 SaaS 解决方案,服务主要运行 GKE。服务将在磁盘上为每个用户提供一个私有(private)空间(用于保存他们的文件和文件夹的文件夹)。
技术要求:

  • 使用 ReadWriteMany 挂载到多个 pod
  • 用户数量:几十万左右。
  • 每个用户的私有(private)存储大小将非常小,大约为几百 MB,最大为几 GB。但是文件的数量会非常大,~几千到几十万
  • 文件访问将主要是小的读取和写入。
  • 将有指向共享系统文件夹的符号链接(symbolic link),但用户文件夹之间没有符号链接(symbolic link)。

  • 我目前实现了一个基于 this 的 NFS 解决方案,管理起来很麻烦,项目也不再维护。我必须手动增加 backing PVC 的大小并重新启动所有挂载 PV 的 Pod,以防我需要扩展存储容量。
    Filestore 似乎是一个很好的选择,但成本是一个大问题,因为它只允许配置至少 1TB 的存储空间。
    我正在寻找一种易于管理、性能足够好且具有成本效益的解决方案。任何建议表示赞赏。
    非常感谢你。

    最佳答案

    您没有指定您的最终目标是什么,但有一些替代方案:

  • A set of more recent YAML files
  • Rook (CSI)
  • Ceph
  • Glusterfs
  • OpenEBS
  • Kubernetes support for gce volume resizing .

  • 上面的一些解决方案仍将涉及重新启动 pod。
    ✌️

    关于kubernetes - Google Kubernetes Engine 上的用户数据存储解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63496319/

    相关文章:

    kubernetes - 在Kubernetes集群中,可以从其他容器内部获取容器/容器IP地址

    azure - 尝试以非 root 用户身份运行时 AKS crashloopbackoff

    windows - 一些支持 "\Device\Xxx"格式的NT命名空间绝对路径的API

    docker - 卷 - 设备映射如何在 Docker 上工作

    database - 如何将图像直方图存储到数据库中并能够进行搜索

    php - 如何存储日期/出勤?

    python - Kubernetes部署内存占用高

    Kubernetes API : Failure 403 pods is forbidden: User "system:serviceaccount:default:journalbeat" cannot list resource "pods" in API group ""

    java - 将 Java Swing 中的文件树组件替换为另一个文件树组件

    Azure Blob 存储