零代码零硬件玩转华为云 IoT,基于设备联动实时监控设备
![零代码零硬件玩转华为云IoT,基于设备联动实时监控设备](https://static001.geekbang.org/infoq/57/572c468356c1a104b20ca14bb4fa5db0.jpeg)
本文分享自华为云社区《一键守护,实时洞察:华为云IoT设备联动,智能感知设备状态变化,精准触发告警通知【零代码零硬件玩转华为云IoT】》,作者:周周的奇妙编程。
前言
在前面我们已经体验过了设备接入、设备控制和数据长效存储三个方面的内容。(踏云而行:五步带你运用设备模拟器接入华为云IoT物联网平台,云上一键,室温随心:体验未来式恒温空调云端调控,尽享个性化舒适生活,云链未来,存储无限:华为云IoT平台携手OBS,构建设备数据实时流转与长期归档新范式)。
现在,我们即将步入最后一个实验环节,聚焦物联网应用中的一个重要功能——设备联动。实验将通过实时监测设备状态变化情况并发送通知,物联网平台能够实现对关键设备的智能化监控与即时响应,为设备管理者提供实时的设备状态信息,确保设备高效稳定运行。
在本实验中,我们将以物联网网关为例,演示如何利用华为云 IoT 设备接入服务提供的规则引擎功能,设定条件触发规则,当网关设备上下线状态发生变化时,平台自动触发告警并在设备恢复正常后撤销告警,同时通过电子邮件或短信将这些状态变化信息及时通知给指定的管理人员。
监测设备状态变化情况并发送通知
场景说明
在物联网场景下,部分设备具备重要的应用场景,比如物联网网关等,设备管理者需要感知这些设备的上下线情况。
设备接入服务提供规则引擎功能可以满足该诉求,您可以通过简单的操作实现当设备状态满足某个条件时,物联网平台触发指定动作进行通知。
假设现某企业的网关产品下有一批网关设备,单个网关设备下挂载了约 400 个子设备,用户需要实时关注这批网关设备的状态,确保子设备正常上报数据,同时由于网关设备和物联网平台通过 4G 网络建立连接,存在由于网络抖动导致频繁告警的问题,因此用户认为短暂的离线后上线属于正常场景,不希望感知这种场景。
通过以下示例可以实现监控该网关产品下所有网关设备在离线持续时间达到 5 分钟后通过物联网平台上报告警,在设备上线持续时间达到 1 分钟后恢复该告警,同时发送邮件或短信通知给指定的手机号码。
对接流程
配置设备接入服务:创建物联网产品和设备,创建联动规则,实现设备上下线满足特定条件后发送告警到应用运维管理服务。
配置消息通知服务:创建短信或邮件订阅。
配置应用运维管理服务:创建告警规则,处理由设备接入服务上报上来的告警,并通过消息通知服务发送短信或邮件通知。
配置设备接入服务
在设备接入服务中创建产品模型、注册设备并设置设备联动规则,实现当设备离线达到 5 分钟后上报告警到应用运维管理平台,设备上线 1 分钟后恢复该告警。
访问设备接入服务,单击“立即使用”进入设备接入控制台。
选择左侧导航栏的“产品”,单击页面左侧的“创建产品”,创建一个基于 MQTT 协议的产品,填写参数后,单击“确认”,完成产品的创建。
![](https://static001.geekbang.org/infoq/ef/efd2b7ad8209847c9dab0572828568a5.png)
单击此处(https://obs-pipeline.obs.cn-north-4.myhuaweicloud.com/sdkDeploy/Profile_01.zip),获取产品模型文件样例,解压后如图所示:
![](https://static001.geekbang.org/infoq/12/12f2a464e7ffcf286846cc3939da0b7d.png)
找到新增的产品,单击“产品”进入产品详情界面。
在产品详情“模型定义”页面,单击“上传模型文件”,在弹出的页面中加载产品模型文件,然后单击“确定”。
![](https://static001.geekbang.org/infoq/85/854be2a4de9ad77ada497fba353a3687.png)
上传成功后如下图所示:
![](https://static001.geekbang.org/infoq/5d/5d45f2ee7f611f763e9584a0e3391b3c.png)
选择左侧导航栏的“设备 > 设备注册”,单击右上角的“注册设备”,填写设备注册参数。填写完成后单击“确定”,请注意保存注册成功返回的“设备 ID”和“设备密钥”。这里我在前几篇文章中已经注册过了,在此就不过多赘述。
![](https://static001.geekbang.org/infoq/8b/8bd3b9bbdbbe037bd8540d0a1d214fc8.png)
选择左侧导航栏的“规则>设备联动”,单击右上角的“创建规则”按钮。(创建规则前需选择所属资源空间)
![](https://static001.geekbang.org/infoq/48/488df2315275558e32797515674bf3ac.png)
参考下表参数说明,填写规则内容,创建网关离线上报告警规则。以下参数取值仅为示例,您可参考用户指南创建自己的告警规则,填写完成后单击“创建规则”。
![](https://static001.geekbang.org/infoq/94/94ba64ff3dfcef9c1446796f34171ee5.png)
![](https://static001.geekbang.org/infoq/50/50482a8460a485392e7840d6aee3c84d.png)
同理,再创建恢复告警。
![](https://static001.geekbang.org/infoq/e4/e401c23c81f34b552d2020282816be5a.png)
【注意】
告警名称、级别和维度组合起来共同标识一条 AOM(应用运维管理)告警,恢复的告警和上报的告警需要保持同一告警属性,否则恢复告警失败。
设备状态监控有流控限制,监控设备量过多会触发流控导致设备离线告警无法上报的情况,详细请参考使用限制。
配置消息通知服务
在消息通知服务中创建主题并添加订阅,供应用运维管理服务调用以发送邮件或短信。
登录华为云官方网站,访问消息通知服务(https://www.huaweicloud.com/product/smn.html )。
![](https://static001.geekbang.org/infoq/65/654da4e5d243961a5181beef79c9fe5d.png)
进入“主题管理 > 主题”页面,单击“创建主题”。
![](https://static001.geekbang.org/infoq/c5/c5bd34228996a15f02418636e3d32924.png)
输入主题名称,如“Test_1”,单击“确定”。
![](https://static001.geekbang.org/infoq/af/af561d5c1f490daecb4d930d5898764a.png)
进入“主题管理 > 订阅”页面,单击“添加订阅”。
![](https://static001.geekbang.org/infoq/98/982f14b006e9a696030f6f51afeab090.png)
填写订阅信息。填写完成后单击“确定”。
![](https://static001.geekbang.org/infoq/38/38e373948727ec9efe6f9e4b2c0f11eb.png)
配置应用运维管理服务
在应用运维管理服务中创建告警规则和告警行动规则,当设备接入服务满足条件上报告警后,对上报告警进行处理并发送邮件或短信。
登录华为云官方网站,访问应用运维管理服务(https://www.huaweicloud.com/product/aom.html)。
![](https://static001.geekbang.org/infoq/b2/b20d0f27a6e35fade33fd8a0a8d1e72e.png)
进入“告警 > 告警行动规则”页面,单击“创建告警行动规则”。
![](https://static001.geekbang.org/infoq/e9/e9983de35502b5c50b03b6df01f3cc29.png)
输入告警行动规则名称,如“Test_1”,主题选择配置消息通知服务中创建的主题“Test_1”,单击“确定”。
![](https://static001.geekbang.org/infoq/89/8926eb7e7bd89178e3c3e741531101a9.png)
进入“告警 > 告警规则”页面,单击“添加告警”。
![](https://static001.geekbang.org/infoq/4a/4ae184a7c8f99a8d2405c1d54bdcaccf.png)
输入规则名称,如“Gateway_Status_Change_Alarm_Rule”,选择“事件告警规则 > 自定义事件”,告警来源选择“IoTDA”,监控对象选择自定义属性“event_name=网关状态变更”(“=”后面内容为告警名称),触发策略选择“立即触发”,告警方式选择直接告警,行动规则选择步骤 4 中创建的行动规则,单击右下角“立即创建”。
![](https://static001.geekbang.org/infoq/81/81e7c3f9a73d5af6c137847ca5cd01d4.png)
验证操作
设备离线持续时长达到 5 分钟后:
在左侧导航栏选择“监控运维 > 当前告警”,单击“前往 AOM”,跳转至应用运维管理服务,有一条名称为“网关状态变更”的重要告警。
设备上线持续时长达到 1 分钟后:
该设备的“网关状态变更”重要告警恢复,可在历史告警中查看。
![](https://static001.geekbang.org/infoq/d2/d23c972393406309473d09d0eaa38204.png)
结语
至此,我们已经完成了对物联网应用中设备联动功能的全面探索与实践。通过实时监测设备状态变化情况并发送通知,我们不仅实现了对关键设备如物联网网关的智能化监控与即时响应,而且确保了设备管理者能够实时掌握设备状态信息,有效提升设备运维效率与业务连续性。
通过此次系列实验,我们深入体验了华为云 IoT 设备联动功能的强大之处,它不仅简化了设备状态监控与告警管理的复杂性,还通过与消息通知服务和应用运维管理服务的紧密结合,为设备管理者提供了实时、精准的设备状态信息与告警通知服务。这一整套解决方案不仅适用于物联网网关这类关键设备的监控,还能广泛应用于各类物联网设备与场景,助力企业实现设备管理的智能化与自动化,有效提升业务运营效率与服务质量。在未来物联网应用的实践中,华为云 IoT 设备联动功能将成为企业实现设备高效管理与智能运维的重要工具,为企业在物联网时代赢得竞争优势提供强有力的支持。
版权声明: 本文为 InfoQ 作者【华为云开发者联盟】的原创文章。
原文链接:【http://xie.infoq.cn/article/9f8e07f6436f48df4aad255b3】。文章转载请联系作者。
评论