Alluxio为上层计算框架提供了统一的客户端和统一的API全局命名空间。在AI场景下,底层存储使用ceph,上层应用是特征计算,使用Alluxio作为中间层提供分布式共享缓存服务
核心功能:
- 分布式缓存
- 多种类型的接口,如hdfs/posix
- 统一的命令空间
实践部分,主要是基于alluxio on ceph的例子来讲
- 由于ceph-mds的性能不够,所以采用alluxio on ceph fs的方式
- 我们希望业务pod和Alluxio worker pod可以尽可能亲和性部署、尽量运行在同一个节点上,用domain socket 技术提升读性能。在业务上线前,通过distributeLoad命令把ceph的热点数据加载到Alluxio worker
- 同样面临master的压力很大的情况,采用ratis-shell的方式,扩展HA的使用
- 以及fuse-shell部分的调整,提升fuse部分的使用效率
- 增加master同client之间的动态参数配置
- 其他的一些调优策略:
- 日志
- HA下的元数据同步
后续的计划部分:
- 利用 Alluxio CSI 解耦业务和 Alluxio FUSE
- Alluxio localcache + Alluxio metadatacache 优化
- 通过类似负载均衡的功能分摊负载压力,智能读写调度策略等