KubeEdge,一个Kubernetes原生边缘计算框架

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

KubeEdge成为第一个Kubernetes原生边缘计算平台,Edge和云组件现已开源!

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

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

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

KubeEdge的主要目标是将Kubernetes生态系统从云端扩展到边缘。从2018年11月在上海KubeCon公布的时候开始,KubeEdge的架构方向与Kubernetes一致,正如它的名字!

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

基于其路线图和架构,KubeEdge尝试支持所有边缘节点、应用程序、设备甚至是与Kubernetes接口一致的集群管理。这将有助于边缘云的行为与云集群完全相同。这可以为基于KubeEdge的边缘云开发部署节省大量时间和成本。

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

你没听错!

KubeEdge云核心模块是开源的!

通过开放边缘和云模块,KubeEdge带来了一个完整的云供应商中立的轻量级异构边缘计算平台。现在它已准备好支持为边缘计算构建一个完整的Kubernetes生态系统,而且利用大多数现有的云原生项目或软件模块。这可以使边缘的迷你云支持要求苛刻的用例,如数据分析、视频分析机器学习等。

KubeEdge架构:构建Kubernetes原生边缘计算!

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

Edged:管理Edge的容器化应用程序。

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

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

EdgeController:管理Edge节点。它是一个扩展的Kubernetes控制器,用于管理边缘节点和pod元数据,以便将数据定位到特定的边缘节点。

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

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

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

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

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

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

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

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

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

现在,可以轻松安装和测试完整的边缘解决方案,包括在笔记本电脑上。

随处运行 – 简单而轻盈

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

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

  • 设置先决条件Docker、KubernetesMQTT和openssl
  • 克隆并构建KubeEdge云和边缘
  • 运行云
  • 运行边缘

KubeEdge/kubeedge提供每个步骤的详细步骤

https://github.com/kubeedge/kubeedge

未来:通过胜任的功能和社区协作起飞

KubeEdge由社区成员开发,他们是Kubernetes/CNCF的积极贡献者,并从事边缘计算研究。KubeEdge团队还积极与Kubernetes IOT/EDGE WORKING GROUP合作。在KubeEdge宣布的几个月内,它吸引了来自不同组织的成员,包括京东、浙江大学、SEL实验室、Eclipse、中国移动、ARM、英特尔共同构建平台和生态系统。

KubeEdge为其即将于2019年发布的主要版本提供了清晰的路线图。v1.0旨在通过标准的边缘到边缘通信提供完整的边缘集群和设备管理解决方案,而v2.0的目标是拥有边缘的服务网格、功能服务、数据分析等高级功能。此外,对于所有功能,KubeEdge架构将尝试利用现有的CNCF项目/软件。

KubeEdge社区需要不同的组织,他们的需求、用例和支持来构建它。请加入制作kubernetes原生边缘计算平台,该平台可将云原生计算范例扩展到边缘云。

如何参与?

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

Twitter:https://twitter.com/kubeedge

Slack:kubeedge.slack.com

网站:https://kubeedge.io

GitHub:https://github.com/kubeedge/kubeedge

电子邮件:kubeedge@gmail.com

文章来源:CNCF官微

K8S中文社区微信公众号

评论 1

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    杜军老师,有计划写一本关于 kubeedge 的书吗。

    梅生2个月前 (09-18)回复