查看原文
其他

EdgeX Foundry成立5周年并发布第10个版本

Jim White EdgeXFoundry社区 2022-11-16

本文作者:Jim White,EdgeX Foundry技术指导委员会主席


EdgeX Foundry是LF Edge组织运营的的开源项目,在4月迎来了它的5岁生日,并庆祝其第10次发布!



2022年5月12日,该边缘/物联网平台项目宣布发布镰仓 (Kamakura) v2.2 版。EdgeX自2017 年成立以来,每年春季和秋季都会发布两个版本。回顾 2017 年汉诺威工业博览会上EdgeX项目的成立和宣布,我没有预想到EdgeX项目能取得如今的发展。


许多新的初创企业不会持续五年。对于EdgeX来说,庆祝5周年、每年稳定地提供平台新版本、并持续扩大其采用者社区是一项了不起的成就。它既说明了市场对开放边缘/物联网平台的需求,也说明了开发人员对该项目的承诺和辛勤工作。我为社区所取得的成就感到非常自豪。


我们将在即将发布的博客文章中仔细研究EdgeX在过去五年中的亮点。现在,让我们更加深入地了解一下Kamakura版本。 


新功能概述


尽管此“dot”版本是在第一个长期支持版本(2021年秋季Jakarta版本)之后发布的,但Kamakura 版本仍包含许多新功能,同时仍保持与所有 2.x 版本的向后兼容性。值得注意的是,在此版本中,EdgeX 添加了:


收集遥测指标:EdgeX收集传感器/设备信息,并以一致的方式将这些数据提供给分析包和企业系统,以便对其采取行动。但是,EdgeX 只能通过极少的方式报告其自身的健康或状态。采用者可以观察 EdgeX微服务容器内存或 CPU 使用情况,或者使用“ping”工具来确保服务仍然响应,但仅此而已。在 Kamakura 版本中,可以收集新的服务级别指标并通过 EdgeX 消息总线发送以供使用和监控。此版本的核心数据服务中提供了一些初始指标收集(例如:事件数和持久化的读取数),但是在整个系统范围内执行此操作的框架现在已经到位,以便在下一个版本中提供更多功能,或者允许采用者检测其他服务以报告他们认为合适的遥测指标。时间序列数据库、仪表板或自定义监控应用程序可以轻松订阅指标信息。


延迟启动服务:当EdgeX在运行时启用了安全功能,初始化服务(称为 security-secretstore-setup)会为每个 EdgeX 微服务提供一个令牌,用于访问 EdgeX 机密存储(由 Vault 提供)。这些令牌有一个生存时间 (TTL),这意味着如果没有被使用或更新,令牌就会过期。这给那些可能需要稍后启动的服务带来了问题——尤其是那些将连接到未来的传感器/设备的微服务。此外,并非所有 EdgeX 微服务在平台初始化时都是已知的。采用者可能会一直选择添加新的连接器(北部和南部)以满足新的需求。这些类型的问题和其他问题通常意味着采用者经常不得不关闭并重新启动所有 EdgeX微服务以便为所有服务提供新的安全令牌。在Kamakura版本里,此问题已通过使用相互身份验证 TLS 并交换 SPIFFE X.509 SVID 以获取秘密存储令牌的新服务得到解决。这项新服务允许服务随时获取或更新用于访问 EdgeX 机密存储的令牌,而不仅仅是在EdgeX 整体的启动/初始化阶段。


新的摄像头设备服务:虽然 EdgeX 在某种程度上支持通过摄像头设备服务连接到 ONVIF 摄像头,但该服务并不完整(例如,不允许访问摄像头的旋转、倾斜、缩放功能)。借助Kamakura版本,EdgeX现在将拥有两个摄像头设备服务。新的 ONVIF 摄像头设备服务更加完整,并针对服务器流行的摄像头设备进行了测试。它允许旋转、倾斜、缩放(PTZ),甚至可以发现符合 ONVIF 的摄像机。第二个摄像头服务——USB 摄像头服务——将帮助管理和监控简单的网络摄像头。重要的是,EdgeX 将能够通过 USB 摄像头服务将 USB 摄像头的视频流传输到其他软件包(例如 AI/ML 引擎),以将视觉推理结果整合到 EdgeX 数据传感器融合能力中。


动态设备配置文件:在以前的版本中,设备配置文件大多被认为是静态的。也就是说,一旦使用设备配置文件并将其关联到设备或任何其他EdgeX对象(如事件/读取),就不允许进行更改。例如,随着传感器或用例的更多细节出现,人们不能拥有一个空的设备配置文件并在稍后添加设备资源(设备服务收集的传感器点)。随着 Kamakura 版本的发布,设备配置文件在本质上更加动态,可以随时添加新资源。设备配置文件的元素会随着时间而改变。这使得设备配置文件更加灵活并适应传感器和用例需求,而无需一直移除和重新添加设备。


命令行v2: EdgeX 有一个用于多个版本的命令行(CLI)工具。但直到这个最新版本,该工具才完全更新到 EdgeX 2.0。就此而言,CLI 并未提供 100% 调用所有 EdgeX API 的能力。借助 Kamakura版本,除了使 CLI 工具与 EdgeX 2.0 实例兼容之外,CLI 现在还提供 100% 的 REST API 覆盖率(任何可以通过REST进行的调用都可以通过 CLI 完成)。还添加了一些新的功能,包括选项卡完成、使用注册表提供配置,以及改进的结果输出。


EdgeX社区也致力于许多其他功能/修复和改进工作,包括:


  • 更新的 LLRP/RFID 设备服务和应用服务(由江行智能贡献)

  • 添加或更新了 GPIO 和 CoAP 服务 (由江行智能贡献)

  • 能够在 Windows 平台上构建 EdgeX 服务(根据需要提供可选的 ZMQ 库)

  • 启用COR 

  • 添加了额外的测试——尤其是围绕服务的可选使用

  • 向 GUI 添加了测试(由VMware中国贡献)

  • 优化了开发运营 CI/CD 管道

  • EdgeX 的 Kubernetes Helm Chart 示例(在VMware中国先前贡献的代码基础上更新)

  • 在所有服务拉取请求的常规构建检查和测试中添加了 linting(针对程序、风格和安全问题自动检查源代码)的一部分

  • 正式发布和规划会议日程

  • 通过新的 GitHub 项目板更好地跟踪项目决策


近期技术讲座


在EdgeX项目刚开始时,我们提供了一系列名为“技术讲座(Tech Talks)”的网络研讨会,以帮助人们了解EdgeX是什么以及它是如何工作的。近期,新的技术讲座网络研讨会系列(英语)将于 5 月 24 日开始,每周举行一次,一直持续到 6 月。主题如下:


  • 5 月 24 日 EdgeX 入门

  • 6 月 7 日 – 构建 EdgeX 应用服务

  • 6 月 14 日 – 构建 EdgeX 设备服务

  • 6 月 21 日 – 创建设备配置文件

  • 6 月 28 日 – EdgeX Snaps 入门


这些讲座将由社区的杰出成员做介绍。新的讲座将有助于提供与Ireland版本一起引入的新 EdgeX 2.0 API 的说明。(EdgeX中国社区将在这些技术讲座完成后尽快传送至国内网站同大家分享。)


下一步:秋季将发布Levski版本


EdgeX 2022年秋季版本(代号为 Levski)计划正在进行中,将很快在网站上正式发布相关信息。作为 Kamakura 发布周期的一部分,几个架构决策记录(ADR)已创建,这些记录为秋季发布中的许多新功能奠定了基础,包括南北消息传递子系统和事件/读数中计量单位的标准化。 


EdgeX 5岁了,长路漫漫,未来可期!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存