将 K8s 延伸到边缘计算,华为云 KubeEdge 实践分享
近年来,随着互联网流量的爆发式增长,把软件业务进行拆分的微服务架构已经成为很多大中型互联网公司的建设标准,容器技术及相关应用得到了国内外越来越多的关注度。在国外,容器技术已经形成了较成熟的生态圈;而在国内,金融企业、互联网企业、IT 企业也正在积极投入容器技术的应用。
在容器集群编排与管理领域,CNCF 旗下的 Kubernetes (简称 K8s) 成为资源调度和编排的行业事实标准,其屏蔽了底层架构的差异性,帮助应用平滑地运行在不同的基础设施上。现在大家已经把 K8s 称为云应用的一个操作系统,从一些无状态的外部应用,慢慢地发展到企业核心的交易类应用、数据智能应用等,越来越多的应用运行在 K8s 上。
在 K8s 一统云端和服务端开发之际,有人提出“既然 K8s 这么好用,能不能用它来管理边缘端的资源调度和编排呢?”
事实上,边缘计算具有覆盖范围广、带宽成本高、受环境影响大等部署难点,如果要将 K8s 系统延展到边缘计算场景,边缘节点将通过公网和云端连接,从公网的不稳定性以及成本等因素考虑,边缘要求断网状态或者弱网状态下边缘业务仍可以持续运行,对系统的可用性提出了更高的要求。可一旦在边缘端成功部署,原本难以统一管理的边缘设备就将得到 K8s 带来的云原生技术便利,大大降低运维成本。
以遍布全国各个主干道的收费站系统项目为例。该项目涉及软硬件范围包括 10000 个收费站、30000 台门架服务器、300000 个门架后端应用、27000 个门架、74000 台车道控制器、232000 个门架前端组件,合计需要实现 10.4 万台异构设备的管理和 53.2 万个前后端应用的生命周期管理,治理难度可见一斑。
除了数量规模庞大以外,该项目还有以下诸多难点和挑战:
- 多硬件架构(有 ARM 也有 x86),供应商多样化(华为、研华、研祥等),需要异构支持和强兼容性。
- 边缘工控设备仅为 4 核 ARM SOC,可用内存也仅为 1G,需要低资源占用的解决方案。
- 从最终路段到路网中心一共分为 6 级管理层次,管理成本高,因此需要一个高度集成的边缘方案,才能降低运维成本。
- 网络分为部省、省站两层,多次转发。需要低接入要求,可支持专线、代理、有线和无线公网接入等多种方式。
- 各地基础设施建设不同,有些省份网络带宽甚至低至 3M,需要低带宽占用。
- 收费站网络条件差,经常出现断网情况,需要边缘系统具备离线自治功能。
可以看到,K8s 的特性与上面的很多功能需求都非常契合,包括跨平台的高兼容性、底层抽象的高集成性、强大的自治能力等。但 K8s 毕竟最初是为了云端数据中心而设计的,直接套用在边缘端存在资源受限、网络波动、异构设备管理等问题。因此,要想把 K8s 的优秀特性延伸到边缘计算领域,就需要一些“中间件”来发挥作用。
由华为云开源的 KubeEdge 项目就是把 K8s 应用到边缘计算的解决方案。KubeEdge 对 K8s 模块化解耦、精简,使 KubeEdge 最低运行内存仅需 70M,并且实现了云边协同通信、边缘离线自治等功能,可将本机容器化应用编排和管理扩展到边缘端设备。它构建在 K8s 之上,为网络和应用程序提供核心基础架构支持,并在云端和边缘端部署应用,同步元数据。KubeEdge 能够 100% 兼容 K8s 原生 API,可以使用原生 K8s API 管理边缘节点和设备。此外,KubeEdge 还支持 MQTT 协议,允许开发人员编写客户逻辑,并在边缘端启用设备通信的资源约束。
总的来说,K8s 给边缘计算提供了先进的运维思路,但单纯的原生 K8s 并不能满足边缘侧业务的所有需求。而集成了 K8s 云原生管理能力的 KubeEdge,同时对边缘业务部署和管理提供了很好的支持, 因此被引入到平台中来进行边缘节点管理和应用程序部署。
如果还想了解更多 KubeEdge 在边缘计算场景的实例与开发故事,敬请关注全球开源技术峰会 GOTC 2021 ,届时将有来自华为云的资深技术专家徐飞带来 KubeEdge 的主题演讲:KubeEdge 海量边缘节点和设备管理架构实战。本次分享将介绍 KubeEdge 如何在低质量网络环境下实现云边协同,实现对海量边缘节点和设备的稳定支持和管理。
徐飞,KubeEdge 社区 Maintainer,华为云高级工程师,目前专注于云原生边缘容器领域,曾在 Kubernetes、Istio 等社区及云原生领域工作多年,协作出版《云原生服务网格Istio》书籍,在云原生和边缘容器等领域拥有丰富的开源社区与商业落地实践经验。
GOTC,the Global Opensource Technology Conference,即全球开源技术峰会。该会议由开放原子开源基金会与 Linux 基金会联合开源中国社区共同发起,邀请 10+ 重量级开源基金会与开源社区深度参与,覆盖 100+ 公司的相关开源经验,涉及优秀开源项目 300+。峰会将携头部开源公司和顶级开源项目一起亮相,覆盖云原生、人工智能、物联网、区块链、大前端、音视频、安全、操作系统、数据库、开源治理等多个技术领域,为开发者带来全球最新、最纯粹的开源技术,同时传播开源文化和理念,推动开源生态的发展和建设。
组成这场开源盛会的专家主要是开源领域内的知名人物,相关的分享议题也聚焦开源,包括开源的技术、开源的运营与治理、开源的发展趋势、开源技术的实践、开源的商业化等。
此次会议还史无前例地邀请了当今世界几大顶级开源基金会负责人同时参与圆桌,共同讨论开源新生态。
更有 Linux 创始人 Linus Trovalds 将分享 Linux 诞生 30 年以来他的心路历程与开源洞见。
更多信息请查看:https://gotc.oschina.net/

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Electron 13.1.5 发布,跨平台桌面应用开发工具
Electron 13.1.5现已发布,主要更新内容如下: Fixes 修复了当nativeWindowOpen: false时,使用setWindowOpenHandler拒绝window.open的挂起问题。#29882 修复了在启用contextIsolation时下拉菜单在 DevTools 中不起作用的问题。#29885 修复了一个问题:如果 webRequest.onBeforeSendHeaders 回调响应对象中没有包含可选的"requestHeaders "参数,request headers 会被清除。#29836 修复了有时不会为 macOS 上的子窗口保留setAlwaysOnTop值的问题。#29956(同样在12,14) 修复了在 macOS 上使用Geolocation时崩溃的问题。#29912 Other Changes 将 Chromium 更新为 91.0.4472.124。#29774 更新说明:https://github.com/electron/electron/releases/tag/v13.1.5
- 下一篇
openEuler 社区成立 AccLib SIG,为应用加速
经 openEuler 社区技术委员会讨论批准,openEuler 社区正式成立 AccLib SIG。AccLib SIG 由华为的鲲鹏计算加速库团队发起,从自身加速库业务出发,致力于发展 openEuler 上的加速库开源软件生态,在 openEuler 上构建一个面向全领域多平台的加速库技术发布平台。 openEuler 社区通过建立 AccLib SIG,希望从事加速库技术的研究人员和工程人员,能够使用上 openEuler 提供的稳定、高性能的加速库开源软件。 加速库技术可分为硬件加速和软件加速,基于既有软硬件资源,实现软硬件协同加速,帮助用户最大限度地挖掘性能加速点。 加速库技术覆盖范围广泛,目前 AccLib SIG 已在系统库、压缩库、加解密库和存储库有了一些技术成果应用在基因测序、web 中间件、大数据、分布式存储等解决方案中。未来,AccLib SIG 组将会持续地支持更多加速库技术,例如新一代音视频、机器学习、网络等,支持更多的应用领域。 AccLib SIG 的主要技术目标有以下几点: 在 openEuler 社区新增加速库相关的开源软件,提供全领域多平台的加速...
相关文章
文章评论
共有0条评论来说两句吧...