本文已超过一年。较旧的文章可能包含过时的内容。请检查页面中的信息自发布以来是否已变得不正确。

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

KubeEdge 成为首个边缘和云组件都开源的 Kubernetes 原生边缘计算平台!

开源边缘计算正在经历行业中最活跃的发展阶段。如此多的开源平台,如此多的整合以及如此多的标准化举措!这表明了构建更好的平台以将云计算带到边缘以满足不断增长的需求的强大动力。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 链接

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

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

你没听错!

KubeEdge 云核心模块已开源!

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

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

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

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

EdgeHub:边缘的通信接口模块。它是一个 WebSocket 客户端,负责与云服务交互进行边缘计算。

CloudHub:云端的通信接口模块。一个 WebSocket 服务器,负责监视云端的变化、缓存并将消息发送到 EdgeHub。

EdgeController:管理边缘节点。它是扩展的 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 边缘和云核心组件可以轻松部署并运行用户应用程序。边缘核心占用 66MB 的空间,只需 30MB 内存即可运行。同样,云核心可以在任何云节点上运行。(用户也可以通过在笔记本电脑上运行来体验)

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

  1. 设置先决条件 Docker、Kubernetes、MQTT 和 openssl
  2. 克隆并构建 KubeEdge 云和边缘
  3. 运行云
  4. 运行边缘

每个步骤的详细信息可在 KubeEdge/kubeedge 中找到

未来:以强大的功能和社区协作出发

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

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

KubeEdge 社区需要各种组织、它们的需求、用例和支持来构建它。请加入我们,打造一个可以将云原生计算范例扩展到边缘云的 kubernetes 原生边缘计算平台。

如何参与?

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