8.5 KiB
Fluid
English | 简体中文
最新进展: |
---|
May. 26th, 2023. Fluid v0.9.0 发布! 添加thinRuntime以简化与第三方存储系统的集成,跨命名空间访问数据,支持子数据集,新的数据操作,如数据迁移,分布式文件系统的本地加速系统EFCRuntime等等。详情参见 CHANGELOG。 |
Sep. 03th, 2022. Fluid v0.8.0 发布! 提供一系列新功能,包括基于Fluid边车支持的Serverlesss作业生命周期管理,按需启动Runtime controller,自动化CRD更新, 严格的pod与数据集节点的调度机制, JuicefsRuntime的Arm64支持, Alluxio Runtime的GCS支持等等,详情参见 CHANGELOG。 |
Mar. 16th, 2021. Fluid v0.5.0 发布! 提供一系列新功能,包括提供数据集缓存的在线弹性扩缩容,元数据备份与恢复,Fuse全局模式部署等,详情参见 CHANGELOG。 |
Nov. 6th, 2020. Fluid v0.4.0 发布! 提供一系列新功能和修复上一版本的遗留问题,包括提供主动的数据预热,详情参见 CHANGELOG。 |
Oct. 1st, 2020. Fluid v0.3.0 发布! 提供一系列新功能和修复上一版本的遗留问题,包括对于K8s通用的数据卷加速和主机目录加速,详情参见 CHANGELOG。 |
什么是Fluid
Fluid是一个开源的Kubernetes原生的分布式数据集编排和加速引擎,主要服务于云原生场景下的数据密集型应用,例如大数据应用、AI应用等。
Fluid现在是Cloud Native Computing Foundation (CNCF) 开源基金会旗下的一个沙箱项目。关于Fluid更多的原理性介绍, 可以参见我们的论文: Rong Gu, et al. Fluid: Dataset Abstraction and Elastic Acceleration for Cloud-native Deep Learning Training Jobs. IEEE ICDE. pp. 2183-2196, May. 2022.
通过定义数据集资源的抽象,实现如下功能:
核心功能
-
数据集抽象原生支持
将数据密集型应用所需基础支撑能力功能化,实现数据高效访问并降低多维管理成本
-
可扩展的数据引擎插件
提供统一的访问接口,方便接入第三方存储,通过不同的Runtime实现数据操作
-
自动化的数据操作
提供多种操作模式,与自动化运维体系相结合
-
数据弹性与调度
将数据缓存技术和弹性扩缩容、数据亲和性调度能力相结合,提高数据访问性能
-
运行时平台无关
支持原生、边缘、Serverless Kubernetes集群、Kubernetes多集群等多样化环境,适用于混合云场景
重要概念
Dataset: 数据集是逻辑上相关的一组数据的集合,会被运算引擎使用,比如大数据的Spark,AI场景的TensorFlow。而这些数据智能的应用会创造工业界的核心价值。Dataset的管理实际上也有多个维度,比如安全性,版本管理和数据加速。我们希望从数据加速出发,对于数据集的管理提供支持。
Runtime: 实现数据集安全性,版本管理和数据加速等能力的执行引擎,定义了一系列生命周期的接口。可以通过实现这些接口,支持数据集的管理和加速。
先决条件
- Kubernetes version > 1.16, 支持CSI
- Golang 1.18+
- Helm 3
快速开始
你可以通过 快速开始 在Kubernetes集群中测试Fluid.
文档
如果需要详细了解Fluid的使用,请参考文档 docs:
你也可以访问Fluid主页来获取有关文档.
快速演示
如何贡献
欢迎您的贡献,如何贡献请参考CONTRIBUTING.md.
欢迎加入与反馈
Fluid让Kubernetes真正具有分布式数据缓存的基础能力,开源只是一个起点,需要大家的共同参与。大家在使用过程发现Bug或需要的Feature,都可以直接在 GitHub上面提 issue 或 PR,一起参与讨论。另外我们有一个钉钉群,欢迎您的参与和讨论。
钉钉讨论群
Slack 讨论群
- 加入
CNCF Slack
通过搜索频道#fluid
和我们进行讨论.
开源协议
Fluid采用Apache 2.0 license开源协议,详情参见LICENSE文件。
漏洞报告
安全性是Fluid项目高度关注的事务。如果您发现或遇到安全相关的问题,欢迎您给fluid.opensource.project@gmail.com邮箱发送邮件报告。
行为准则
Fluid 遵守 CNCF 行为准则。