挑战与痛点
- Kubernetes 容器平台需要一个支持多 pod 同时读写(ReadWriteMany)的共享存储,以满足应用共享数据的需求;
- 应用容器启动过程中可能需要同时下载大量外部依赖,需要提供稳定、高效的数据访问能力;
- 大数据平台、AI 平台都越来越依赖 Kubernetes,需要支持不同平台的存储需求。
Why JuiceFS?
- JuiceFS 提供 Kubernetes CSI Driver 支持,通过 Kubernetes 原生的存储方案(PersistentVolumeClaim)来访问数据,对 Kubernetes 生态友好;
- JuiceFS 的卷(Volume)支持 ReadWriteMany 和 ReadOnlyMany 模式,满足不同类型应用的访问需求;
- JuiceFS CSI Driver 支持挂载点故障自动恢复,保障应用容器访问数据的可用性;
- JuiceFS 支持上千客户端同时挂载及并发读写,支撑 Kubernetes 容器平台大规模应用的使用场景;
- JuiceFS 的缓存特性可以降低大规模应用同时进行数据访问的负载压力。
解决方案
- 通过静态配置(Static Provisioning)的方式将 JuiceFS 中已有的目录挂载到应用中,供不同容器共享数据;
- 通过动态配置(Dynamic Provisioning)的方式在 JuiceFS 中动态创建持久卷(PersistentVolume),隔离不同应用容器的数据;
- 通过子目录挂载的方式隔离不同团队或不同成员的数据,保证数据安全性。
客户收益
- 在 Kubernetes 环境中原生使用 JuiceFS,应用可以无感知、透明地使用共享存储;
- 支持上千容器同时读写文件系统并提供稳定、高效的访问能力,解决应用间数据共享的问题;
- 既能在不同团队或不同成员间共享数据,也能实现一定程度的数据隔离,提升数据利用率的同时也能保证数据安全性。