使用脚本部署 Hub SDK - 的托管集成 AWS IoT Device Management

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用脚本部署 Hub SDK

使用安装脚本手动部署托管集成 Hub SDK 组件,然后验证部署。本节介绍脚本执行步骤和验证过程。

准备好您的环境

在运行 SDK 安装脚本之前,请完成以下步骤:

  1. 在文件夹middleware内创建一个名为artifacts的文件夹。

  2. 将您的集线器中间件文件复制到该文件middleware夹。

  3. 在启动 SDK 之前运行初始化命令。

    重要

    每次集线器重新启动后重复初始化命令。

    #Get the current user _user=$(whoami) #Get the current group _grp=$(id -gn) #Display the user and group echo "Current User: $_user" echo "Current Group: $_grp" sudo mkdir -p /dev/aipc/ sudo chown -R $_user:$_grp /dev/aipc sudo mkdir -p /data/ace/kvstorage sudo chown -R $_user:$_grp /data/ace/kvstorage

运行 Hub SDK 脚本

导航到构件目录并运行start_iotmi_sdk.sh脚本。此脚本按正确的顺序启动 Hub SDK 组件。查看以下示例日志以验证是否成功启动:

注意

所有正在运行的组件的日志都可以在该artifacts/logs文件夹中找到。

hub@hub-293ea release_Oct_17$ ./start_iotmi_sdk.sh -------Stopping SDK running processes--- DeviceAgent: no process found ------Starting SDK------- -------Creating logs directory---------- Logs directory created. -------Verifying Middleware paths------- All middleware libraries exist -------Verifying Middleware pre reqs--- AIPC and KVstroage directories exist -------Starting HubOnboarding----------- -------Starting MQTT Proxy----------- -------Starting Event Manager----------- -------Starting Zigbee Service---------- -------Starting Zwave Service---------- /data/release_Oct_17/middleware/AceZwave/bin /data/release_Oct_17 /data/release_Oct_17 -------Starting CDMB-------------------- -------Starting Agent-------------------- -------Starting Provisioner-------------- -------Checking SDK status--------------- hub 6199 1.7 0.7 1004952 15568 pts/2 Sl+ 21:41 0:00 ./iotmi_mqtt_proxy -C /data/aws/iotmi/config/iotmi_config.json Process 'iotmi_mqtt_proxy' is running. hub 6225 0.0 0.1 301576 2056 pts/2 Sl+ 21:41 0:00 ./middleware/AceCommon/bin/ace_eventmgr Process 'ace_eventmgr' is running. hub 6234 104 0.2 238560 5036 pts/2 Sl+ 21:41 0:38 ./middleware/AceZigbee/bin/ace_zigbee_service Process 'ace_zigbee_service' is running. hub 6242 0.4 0.7 1569372 14236 pts/2 Sl+ 21:41 0:00 ./zwave_svc Process 'zwave_svc' is running. hub 6275 0.0 0.2 1212744 5380 pts/2 Sl+ 21:41 0:00 ./DeviceCdmb Process 'DeviceCdmb' is running. hub 6308 0.6 0.9 1076108 18204 pts/2 Sl+ 21:41 0:00 ./IoTManagedIntegrationsDeviceAgent Process 'DeviceAgent' is running. hub 6343 0.7 0.7 1388132 13812 pts/2 Sl+ 21:42 0:00 ./iotmi_lpw_provisioner Process 'iotmi_lpw_provisioner' is running. ------Successfully Started SDK----

验证集线器配置

检查中的iot_provisioning_state字段/data/aws/iotmi/config/iotmi_config.json是否设置为PROVISIONED

验证代理操作

检查日志文件中是否有代理启动消息和成功初始化。

tail -f -n 100 logs/agent_logs.txt

示例

[2024-09-06 02:31:54.413758906][Device_Agent][info] Successfully subscribed to topic: south/bF|gi_044F8821D0193608C8D5BF80858E20A56E3A8490/control [2024-09-06 02:31:54.513956059][Device_Agent][info] Successfully subscribed to topic: south/bF|gi_044F8821D0193608C8D5BF80858E20A56E3A8490/setup
注意

检查您的artifacts目录中是否存在该iotmi.db数据库。

验证 LPW 配置器的运行情况

检查日志文件中是否有LPW-Provisioner启动消息和成功初始化。

tail -f -n 100 logs/provisioner_logs.txt

下面的代码显示了一个示例。

[2024-09-06 02:33:22.068898877][LPWProvisionerCore][info] Successfully subscribed to topic: south/bF|gi_044F8821D0193608C8D5BF80858E20A56E3A8490/setup