【云驻共创】华为云IoTDA服务下的设备管理流程实操

文章目录

  • 一、当今社会发展趋势
    • 1.社会背景
    • 2.什么是物联网(IoT)
    • 3.什么是华为云(IoTDA)
  • 二、为什么需要设备发放
    • 1.传统模式-存在问题
    • 2.设备发放模式-问题改进
  • 三、设备接入服务的功能体验
    • 1.功能一:规模化设备安全发放
    • 2.功能二:设备发放支持多种策略
    • 3.功能三:设备发放支持bootstrap流程
    • 4.功能四:设备发放支持免注册
    • 5.功能五:设备发放支持数据同步统一管理
  • 四、华为云IoTDA服务应用场景
    • 1.业务场景
    • 2.解决方案
  • 五、华为云IoTDA服务配置流程配置
    • 1.华为云相关配置
      • 1.1 云平台配置
        • 1.1.1 创建华为云账号
        • 1.1.2 开通设备接入服务
        • 1.1.3 登录设备接入服务控制台
        • 1.1.4 进入设备发放完成授权开通
      • 1.2 证书配置
        • 1.2.1 进入证书页面
        • 1.2.2 生成华为云证书
        • 1.2.3 上传证书
        • 1.2.4 验证证书
        • 1.2.5 补充证书概念:x509证书
      • 1.3 策略配置
        • 1.3.1 进入策略配置界面
        • 1.3.2 配置策略
      • 1.4 设备注册
        • 1.4.1 创建产品
        • 1.4.2 进入设备注册页面
        • 1.4.3 设备单个/批量注册
        • 1.4.4 设备操作记录查看
      • 1.5 注册组
        • 1.5.1 进入设备-注册组界面
        • 1.5.2. 查看ScopeId
        • 1.5.3. 新增注册组
  • 六、MQTT.fx发放流程实操
    • 1. 使用MQTT.fx工具模拟设备发起引导;
      • 1.1 找到设备协议和接入地址
      • 1.2 产品模型定义
        • 1.2.1 新增模型定义
        • 1.2.2 添加属性
        • 1.2.3 预置X.509证书
          • 1.2.3.1 制作设备CA调测证书
          • 1.2.3.2 上传验证证书
          • 1.2.3.3 制作设备X.509调测证书
        • 1.2.4 注册X.509证书认证的设备
    • 2. 配置连接参数;
    • 3. 发起连接;
    • 4. 测试设备连接
    • 5. 测试设备发放中消息发布和订阅
      • 5.2 消息发布端
      • 5.3 消息订阅端
      • 5.4 接收到引导消息
  • 总结

一、当今社会发展趋势

1.社会背景

随着当今社会基础设施的不断完善,5G、IoT 技术日渐成熟,传统应用已经无法满足人们需求,随之而来是诞生一个新的应用形态即物联网(IoT)。我们能看到的一些新的应用场景,包括车联网、工业物联网以及智能家居等。

随着物联网应用的发展和普及,相关的IoT设备的数量会与日剧增,以及设备产生的数据会是更大的规模进行传播,相应而来就需要一个统一管理平台,华为云(IoTDA)服务的诞生就是基于这个背景之下。

2.什么是物联网(IoT)

物联网(IoT)是指通过各种信息传感设备,如传感器、射频识别(RFID)技术、全球定位系统、红外感应器、激光扫描器、气体感应器等各种装置与技术,实时采集任何需要监控、连接、互动的物体或过程。

采集设备其声、光、热、电、力学、化学、生物、位置等各种需要的信息,与互联网结合形成的一个巨大网络。其目的是实现物与物、物与人,所有的物品与网络的连接,方便识别、管理和控制。

3.什么是华为云(IoTDA)

设备接入服务(IoT Device Access)是华为云的物联网平台,提供海量设备连接上云、设备和云端双向消息通信、批量设备管理、远程控制和监控、OTA升级、设备联动规则等能力,并可将设备数据灵活流转到华为云其他服务,帮助物联网行业用户快速完成设备联网及行业应用集成。

二、为什么需要设备发放

1.传统模式-存在问题

【云驻共创】华为云IoTDA服务下的设备管理流程实操

存在问题:

  • 面向云端:客户需要对接多个云端,发放工作将较繁琐且不易管理,遇到问题不利于排查维护,无法保证信息和设备安全。
  • 面向产线端:客户需要对接多个产线,对于设备对接需要门槛高,成本大,而且存在大量需要人工干预环节,会照成信息泄露,无法保证信息和设备安全。

2.设备发放模式-问题改进

【云驻共创】华为云IoTDA服务下的设备管理流程实操

问题改进:

  • 面向云端:提供统一的发放服务和接口标准,并与云端进行统一的集成和集中管理,节约管理成本,实现高效的发放操作,和安全的操作。
  • 面向产线端:提供统一的发放服务和接口标准,并与产线端进行无缝衔接,提高安全性和效率,设备可以自动获取正确的云端iot地址

三、设备接入服务的功能体验

1.功能一:规模化设备安全发放

【云驻共创】华为云IoTDA服务下的设备管理流程实操

2.功能二:设备发放支持多种策略

【云驻共创】华为云IoTDA服务下的设备管理流程实操

3.功能三:设备发放支持bootstrap流程

【云驻共创】华为云IoTDA服务下的设备管理流程实操

4.功能四:设备发放支持免注册

【云驻共创】华为云IoTDA服务下的设备管理流程实操

5.功能五:设备发放支持数据同步统一管理

【云驻共创】华为云IoTDA服务下的设备管理流程实操

四、华为云IoTDA服务应用场景

1.业务场景

设备管理会遇到以下几个瓶颈:

  • 多区域:统一管理困难
  • 多类型:统一标准困难
  • 多数量:统一维护困难

2.解决方案

【云驻共创】华为云IoTDA服务下的设备管理流程实操

五、华为云IoTDA服务配置流程配置

1.华为云相关配置

1.1 云平台配置

1.1.1 创建华为云账号

华为云注册界面网址:https://id1.cloud.huawei.com/UnifiedIDMPortal/portal/userRegister/regbyphone.html
【云驻共创】华为云IoTDA服务下的设备管理流程实操

注册成功后,跳转下一步

1.1.2 开通设备接入服务

相关产品网址:https://www.huaweicloud.com/product/iothub.html
【云驻共创】华为云IoTDA服务下的设备管理流程实操

点击免费试用后,跳转下一步

1.1.3 登录设备接入服务控制台

【云驻共创】华为云IoTDA服务下的设备管理流程实操

点击设备发放,进入下一步

1.1.4 进入设备发放完成授权开通

授权开通网址:https://console.huaweicloud.com/iot/?region=cn-north-4#/iotdmp/provisioning/applyIodps
【云驻共创】华为云IoTDA服务下的设备管理流程实操

点击授权,显示未开通
【云驻共创】华为云IoTDA服务下的设备管理流程实操
关闭未授权提示,发现授权开通按钮
【云驻共创】华为云IoTDA服务下的设备管理流程实操
点击同意授权,授权成功
【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.2 证书配置

1.2.1 进入证书页面

点击证书按钮则进入证书页面,页面地址:https://console.huaweicloud.com/iot/?region=cn-north-4#/iotdmp/provisioning/certificates
【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.2.2 生成华为云证书

方式一:生成ca证书的华为云服务网址:https://console.huaweicloud.com/ccm/

方式二:openssl生成ca证书的华为官方文档网址:https://support.huaweicloud.com/usermanual-iothub/iot_01_0104.html

本文以方式二为例介绍证书配置,liunx系统为例

#生成密钥对(server.key):
openssl genrsa -des3 -out server.key 2048
#使用密钥对生成证书请求文件:
openssl req -new -key server.key -out server.csr
#生成CA证书(server.crt):
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

【云驻共创】华为云IoTDA服务下的设备管理流程实操

生成了密钥文件如下
【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.2.3 上传证书

首先在设备发放控制台,左侧导航窗格中,选择“证书”,单击右上方的“上传CA证书”,选择上一步中已生成的CA证书
【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.2.4 验证证书

对于已上传的CA证书,平台要求用户完成“验证CA证书”过程,以验证用户具备该CA证书的签发能力。

首先点开验证证书生成随机码
【云驻共创】华为云IoTDA服务下的设备管理流程实操
随机码为:b81339d4a3bd867b2dbafd3f51edd428

#使用OpenSSL工具为验证证书生成密钥对。
openssl genrsa -out client.key 2048
#利用此验证码生成证书请求文件CSR。(CSR文件的Common Name (e.g. server FQDN or YOUR name) 需要填写此验证码。)
openssl req -new -key client.key -out client.csr
#使用由CA私有密钥前面的CSR创建私有的验证证书(client.crt)。
openssl x509 -req -in client.csr -CA server.crt -CAkey server.key -CAcreateserial -out client.crt -days 500 -sha256

【云驻共创】华为云IoTDA服务下的设备管理流程实操

生成验证证书如下
【云驻共创】华为云IoTDA服务下的设备管理流程实操

上传验证证书进行验证
【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.2.5 补充证书概念:x509证书

 1. x509证书一般会用到三类文件,key,csr,crt。
 2. key是私用密钥,openssl格式,通常是rsa算法。
 3. csr是证书请求文件,用于申请证书。在制作csr文件的时候,必须使用自己的私钥来签署申请,还可以设定一个密钥。
 4. crt是CA认证后的证书文件(windows下面的csr,其实是crt),签署人用自己的key给你签署的凭证。

1.3 策略配置

1.3.1 进入策略配置界面

【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.3.2 配置策略

选择证书策略
【云驻共创】华为云IoTDA服务下的设备管理流程实操
【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.4 设备注册

1.4.1 创建产品

创建产品页面链接:https://console.huaweicloud.com/iotdm/?region=cn-north-4#/dm-dev/all-product
【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.4.2 进入设备注册页面

设备注册页面链接:https://console.huaweicloud.com/iot/?region=cn-north-4#/iotdmp/provisioning/reg_single
【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.4.3 设备单个/批量注册

【云驻共创】华为云IoTDA服务下的设备管理流程实操
【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.4.4 设备操作记录查看

【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.5 注册组

1.5.1 进入设备-注册组界面

【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.5.2. 查看ScopeId

【云驻共创】华为云IoTDA服务下的设备管理流程实操
ScopeId为:b3779febd142

1.5.3. 新增注册组

【云驻共创】华为云IoTDA服务下的设备管理流程实操
【云驻共创】华为云IoTDA服务下的设备管理流程实操

六、MQTT.fx发放流程实操

1. 使用MQTT.fx工具模拟设备发起引导;

1.1 找到设备协议和接入地址

进入控制台地址:https://console.huaweicloud.com/iotdm/?region=cn-north-4#/dm-portal/home
【云驻共创】华为云IoTDA服务下的设备管理流程实操
【云驻共创】华为云IoTDA服务下的设备管理流程实操
协议:MQTT (1883)| MQTTS (8883)
接入地址:a161de603f.iot-mqtts.cn-north-4.myhuaweicloud.com

1.2 产品模型定义

前面配置阶段已经建立了产品,在接入是需要定义产品模型步骤如下:

1.2.1 新增模型定义

【云驻共创】华为云IoTDA服务下的设备管理流程实操

【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.2.2 添加属性

【云驻共创】华为云IoTDA服务下的设备管理流程实操
【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.2.3 预置X.509证书

注意:注册个MQTT.fx设备专属证书,设备证书和发放证书位置不一样
【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.2.3.1 制作设备CA调测证书
#执行以下命令生成密钥对。
openssl genrsa -out rootCA.key 2048
#执行以下命令,使用密钥对中的私有密钥生成 CA 证书。
openssl req -x509 -new -nodes -key rootCA.key -sha256 -days 1024 -out rootCA.pem

【云驻共创】华为云IoTDA服务下的设备管理流程实操
【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.2.3.2 上传验证证书
#执行如下命令为私有密钥验证证书生成密钥对。
openssl genrsa -out verificationCert.key 2048
#执行如下命令为私有密钥验证证书创建CSR(Certificate Signing Request)。
openssl req -new -key verificationCert.key -out verificationCert.csr
#执行以下命令使用CSR创建私有密钥验证证书。
openssl x509 -req -in verificationCert.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out verificationCert.pem -days 500 -sha256

【云驻共创】华为云IoTDA服务下的设备管理流程实操
【云驻共创】华为云IoTDA服务下的设备管理流程实操
【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.2.3.3 制作设备X.509调测证书
#执行如下命令生成密钥对。
openssl genrsa -out deviceCert.key 2048
#执行如下命令为设备证书创建CSR(Certificate Signing Request)。
openssl req -new -key deviceCert.key -out deviceCert.csr
#执行以下命令使用CSR创建设备证书。
openssl x509 -req -in deviceCert.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out deviceCert.pem -days 500 -sha256

【云驻共创】华为云IoTDA服务下的设备管理流程实操

1.2.4 注册X.509证书认证的设备

访问控制台,因为是X.509证书认证,需要填写指纹
生成指纹命令

openssl x509 -fingerprint -sha256 -in deviceCert.pem

【云驻共创】华为云IoTDA服务下的设备管理流程实操
注意:指纹为框中内容去除冒号
【云驻共创】华为云IoTDA服务下的设备管理流程实操

【云驻共创】华为云IoTDA服务下的设备管理流程实操

访问地址:https://iot-tool.obs-website.cn-north-4.myhuaweicloud.com/

填写注册设备后生成的设备ID(DeviceId)和密钥(DeviceSecret),生成连接信息(ClientId、Username、Password)
【云驻共创】华为云IoTDA服务下的设备管理流程实操
DeviceSecret在证书认证可随意填写

2. 配置连接参数;

打开MQTT.fx软件,单击“设置”图标。
【云驻共创】华为云IoTDA服务下的设备管理流程实操

【云驻共创】华为云IoTDA服务下的设备管理流程实操
单击“User Credentials”填写“User Name”。
【云驻共创】华为云IoTDA服务下的设备管理流程实操

【云驻共创】华为云IoTDA服务下的设备管理流程实操

单击“SSL/TLS”配置鉴权参数,然后单击““Apply””。选择开启 “SSL/TLS”,勾选“ Self signed certificates”,配置相关证书内容。
填写“SSL/TLS”相关参数
【云驻共创】华为云IoTDA服务下的设备管理流程实操

CA File为对应的CA证书。下载并获取证书(加载pem格式的证书)。

Client Certificate File为设备的设备证书(deviceCert.pem)。

Client Key File为设备的私钥(deviceCert.key)。

3. 发起连接;

点击connect连接

【云驻共创】华为云IoTDA服务下的设备管理流程实操
【云驻共创】华为云IoTDA服务下的设备管理流程实操
显示在线代表连接成功,设备相关接口地址如下:
【云驻共创】华为云IoTDA服务下的设备管理流程实操

4. 测试设备连接

填写接口地址,此处以$oc/devices/{device_id}/sys/properties/report为例,如$oc/devices/61de8e3cde9933029be1f7fa_123456/sys/properties/report

请求示例json:
【云驻共创】华为云IoTDA服务下的设备管理流程实操

{
    "services": [{
            "service_id": "Connectivity",
            "properties": {
                "dailyActivityTime": 57
            },
            "event_time": "20151212T121212Z"
        },
        {
            "service_id": "Battery",
            "properties": {
                "batteryLevel": 80
            },
            "event_time": "20151212T121212Z"
        }
    ]
}

对应着模型定义的字段
【云驻共创】华为云IoTDA服务下的设备管理流程实操
单击“Publish”,可以在物联网平台上查看设备是否成功上报数据。
【云驻共创】华为云IoTDA服务下的设备管理流程实操

至此设备接入成功

5. 测试设备发放中消息发布和订阅

前面已经测试好了设备接入,下面开始测试设备发放的消息通信
流程图如下:
【云驻共创】华为云IoTDA服务下的设备管理流程实操
设备发放的证书接入和策略配置已经在第四节中已经讲到,下面直接开始接入,首先收集参数。

设备开发客户端id生成网址:https://iodps-file.obs.cn-north-4.myhuaweicloud.com/tools/iotprovisioning.html

【云驻共创】华为云IoTDA服务下的设备管理流程实操
下载证书
【云驻共创】华为云IoTDA服务下的设备管理流程实操

把生成的参数和证书配置到MQTT.fx中,后连接成功,如图

5.2 消息发布端

发布端Topic地址:$oc/devices/61de8e3cde9933029be1f7fa_0123456/sys/bootstrap/down

【云驻共创】华为云IoTDA服务下的设备管理流程实操

5.3 消息订阅端

订阅端Topic地址:$oc/devices/61de8e3cde9933029be1f7fa_0123456/sys/bootstrap/up

【云驻共创】华为云IoTDA服务下的设备管理流程实操

5.4 接收到引导消息

消息推送成功如下所示,在Subscribe的topic下会返回对应设备的设备接入服务的地址。

【云驻共创】华为云IoTDA服务下的设备管理流程实操

【云驻共创】华为云IoTDA服务下的设备管理流程实操

至此,您已完成了设备发放的流程。设备发放已成功将您的设备【接入IoTDA所需的必要信息】预置到了IoTDA实例中。

如您想要体验物联网平台的更多强大功能,您可通过如下步骤完成对IoTDA的后续操作:

  1. 取用引导消息中的设备接入地址;
  2. 单击Disconnect,断开与设备发放的连接;
  3. 将引导信息中的设备接入地址填入MQTT.fx的MQTT Broker Profile Settings中的Broker
    Address和Broker Port,建立与设备接入的连接;
  4. 完成与设备接入的上报数据等业务交互。

总结

本文介绍了华为云IoTDA诞生的背景,完整介绍了设备对接到华为云IoTDA平台运营的对接流程,和用华为云IoTDA的相关业务场景,还有实操了整个MQTT模拟设备对接平台的详细步骤。个人体验过后觉得华为云IoTDA还是很不错,中途也碰到很多问题和概念不清情况,可以把各种物联网设备整合到云平台,便于更好统一管理和故障处理。


本文整理自华为云社区【内容共创】活动第12期。

查看活动详情:https://bbs.huaweicloud.com/blogs/325315

相关任务详情:任务26.初识华为云IoTDA之设备发放

本文章来源于互联网,如有侵权,请联系删除!

相关推荐: 无扰动稳定控制装置

 无扰动稳定控制装置的概述       无扰动稳定控制装置主要适用于工业企业内部各电压等级变电所,实现生产负荷电源的安全、平稳及持续供电。大型工业企业内部都有数量众多的生产负荷,由不同电压等级的母线提供工作电源,且一般都存在备用电源。变电站通常有两种主接线方式…