腾讯内部实践分享 | 千节点Alluxio 集群助力游戏 AI 业务
发布网友
发布时间:2024-09-27 04:05
我来回答
共1个回答
热心网友
时间:2024-09-28 02:33
本文作者:郑兵、毛宝龙、潘致铮
Alluxio是一个面向AI和大数据应用,开源的分布式内存级数据编排系统。在游戏AI离线对局业务中,引入Alluxio解决分布式计算场景下的数据依赖问题,显著提升并发上限,同时业务对存储系统感知无变化。
游戏AI离线训练业务包含监督学习与强化学习场景。特征计算、模型训练与评估在监督学习中,对局信息还原生成特征数据。对局信息需特定版本游戏依赖。存储端gamecore大小在100MB至3GB,特定版本依赖特定游戏版本。本地存储读取性能佳,成本高且需本机权限;分布式存储如ceph更新快,部署简单,但元数据管理服务MDS可能成为瓶颈。
引入Alluxio on Ceph,解决业务痛点。游戏AI团队与运管团队提供支持,进行充分测试后在生产环境落地。Alluxio作为中间层提供分布式共享缓存服务,优化特征计算业务的小文件高并发访问场景。
Alluxio架构图展示与业务支持,Alluxio集群master节点HA模式,1000个worker规模,业务与worker亲和部署,通过distributedLoad预热热点gamecore版本数据。ratis功能抽象为ratis-shell工具,增加updateConf API,周期性同步配置变化。
业务侧并发访问挑战,开发工作包括ratis-shell工具、配置优化等。对比测试结果显示,使用Alluxio + cephfs方案后,业务失败率更低。元数据压力指标观察,任务初期冲击后master元数据压力降低,ceph mds qps几乎为0。使用kona jdk11后,master执行过程中的heap memory变化曲线平稳。
未来工作包括吞吐上限提升、设计更高并发访问的整体架构、利用Alluxio CSI解耦业务和Alluxio FUSE、建设kubernetes上Alluxio集群管理系统。基于Alluxio提供的helm chart模板,维护运维方案,实现底层存储mount、umount操作,job service可视化管理,load free服务化建设。
总结,Alluxio与游戏AI特征计算业务落地支持4000核并发稳定运行,为分布式存储元数据压力降低,任务失败率降低。在高并发大规模场景下暴露出Alluxio内核问题,优化稳定性和可运维能力,未来可适配更多场景。