为什么物联网要有边缘计算?

物联网平台为您提供海量设备的接入和管理能力,您能便捷高效的接入各种形态的终端设备,还能在云端进行丰富完备的设备管理。但是云端物联网平台,离终端设备较远,且终端设备本身又不具备强大的计算能力,对于实时性要求较高的场景,云端因网络延时、网络拥塞等原因导致问题处理不及时;以及物联网设备数据量大,如果全部上报云端,数据传输成本也高。

针对这种情况,物联网平台结合边缘计算能力,通过在靠近终端设备的地方建立IoT边缘节点,将云端物联网平台的设备管理能力延伸到靠近终端设备的边缘节点,即IoT边缘服务。

· 提供轻量化的设备管理能力(包括设备接入、设备鉴权、云边数据同步等)。

· 在边缘节点与云端断链情况下也能提供设备的本地自治(包括设备数据缓存)。

· 为您提供低成本、本地自闭环、边缘智能、云边协同的方案。

业务流程

IoT边缘基于物联网平台的设备接入服务,给您提供边缘侧设备接入、低时延业务联动和本地闭环管理的解决方案。

使用IoT边缘服务的关键流程如下:

图1 业务流程

华为云IoT边缘对物联网边缘网关的硬件规格要求说明

IoT边缘服务并不强制配套边缘盒子,仅对边缘盒子的硬件规格有一些基本要求,只要是满足要求的硬件,无论型号,均可基于Docker容器方式部署边缘服务软件包,获取边缘侧的设备接入、设备联动和低时延本地闭环管理等基本能力。

IoT边缘支持的操作系统有:Huawei Cloud EulerOS、CentOS、 Ubuntu、EulerOS、Debian、OpenEuler、可信国产操作系统等,经过实测验证的版本如表2所示。

IoT边缘服务是软件,需要部署在硬件上,支持两种硬件规格,一种是容器化,一种是非容器化(进程级),其硬件规格和运行环境要求如表1和表3所示。

注:如需边缘节点的主备方案,则要预留备节点的硬件资源,规格与主节点一致。

表1 对各场景下的网关硬件规格要求

场景
规格要求
CPU架构
CPU核心数
RAM内存
磁盘存储空间
备注

仅应用托管

容器底座部署起步规格

x86_64、ARM

1U

256M

>2G

Docker环境

进程底座部署起步规格

x86_32

1U

128M

>1G

进程环境

工业设备/系统数采

每个数采通道支持1千点位,最大10点位WPS

x86_32/64、ARM

1U

1G

>2G

硬采场景,默认工业网关硬件数采;

若通过软采方式对接设备,则与软采场景约束一致

每个数采通道支持1万点位,最大2千点位WPS

x86_64、ARM

2U

8G

>20G

软采场景:

单数采通道的规格,每增加1万点位,增加0.5核CPU、2G内存;多数采通道的规格,按对接协议个数计算,N个协议需N个数采通道的资源;

单个边缘节点最大支持10万点位,2万点位WPS

WPS:每秒上报给平台的点位数

园区/城市/工业子系统数采

1000设备接入,100TPS消息并发

x86_64、ARM

6U

12G

>20G

每增加1000设备,100TIPS,增加0.5U、1G内存

最大支持10000设备,1000TIPS

TIPS:每秒上报给平台的消息数

表2 支持的操作系统版本(支持标准版、轻量版)

支持的操作系统
OS版本

Huawei Cloud EulerOS

1.0 64bit

CentOS

CentOS 8.2 64bit(40GB)、CentOS 7.9 64bit(40GB)、CentOS 6.9 64bit(40GB)、CentOS 6.9 64bit(40GB)、7.6 64bit、7.2 64bit

Ubuntu

18.04 server 64bit、16.04 server 64bit、Ubuntu 20.04 server 64bit(40GB)

EulerOS

2.5 64bit、2.5.4-x86_64

Debian

Debian 9.0.0 64bit(40GB)、Debian 10.0.0 64bit(40GB)

OpenEuler

openEuler 20.03 64bit(40GB)

Fedora

Fedora 29 64bit with ARM

KylinOS

Kylin Linux Advanced Server for Kunpeng V10

UnionTech

UnionTech OS Server 20 Euler (1000) 64bit with ARM

表3 硬件操作系统的环境依赖要求

依赖项
容器化规格(标准版)
进程级规格(轻量版)

Docker

Docker版本必须高于17.06,推荐使用18.06.3版本。

(请勿使用18.09.0版本Docker,该版本存在严重bug,详见https://github.com/docker/for-linux/issues/543;如果已使用此版本,请尽快升级。Atlas 500小站预置的Docker 18.09.0.60软件版本已经修改该问题。)

Docker安装方法请参见https://docs.docker.com/install/overview/。

可以选择使用开源的Docker CE或者使用Docker企业版(Docker EE),使用Docker EE时,需要支付Docker额外费用,更多Docker EE相关细节请参考Docker官方文档:https://docs.docker.com/ee/supported-platforms/ 。

须知:

Docker安装完成后,请将Docker进程配置为开机启动,避免系统重启后Docker进程未启动引起的系统异常。

不涉及

glibc

版本不低于2.17,Linux默认自带,如需下载,参见官网链接

版本不低于2.17,Linux默认自带,如需下载,参见官网链接

wget

版本不低于1.10,Linux默认自带,如需下载,参见官网链接

版本不低于1.10,Linux默认自带,如需下载,参见官网链接

openssl

版本不低于1.0.2,Linux默认自带,如需下载,参见官网链接

版本不低于1.0.2,Linux默认自带,如需下载,参见官网链接

端口使用

边缘节点需要使用如下端口,请确保这些端口能够正常使用。

7883:提供节点南向MQTTS设备接入

边缘节点需要使用如下端口,请确保这些端口能够正常使用。

7883:提供节点南向MQTTS设备接入

NTP(可选)

可靠的授时服务器,要求误差不大于5秒。

不涉及

华为云IoT边缘-最佳实践

  • 基于IoT边缘实现模拟MQTT设备的快速接入


    本实验将指导您搭建一个基于IoT边缘服务的边缘节点,并通过边缘节点实现设备通过原生MQTT协议以设备直连边缘节点模式接入。

    本实验将指导您搭建一个基于IoT边缘服务的边缘节点,并通过边缘节点实现设备通过原生MQTT协议以设备直连边缘节点模式接入。

  • 基于IoT边缘实现容器应用镜像插件部署

    本实验将指导您搭建一个基于IoT边缘服务的边缘节点,并在边缘节点上进行容器应用镜像插件部署,将用户自定义的容器镜像部署到边缘节点上,并实现节点上应用之间的数据流转。

    本实验将指导您搭建一个基于IoT边缘服务的边缘节点,并在边缘节点上进行容器应用镜像插件部署,将用户自定义的容器镜像部署到边缘节点上,并实现节点上应用之间的数据流转。

  • 基于IoT边缘实现进程包镜像插件部署

    本实验将指导您搭建一个基于IoT边缘服务的边缘节点,并在边缘节点上进行进程包插件部署,将用户自定义的进程包插件部署到边缘节点上运行。

    本实验将指导您搭建一个基于IoT边缘服务的边缘节点,并在边缘节点上进行进程包插件部署,将用户自定义的进程包插件部署到边缘节点上运行。

华为云IoT边缘平台开发使用文档

  • Io边缘平台开发前必读

    基于华为云物联网IoT边缘平台去实现一个物联网解决方案,涉及使用华为IoT边缘服务开发的部分在架构上涉及部分为:应用侧开发、插件开发。


    基于华为云物联网IoT边缘平台去实现一个物联网解决方案,涉及使用华为IoT边缘服务开发的部分在架构上涉及部分为:应用侧开发、插件开发。

  • IoT边缘平台开发资源获取

    在设备和对接边缘节点场景中,需要在设备侧集成相应证书。包括ModuleSDK(java)、MQTT.fx、plt-device-ca、证书文件、Modbus Slave。


    在设备和对接边缘节点场景中,需要在设备侧集成相应证书。包括ModuleSDK(java)、MQTT.fx、plt-device-ca、证书文件、Modbus Slave。


  • IoT边缘应用侧开发调试API指南

    使用paw/postman等工具调试API。前提条件在调用API之前需要获取token,调用查询应用列表API。查看API说明(关注API地址、请求类型、请求参数、返回参数)

    使用paw/postman等工具调试API。前提条件在调用API之前需要获取token,调用查询应用列表API。查看API说明(关注API地址、请求类型、请求参数、返回参数)

  • IoT边缘平台插件开发指南

    华为IoT边缘提供ModuleSDK,用户可通过集成SDK让设备以及设备数据快速上云。IoT边缘平台应用功能有自定义处理设备数据(即数据处理),自定义协议设备快速接入(即协议解析),IT子系统接入(即IT应用),并且支持容器化部署和安装包部署的方式。

    华为IoT边缘提供ModuleSDK,用户可通过集成SDK让设备以及设备数据快速上云。IoT边缘平台应用功能有自定义处理设备数据(即数据处理),自定义协议设备快速接入(即协议解析),IT子系统接入(即IT应用),并且支持容器化部署和安装包部署的方式。

  • IoT边缘插件开发数据处理架构介绍

    IoT边缘云服务为应用提供总线对接能力、设备命令下发能力。IoTEdge对应用的日志、数据存储目录进行统一配置,应用相关设置通过环境变量传递给应用。



    IoT边缘云服务为应用提供总线对接能力、设备命令下发能力。IoTEdge对应用的日志、数据存储目录进行统一配置,应用相关设置通过环境变量传递给应用。



  • IoT边缘插件开发协议转换(驱动应用)架构介绍

    驱动提供子设备管理和数据上报功能。子设备管理功能包括子设备增删和配置子设备数据采集协议。设备的增删有两种形式,一是在云端增删,二是在本地增删。数据上报功能可以将设备状态和设备数据上报到云端。

    驱动提供子设备管理和数据上报功能。子设备管理功能包括子设备增删和配置子设备数据采集协议。设备的增删有两种形式,一是在云端增删,二是在本地增删。数据上报功能可以将设备状态和设备数据上报到云端。

  • IoT边缘插件开发工业子系统接入(IT应用)架构介绍

    IT应用利用APIGW与云端协同提供下行通道、上行请求代理(鉴权终结)等能力,实现了云端(NA)与IT应用的相互调用。

    IT应用利用APIGW与云端协同提供下行通道、上行请求代理(鉴权终结)等能力,实现了云端(NA)与IT应用的相互调用。

  • IoT边缘ModuleSDK开发方案概述

    基于ModuleSDK开发应用实现数据处理或自定义驱动时,分为开发和使用两个部分。App应用的开发,利用AppClient和DriverClient进行自定义的业务处理。

    基于ModuleSDK开发应用实现数据处理或自定义驱动时,分为开发和使用两个部分。App应用的开发,利用AppClient和DriverClient进行自定义的业务处理。

  • IoT边缘集成ModuleSDK(C)架构

    模块SDK用于开发运行在边缘节点中的应用,包括数据处理应用(简称应用,例如数据清洗)和协议驱动(简称驱动,例如EdgeAccess)。

    模块SDK用于开发运行在边缘节点中的应用,包括数据处理应用(简称应用,例如数据清洗)和协议驱动(简称驱动,例如EdgeAccess)。