KubeEdge-Device Management组件

410 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第28天,点击查看活动详情

KubeEdge通过Kubernetes crd和与所使用的设备相对应的设备映射器(device Mapper)来支持设备管理。目前,我们通过设备控制器和设备孪生模块管理云中的设备,并在边缘节点和云之间同步设备更新。

Device Model

设备模型描述了设备和属性访问器公开的设备属性,以访问这些属性。设备模型就像一个可重用的模板,可以使用它创建和管理许多设备。

Device Instance

设备实例代表一个实际的设备对象。它类似于设备模型的实例化,并引用模型中定义的属性。设备规格是静态的,而设备状态包含动态变化的数据,比如设备属性的期望状态和设备报告的状态。

Device Mapper

Mapper是一个用于连接和控制设备的应用程序。mapper的职责如下:

  • 扫描并连接设备。
  • 报告设备双属性的实际状态。
  • 将device-twin的预期状态映射到实际状态。
  • 从设备收集遥测数据。
  • 将设备的读数转换为KubeEdge接受的格式。
  • 对设备进行动作调度。
  • 检查设备健康状态

Device CRD 的用法

  1. 在云节点中创建设备模型。
  2. 在云节点中创建一个设备实例。设备实例的创建还将导致配置映射的创建,该配置映射将包含mapper应用程序所需的设备信息。配置映射的名称如下:配置映射的更新是由设备控制器内部处理的。
  3. 运行对应于协议的映射程序。
  4. 编辑步骤2中创建的设备实例yaml的状态部分,并应用yaml来更改设备双胞胎的状态。这种变化将反映在边缘,通过设备控制器和设备孪生模块。基于边缘的设备孪生的更新值,映射器将能够在设备上执行其操作。
  5. 设备双胞胎报告的值由位于边缘的映射程序更新,这些数据由设备控制器同步回云。用户可以通过检查他的设备实例对象来查看云上的更新。