容器化系统


概述

“Kubernetes” Edge 容器化系统 (Edge Container System) 基于 KubeEdge 和 Kubernetes 提供的能力搭建 Edge 容器化管理,实现海量边缘节点的批量管理。

Edge 容器化系统架构如下图所示:

../../_images/container_function.png

产品功能

Edge 容器化服务的产品功能如下:

  • 应用调度:应用部署和升级

  • 监控:日志查看

应用场景

云边协同

在现有网络场景下,可以批量运维海量的边缘节点,包括批量部署或升级和日志查看等。

边缘自治

在断网或者弱网场景下,边缘节点依赖本地持久化的镜像以及元数据可以自行运行服务,并在网络恢复后与云端交互数据。

备注

建议在节点发往现场前进行预部署。

使用路径

建议用户进行版本化部署,即利用封装好的版本包部署 Edge 容器,使用流程如下:

  1. 关联节点至场站

  2. 指定节点配置

  3. 发布容器版本

关键概念

Pod

在 Kubernetes 中创建和管理的最小的可部署的计算单元。表示一组一个或多个应用程序容器,可以共享网络、存储和计算资源。在 ECS 平台中的 Pods 容器中可以查看 Pod 日志。

Edge 边缘节点

EnOS Edge 边缘计算设备(Edge IIoT Gateway 和 Edge Extensive)可以是物理机也可以是虚机,可用于运行边缘应用、处理数据,并与云端应用协同。每个 Edge 边缘节点上可以运行多个 Pod。

Deployment

为 Pod 和 ReplicaSet(Pod 副本数量控制器)提供声明式的更新能力,确保每时刻工作的 Pod 数量保持在设定值。在 ECS 平台中的 Deployment 容器中设置应用部署占用的资源。

Config Map

一种 API 对象,可以将配置数据和应用程序分开。对于 Edge 来说,通常有 2 种类型的 box.conf 和 lion.properties,可以在 ECS 平台中的 Config Maps 容器中设置应用配置信息,参见 指定节点配置

版本

Edge 容器系统使用版本功能来维护应用镜像、应用 deployment 模版、lion.properties(功能配置部分)、应用启动依赖关系。使用版本可以简化部署流程。

Edge 自身的版本包通常由 Edge 运维专家创建,运维人员可以直接选择已有的版本包进行相应的部署。版本包说明如下表所示:


配置项

说明

版本

通过“创建版本”新建主版本,在主版本基础上新建子版本

产品形态

选择 Gateway 单节点、Extensive 单节点或 Extensive 多节点

版本号

主版本号按照版本号规范手动输入(通常为 X.Y.Z),子版本号系统自动生成

描述

对版本内容和作用的说明

配置文件

每个版本拥有一个配置文件,即 lion.properties 中的功能配置部分

包含组件

定义待部署的组件

Docker 镜像

组件对应的镜像文件版本

应用模版

deployment 模版

滚动更新

Edge 容器化系统的发布模式,是将一个集群中正在运行的多个 Pod 版本,交替地逐一升级的过程。