KubeEdge ,一个Kubernetes本机边缘计算框架

作者: Sanil Kumar D(华为),Jun Du(华为)

KubeEdge 成为第一个Kubernetes本机边缘计算平台,同时开源了Edge和Cloud组件!

开源边缘计算正在经历行业中最动态的发展阶段。如此众多的开源平台,如此之多的整合以及如此众多的标准化举措!这显示了建立更好的平台以将云计算带到边缘以满足不断增长的需求的强大动力。 KubeEdge 于去年宣布,现在为云原生计算带来了好消息!它提供了基于Kubernetes的完整边缘计算解决方案,带有独立的云和边缘核心模块。当前,云模块和边缘模块都是开源的。

与周围可用的某些轻量级kubernetes平台不同,KubeEdge用于构建扩展云的边缘计算解决方案。尽管可扩展和可扩展,但控制平面位于云中。同时,边缘可以在脱机模式下工作。它还是轻量级的和容器化的,并且可以在边缘支持异构硬件。通过优化边缘资源的利用率,KubeEdge可以节省大量的边缘解决方案设置和运营成本。基于Kubernetes,这使其成为当今世界上最引人注目的边缘计算平台!

Kube(rnetes)边缘! -为边缘计算开放一个新的基于Kubernetes的生态系统

KubeEdge 的主要目标是将Kubernetes生态系统从云扩展到边缘。从2018年11月在上海KubeCon上向公众宣布以来,KubeEdge的架构方向便与Kubernetes保持一致!

它从提供基本边缘计算功能的v0.1开始。现在,凭借最新版本v0.2,它带来了云组件之间的连接并完成了循环。凭借一致且可扩展的基于Kubernetes的界面,KubeEdge可以对边缘集群进行编排和管理,类似于Kubernetes在云中的管理方式。这为将云计算功能快速有效地带到边缘提供了无缝的可能性。

KubeEdge 链接:

根据其路线图和体系结构,KubeEdge尝试支持所有边缘节点,应用程序,设备,甚至支持与Kuberenetes接口一致的群集管理。这将帮助边缘云完全像云集群一样运行。这可以节省基于KubeEdge的边缘云开发部署的大量时间和成本。

KubeEdge 提供了一个容器化的边缘计算平台,该平台具有固有的可扩展性。由于它是模块化的和经过优化的,因此它是轻量级的(66MB的占地面积和约30MB的运行内存),并且可以部署在资源较少的设备上。同样,边缘节点可以具有不同的硬件体系结构和不同的硬件配置。对于设备连接性,它可以支持多种协议,并且使用基于标准MQTT的通信。这有助于有效地扩展具有新节点和设备的边缘群集。

您没听错!

KubeEdge Cloud Core模块是开源的!

通过开源边缘和云模块,KubeEdge带来了完整的云供应商不可知的轻量级异构边缘计算平台。现在可以利用大多数现有的云原生项目或软件模块来支持构建用于边缘计算的完整Kubernetes生态系统。这可以在边缘启用微型云,以支持苛刻的用例,例如数据分析,视频分析,机器学习等。

KubeEdge 体系结构:构建Kuberenetes Native Edge计算!

KubeEdge 的核心架构宗旨是构建与Kubernetes一致的接口,无论是在云端还是在边缘端。

边缘的 :在边缘管理容器化的应用程序。

EdgeHub :Edge上的通信接口模块。它是一个Web套接字客户端,负责与Cloud Service进行交互以进行边缘计算。

CloudHub :云中的通信接口模块。 Web套接字服务器,负责监视云端的更改,缓存并将消息发送到EdgeHub。

EdgeController:管理边缘节点。它是扩展的Kubernetes控制器,它管理边缘节点和Pod元数据,以便可以将数据定向到特定的边缘节点。

事件总线 :使用MQTT处理内部边缘通信。它是与MQTT服务器(mosquitto)进行交互的MQTT客户端,提供对其他组件的发布和订阅功能。

设备双胞胎 :这是用于处理设备元数据的设备的软件镜像。此模块有助于处理设备状态并将其同步到云。它还为应用程序提供查询接口,因为它与轻量级数据库(SQLite)进行接口。

MetaManager :它在边缘节点管理元数据。这是edged和edgehub之间的消息处理器。它还负责将元数据存储到轻量级数据库(SQLite)或从中检索元数据。

即使您要基于体系结构的改进和改进(例如增强的安全性)添加更多的控制平面模块,也很简单,因为它在这些模块中使用了一致的注册和模块化通信。

KubeEdge 提供可扩展的轻量级Kubernetes本机边缘计算平台,该平台可在离线模式下工作。

它有助于简化边缘应用程序的开发和部署。

云供应商不可知,可以在任何计算节点上运行云核心模块。

发布0.1到0.2-改变游戏规则!

KubeEdge v0.1于2018年12月底发布,具有非常基本的边缘功能,可用于管理边缘应用程序以及用于节点,pod,config等的Kubernetes API基元。在大约2个月的时间内,KubeEdge v0.2于2019年3月5日发布该版本提供了云核心模块,并实现了端到端的开源边缘计算解决方案。可以将云核心模块从任何云供应商或本地部署到任何计算节点。

现在,即使使用笔记本电脑,也可以轻松安装和测试完整的边缘解决方案。

随处运行-简单轻巧

如上所述,可以轻松部署KubeEdge Edge和Cloud核心组件,并可以运行用户应用程序。边缘核心的占地面积为66MB,只需要30MB的内存即可运行。同样,云核心可以在任何云节点上运行。 (用户也可以通过在笔记本电脑上运行它来体验)

安装很简单,只需几个步骤即可完成:

  1. 设置先决条件Docker,Kubernetes,MQTT和openssl
  2. 克隆并构建KubeEdge Cloud and Edge
  3. 运行云
  4. 跑边

每种方法的详细步骤都可以在下面找到 KubeEdge /知识

未来:以出色的功能和社区协作起飞

KubeEdge 由社区成员开发而成,这些成员是Kubernetes / CNCF的积极贡献者,并且在边缘计算方面进行了研究。 KubeEdge 团队还与Kubernetes物联网/边缘工作组积极合作。在KubeEdge宣布的短短几个月内,它已经吸引了来自京东,浙江大学,SEL Lab,Eclipse,中国移动,ARM,英特尔等不同组织的成员,以合作构建平台和生态系统。

KubeEdge 为其2019年即将发布的主要版本制定了清晰的路线图。vc1.0目标是提供具有标准边到边通信的完整边缘集群和设备管理解决方案,而v2.0目标是具有服务网格,功能服务,边缘的数据分析等。同样,对于所有功能,KubeEdge体系结构将尝试利用现有的CNCF项目/软件。

KubeEdge 社区需要各种组织,他们的要求,用例和支持来构建它。请加入以创建一个kubernetes本机边缘计算平台,该平台可以将云本机计算范例扩展到边缘云。

如何参与其中?

我们欢迎更多合作来构建Kubernetes原生边缘计算生态系统。请加入我们!