写点什么

红帽架构师:为什么 KubeEdge 是 2020 年我最喜欢的开源项目?

发布于: 2021 年 01 月 27 日
红帽架构师:为什么KubeEdge是2020年我最喜欢的开源项目?

作者:Mike Calizo(Red Hat)

笔者看好边缘计算,它使“计算和数据存储更接近提高响应时间和节省带宽所需的位置”。移动设备和可穿戴设备的广泛使用,以及在某些地区提供的免费 WiFi,创造了大量数据,如果使用得当,可以提供许多优势。


Gartner 表示,移动应用程序采用的快速增长需要一个边缘基础设施来使用这些设备的数据。


在定义边缘计算架构时,有一点是不变的:平台必须具有灵活性和可扩展性,以便在其上和核心数据中心部署智能应用程序。


KubeEdge(它向资源受限的环境提供容器编排)是 2020 年笔者最喜欢的开源项目。这个极其轻量级但完全兼容的 Kubernetes 发行版是为了在网络边缘的物联网(IoT)设备中运行云原生工作负载而创建的。



收集和使用数据的挑战


如果数据使用不当,拥有丰富的数据源反倒是坏事。这就是边缘计算试图解决的难题。为了能够正确地使用数据,平台必须足够灵活,以处理收集、处理和服务数据所需的需求,并明智地决定数据是可以在边缘处理还是必须在区域或核心数据中心处理。


将数据从边缘位置移动到核心数据中心时面临的挑战包括:网络可靠性、安全、资源限制、自治。


边缘上的 Kubernetes 平台(如 KubeEdge)满足了这些要求,因为它提供了执行数据收集、处理和服务所需的可伸缩性、灵活性和安全性。KubeEdge 是开源的、轻量级的、易于部署的、资源需求低的,并且提供你所需要的一切。


KubeEdge 架构


KubeEdge 于 2018 年在西雅图举办的 KubeCon 首次亮相。2019 年,它被接受为 CNCF 沙盒项目,这使其具有更高的知名度,并使其有望成为 CNCF 认可的成熟项目。



简而言之,KubeEdge 有两个主要的组成部分:Cloud 和 Edge。


Cloud 部分是 Kubernetes Master 组件、EdgeController 和 edge Cloudhub 所在的地方。


CloudHub 是 Cloud 组件中的一个通信接口模块。它充当缓存机制,以确保 Cloud 部分中的更改被发送到边缘缓存机制(EdgeHub)。


EdgeController 管理边缘节点并在边缘节点之间执行协调。


Edge 部分是找到边缘节点的位置。最重要的 Edge 组件包括:


EdgeHub 是与 Cloud 组件通信的接口模块。


Edged 负责 kubelet 的工作,包括管理 pod 生命周期和节点上的其他相关 kubelet 工作。


MetaManager 确保所有节点级元数据都是持久的。


DeviceTwin 负责在 Cloud 和 Edge 组件之间同步设备。


EventBus 使用消息队列遥测传输(MQTT)处理内部边缘通信。


面向边缘计算的 Kubernetes


Kubernetes 已经成为在本地和公共云中编排容器化工作负载的黄金标准。这就是为什么笔者认为 KubeEdge 是使用边缘计算从移动技术产生的数据中获益的完美解决方案。


KubeEdge 架构允许在边缘计算层实现自治,从而解决了网络延迟和速度问题。这使你能够管理和编排核心数据中心中的容器,并通过自主边缘计算层管理数百万个移动设备。这是可能的,因为 KubeEdge 使用消息总线(在 Cloud 和 Edge 组件中)和 Edge 组件的数据存储的组合来允许边缘节点独立。通过缓存,每次握手时数据都与本地数据存储同步。类似的原理也适用于需要持久性的边缘设备。


KubeEdge 处理机器对机器(M2M)通信的方式与其他边缘平台解决方案不同。KubeEdge 使用 EclipseMosquitto,它是 Eclipse 基金会中流行的开源 MQTT 代理。Mosquitto 支持边缘和主节点之间的 WebSocket 通信。最重要的是,Mosquitto 允许开发人员编写自定义逻辑,并在边缘实现资源受限的设备通信。


对于 M2M 通信来说,安全性是必须的;它是你信任通过 web 发送的敏感数据的唯一方法。目前,KubeEdge 支持 Secure Production Identity Framework for Everyone(SPIFFE),确保:只有可验证的节点才能加入边缘集群;只有可验证的工作负载才能在边缘节点上运行;短期证书与轮换策略一起使用。


KubeEdge 要去哪里?



KubeEdge 是一个灵活的、供应商中立的、轻量级的、异构的边缘计算平台。这使得它能够支持诸如数据分析、视频分析、机器学习等用例。因为它是供应商中立的,KubeEdge 允许大型云厂商使用它。


这就是 KubeEdge 是笔者最喜欢的 2020 年项目的原因。还有更多的事情要做,笔者希望看到更多的社区贡献以推动更广泛的采用。它的未来令人感到兴奋,它将使我们能够使用可用的数据并将其获得更大的利益。


原文链接:https://opensource.com/article/21/1/kubeedge


欢迎关注华为云原生团队,我们将为你提供:

我们每日更新关于云原生技术动态、实战进阶、应用案例等;

入群与行业技术大牛,1 万+云原生爱好者一起链接学习;

不定期邀请云原生 OG 级技术大咖分享技术实战

…………


用户头像

还未添加个人签名 2020.02.11 加入

还未添加个人简介

评论

发布
暂无评论
红帽架构师:为什么KubeEdge是2020年我最喜欢的开源项目?