跳转至

设计理念

开源初衷

容器化设计可以很好地屏蔽操作系统细节,提高隔离性,并在构建过程中提前安装依赖的外部环境和工具,从而使得后续的服务可以在不同的服务器环境中运行。

在研究Hadoop on Kubernetes时,我们采用了helm完成了服务依赖顺序、配置关联影响和容器编排等工作。我们还整合了Doris(多Fe多Be)、DolphinScheduler、Kyuubi和Spark等服务,并实现了使用一句helm install命令即可正确启动这些相互依赖的服务。

在使用helm + Kubernetes 来部署管理大数据集群过程中,我们发现这种方法大大减少了部署时间,提高了部署大数据集群的成功率。然而,运维管理的体验不尽人意,因为使用通用型Kubernetes的管理工具来管理大数据服务是不容易的,这需要开发者掌握Pod、Service、Configmap等知识。

对于习惯使用类似Ambari、CM这样的平台的大数据工程师来说,学习成本还是太高了。因此,我们开发了CloudEon,并将其开源。

CloudEon致力于将大数据服务迁移到云上,并帮助大数据生态组件更好地与云原生相融合。

产品边界

CloudEon致力于将大数据服务迁移到云上,并帮助大数据生态组件更好地与云原生相融合。

轻量级应用

CloudEon是一个轻量级应用,没有采用server-agent架构,本质上只是一个Kubernetes的客户端,负责将用户的操作转换为Kubernetes的资源或指令。例如,它可以调度一个大数据服务启动(如Doris)、停止某个服务角色(Dori Be)或让某个服务挂掉后自动拉起,这些都是由Kubernetes自行调度完成的。 由于CloudEon只是一个单体应用,安装部署非常简单。

使用简单

虽然CloudEon是架设在Kubernetes上的,但它帮助用户屏蔽了底层和Kubernetes打交道的细节,提供了与常规大数据管理平台相似的用户操作体验。因此,大数据工程师可以更容易地融入云原生生态中。

完全开放

Cloudeon设计了一套大数据组件包的管理模板,包括元数据声明、告警规则定义、配置定义、容器镜像构建和打包、Kubernetes资源文件定义等等。理论上,只要按照这套模板注册,可以拓展大数据生态的所有组件。