基于KubeEdge的边缘节点分组管理设计与实现
KubeEdge 1.11版本提供了“边缘节点分组管理”新特性,抽象出了跨地域的应用部署模型。该模型将边缘节点按地区划分为节点组,并将应用所需资源打包成一个整体在节点组上进行部署,降低了边缘应用生命周期管理的复杂度,有效减少运维成本。
KubeEdge 1.11版本提供了“边缘节点分组管理”新特性,抽象出了跨地域的应用部署模型。该模型将边缘节点按地区划分为节点组,并将应用所需资源打包成一个整体在节点组上进行部署,降低了边缘应用生命周期管理的复杂度,有效减少运维成本。
本篇主要从DeviceTwin组件的源码出发,剖析DeviceTwin模块的内部实现,同时也对其四个子模块(membership、communication、device和twin)的具体执行逻辑进行具体分析。
DeviceController属于KubeEdge的云端组件,负责设备管理。KubeEdge利用Kubernetes提供的CRD机制,对真实的物理设备进行抽象,通过自定义一个名为`Device`的自定义资源(Custom Resource)来描述设备的元数据以及状态。而DeviceController,顾名思义,就是这一资源的的控制器,由它负责云边的设备信息同步。
本文在commit `a9b0862bed7fc2f9350a850496e60640fc43c15c`(2020.06.20)之后对KubeEdge进行源码分析,分析KubeEdge的edgecore的整体框架,对细节不做过多展示
本文基于KubeEdge官方文档,加上作者的亲身实践,给出以下KubeEdge1.3.0版本下Cloudcore模块中cloudhub模组的源码分析。
kubeedge是华为在KubeCon CloudNativeCon China 2018上发布的面向边缘环境容器管理平台。kubeedge能够接入云端Kubernetes集群,使得边缘端应用的管理可以跟云端应用的管理一样,采用广为熟知的Kubernetes API。SEL实验室准备用一系列文章分析kubeedge的总体架构和各个模块的内部实现机制,本文为系列文章的第一篇,分析kubeedge的版本为1.1后的commit `31e562bc`。
Copyright ©️ 2020 SEL Laboratory , ZJ University all rights reserved.