检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
集成ModuleSDK进行协议转换 操作场景 代码解析 注册节点 设备建模 项目打包 制作镜像包 添加应用 部署应用 添加边缘设备 设备接入 父主题: 集成ModuleSDK(Java)
集成ModuleSDK进行进程应用的开发 操作场景 代码解析 注册节点 设备建模&发放 项目打包 制作插件包 添加应用 部署应用 父主题: 集成ModuleSDK(Java)
坏点 报错信息: 单击采集时数据大部分点位正常采集,但个别点位报错为Exception Code(结合各厂家自己定义的报错方式与协议Exception Code分析),优先考虑出现坏点导致采集失败。 排查位置: 参考告警接收到的报错信息,或驱动日志里的metadata信息,找到对
认证鉴权 调用接口有如下认证方式: Token认证:通过Token认证通用请求。 Token认证 Token是服务端生成的一串字符串,作为客户端进行请求的一个令牌。第一次登录后,服务器生成一个Token并将此Token返回给客户端,以后客户端只需带上这个Token前来请求数据即可
实验简介 本实验将指导您搭建一个基于IoT边缘服务的边缘节点,并在边缘节点上进行容器应用镜像插件部署,将用户自定义的容器镜像部署到边缘节点上,并实现节点上应用之间的数据流转。 通过本实验,您将能够: 了解并掌握IoT边缘服务的功能特点与使用方法。 掌握通过IoTEdge云服务将自定义容器镜像部署到边缘节点的方法。
边缘环境需要具备访问公网的能力,与OBS云服务互通。 确认自身内网是否具备访问公网能力,存在网络隔离,如涉及通信是否在同一个子网内,可参考虚拟私有云 VPC。 服务器下载工具版本是否符合要求以及对应端口是否开放,可参考表3。 部署边缘节点的服务器/网关与应用所在的镜像仓库网络互通。 IP:
制作镜像包或插件包 若制作镜像包以容器化方式部署应用,不支持在一个容器内运行多个集成ModuleSDK的软件进程或者重启集成ModuleSDK的软件进程,会导致鉴权失败等问题。 镜像包打包 上传需要打包的项目。将项目上传到网络能访问到的Linux机器上,放到目录下(比如 /home/MyCApp)。
IoTEdge.00000005 The request parameter is invalid. 请求参数不合法。 请排查请求参数是否符合华为云文档要求。 400 IoTEdge.00000006 The request format is invalid. 请求格式不合法。 请排查该请求的请求格式是否正确。
制作插件包 插件包制作。 插件包格式要求如下: 插件包仅支持.tar.gz 、.tar或者 .zip格式。 插件包结构如下: app.zip ├── ****.jar //可执行jar文件,必须 ├── start.sh //启动脚本 必须文件 当前不提供参数方式启动 └── stop
代码解析 开发自定义驱动,进行OT数采。 public class DcDriver implements PointsCallback, ModuleShadowNotificationCallback { /** * 数采应用客户端,与边缘Hub建立MQTT连接
开发插件 根据您的需要开发插件,提供了一个Demo工程来协助您更快地了解SDK。 下载Demo 下载地址:使用ModulSDK开发插件Demo。 导入ModuleSDK依赖包 选择项目名右键单击Open Project Structrure,选择Libraries后,单击中间框上
资源获取 证书文件 在设备和对接边缘节点场景中,需要在设备侧集成相应证书。 资源包名 描述 下载路径 ModuleSDK(java) 利用ModuleSDK开发插件在边侧进行协议转换、设备上传的数据处理、接入IT子系统。 ModuleSDK(Java版) ModuleSDK(C)
添加应用 添加边缘应用具体请参考添加应用。 提供两种不同的部署方式,请根据需要选择合适的部署方式。 容器化部署 部署方式选择”容器化部署”。 建议直接勾选“立即发布”,方便后面直接部署应用的时候,能够获取到最新版本。 软件和运行配置 选择上传到SWR服务的镜像,如未发现镜像,请检
添加应用 添加边缘应用具体请参考添加应用。 容器化部署 软件部署配置,部署方式选择“容器化部署”。 选择上传到SWR服务的镜像,如未发现镜像,请检查镜像是否为公开,设置镜像为公开方式:容器镜像服务SWR->我的镜像->单击镜像ID进入详情->右上方编辑。 软件和运行配置。运行配置
接口方法 表1 DcClient支持的接口方法 接口 说明 CreateFromEnv 创建客户端 ,执行初始化操作 Open 打开客户端,开始消息收发 Close 关闭客户端,清理资源 ForbidSendWhenBrokerOverLoaded 设置是否在离线缓存达到阈值时禁止发送数据
制作镜像包或插件包 若制作镜像包以容器化方式部署应用,不支持在一个容器内运行多个集成ModuleSDK的软件进程或者重启集成ModuleSDK的软件进程,会导致鉴权失败等问题。 镜像包打包 构建需要打包的项目 构建项目,此处示例,构建好的文件存放在目录 /home/ModuleSDK-Demo
Demo1 该Demo主要展示edge.h和edge_daemon.h里的回调函数和接口函数使用。 #include "edge.h" #include "edge_daemon.h" #include <stdio.h> #include <unistd.h> /* * 描述:针对模块的命令的回调函数
DcClient方法说明 ModuleSDK中,客户端类DcClient提供多个方法供客户开发应用时使用,使用时可参考每个函数的功能定义。 表1 DcClient方法说明 接口 说明 createFromEnv 根据环境变量创建客户端,相关配置参数从环境变量获取。 setPointsCallback
上传容器应用镜像到SWR 应用镜像需集成边缘SDK,根据需要可分别基于ItClient/OAClient/DriverClient进行开发。此处仅演示部署步骤,故可直接拉取一个现有的可公开拉取到的镜像。 登录边缘节点硬件(例如步骤2.1购买的ECS),执行拉取镜像的命令: //1
DriverClient方法说明 ModuleSDK中,客户端类DriverClient提供多个方法供客户开发应用时使用,使用时可参考每个函数的功能定义。 表1 DriverClient方法说明 接口 说明 createFromEnv 根据环境变量创建客户端,相关配置参数从环境变量获取。