写点什么

KubeEdge:开源的 Kubernetes 原生边缘计算框架

  • 2019-03-26
  • 本文字数:2497 字

    阅读完需:约 8 分钟

KubeEdge:开源的Kubernetes原生边缘计算框架

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


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


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


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


KubeEdge 的主要目标是将 Kubernetes 生态系统从云扩展到边缘。自 2018 年 11 月 KubeEdge 在上海 KubeCon 向公众发布以来,就像它的名字一样,KubeEdge 的架构方向一直与 Kubernetes 保持一致。


V0.1 版本开始提供基本的边缘计算特性。现在,在最新的 v0.2 版本中,它引入了云组件用于连接并形成回路。通过一致且可伸缩的基于 Kubernetes 的接口,KubeEdge 支持边缘集群的编排和管理,类似于 Kubernetes 在云中的管理方式。这为快速高效地将云计算能力推向边缘提供了可能。



KubeEdge 相关链接:


  • 网站

  • 源代码

  • 文档


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


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


你没听错!KubeEdge 云核心模块开源了!


通过开放边缘和云模块的源代码,KubeEdge 带来了一个完整的云供应商无关的轻量级异构边缘计算平台。现在,它已经准备好为边缘计算构建一个完整的 Kubernetes 生态系统,充分利用现有的云原生项目或软件模块。这可以在边缘实现微云,支持高要求的用例,比如数据分析、视频分析、机器学习等等。


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


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



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


EdgeHub:边缘的通信接口模块。这是一个 Web 套接字客户端,负责边缘计算与云服务的交互。


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


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


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


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 Cloud 和 Edge

  3. 运行 Cloud

  4. 运行 Edge


要了解上述步骤的详细信息,请查看KubeEdge/kubeedge


未来展望:依托于强大的功能和社区协作来发展


KubeEdge 是由社区成员开发的,他们也是 Kubernetes/CNCF 的活跃贡献者和边缘计算的研究者。KubeEdge 团队还积极与 Kubernetes IOT/EDGE 工作组开展合作。在 KubeEdge 发布公告后的几个月内,包括京东、浙江大学、SEL 实验室、Eclipse、中国移动、ARM、英特尔等在内的不同组织就加入了 KubeEdge 社区,共同致力于 KubeEdge 平台和生态系统的构建。


对于 2019 年即将发布的主要版本,KubeEdge 有一个清晰的路线图。vc1.0 的目标是提供一个完整的边缘集群和设备管理解决方案,包含标准的边缘到边缘通信,而 v2.0 的目标是提供高级的边缘特性,如服务网格、函数服务、数据分析等。此外,对于所有这些特性,KubeEdge 体系结构将尝试利用现有的 CNCF 项目/软件。


KubeEdge 社区的构建离不开各种组织、它们的需求、用例和支持。欢迎加入 Kubernetes 原生边缘计算平台的开发,它可以将云原生计算范式扩展到边缘云。


查看英文原文:KubeEdge, a Kubernetes Native Edge Computing Framework


2019-03-26 08:0012924
用户头像

发布了 618 篇内容, 共 311.4 次阅读, 收获喜欢 1416 次。

关注

评论

发布
暂无评论
发现更多内容

150亿美元,CANVA可画市场价值为何堪比金蝶、用友?

ToB行业头条

SaaS 可画 品牌视觉管理

专访关涛:阿里EB级大数据体系,背后的计算平台竟是这样(采访提纲)

花花

试用期 签约计划

WinRM 如何设置 TrustedHosts

HoneyMoose

【Flutter 专题】102 何为 Flutter RenderObjects ?

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 6月日更

HarmonyOS Connect伙伴峰会于厦门举办 硬件生态快速发展

科技汇

云图说|初识华为云数据库GaussDB(for openGauss)

华为云开发者联盟

数据库 开源 GaussDB GaussDB(for openGauss) 华为云数据库

盘点用jQuery框架实现“for循环”的四种方式!

华为云开发者联盟

jquery 遍历 js 框架 for循环

优秀的 Scrum Master 应当是仆人式的领导

万事ONES

Scrum 敏捷开发 ScrumMaster ONES

一文介绍备机重建各种方法的实现机制

华为云开发者联盟

主机 集群 GaussDB(DWS) 备机重建 备机

Android客户端网络预连接优化机制探究

vivo互联网技术

android TCP HTTP

负载均衡算法之二 - 以 Golang 方式

hedzr

Go 语言 load-balancing weighted random weighted versioning

烹饪一道美味的 CLI

蛋先生DX

node,js command 6月日更

SpringBoot之ScopedProxyMode

梦倚栏杆

Redis响应延时问题排查

hasWhere

【融云技术】Native C/C++ 服务适配多指令集 CPU 漫谈

融云 RongCloud

商用RTC vs 基于开源WebRTC自研 开发者该如何选择?

融云 RongCloud

项目进度管理 | 如何为项目制定里程碑?

万事ONES

项目管理 研发管理 研发管理工具 ONES

JAVA笔记(四)--三大结构语句

加百利

Java 后端 6月日更 结构语句

图论环境配置出现的各种错误

容光

短链接生成算法

Skysper

算法

【Vue2.x 源码学习】第十六篇 - 生成 render 函数 - 代码拼接

Brave

源码 vue2 6月日更

react源码解析14.手写hooks

全栈潇晨

React

我想挑战下我的软肋,动手实现个Spring应用上下文!

小傅哥

spring 应用上下文 资源加载 自动识别 扩展机制

警惕商标到付快递的骗局

石云升

商标 诈骗 6月日更

什么是 API

escray

学习 极客时间 朱赟的技术管理课 6月日更

清晰理解红黑树的演变---红黑的含义

hasWhere

EasyRecovery---U盘数据恢复技巧

淋雨

数据恢复 EasyRecovery 文件恢复

还不会JVM调优吗?照着做就行

看山

Java JVM 6月日更

你真的会设置密码吗?

卢卡多多

密码学 6月日更

Python——字典的遍历

在即

6月日更

最牛的编码套路

hasWhere

  • 扫码加入 InfoQ 开发者交流群
KubeEdge:开源的Kubernetes原生边缘计算框架_开源_Jun Du_InfoQ精选文章