本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
树莓派上的托管集成 Hub SDK 镜像
注意
Raspberry Pi 上的 AWS IoT Hub SDK 的实现是一个演示项目,仅用于学习和测试目的,不打算在生产环境中使用。在本演示中,为了便于开发,请设置以下配置:
AWS 凭证存储:仅出于演示目的,凭证和证书存储在可访问的位置,便于测试和开发。生产环境必须使用安全的存储解决方案 AWS Secrets Manager,例如或 Systems Manager Parameter Store。他们必须实现静态加密,并遵循 AWS IoT 安全准则。
容器权限:该演示以提升的权限运行,允许不受限制地访问主机资源并简化开发工作流程。在生产环境中,容器应以最低要求的权限运行。
网桥配置:该演示使用网络桥接配置,该配置可公开内部网络流量,便于调试和监控。在生产环境中,实施适当的网络隔离和分段,以防止未经授权访问内部网络流量。
USB 设备权限:启用不受限制的 USB 设备访问权限,便于轻松连接开发外围设备和测试设备。在生产环境中,实施严格的 USB 设备控制和验证,以防止设备欺骗攻击。
这些配置支持直接测试,不得在生产环境中使用。部署到生产环境时,请遵循安全最佳实践,以防止主机系统受损和未经授权访问凭证。
先决条件
在部署 Raspberry Pi 镜像之前,请完成以下要求:
-
下载并安装 Raspberry Pi 成像器。
-
获取 S D 卡
。 -
连接 Sonoff Zigbee
USB 加密狗。 -
AWS CLI 从《托管集成 AWS CLI 命令参考》中安装最新版本的。
在新的 SD 卡上刷一张 Raspberry Pi 镜像
按照以下步骤将托管集成映像刷到您的 SD 卡:
-
在桌面上启动 Raspberry Pi Imager。
-
将 SD 卡插入计算机的内置 SD 卡读卡器或外置 USB 读卡器。
-
选择选择设备 → 树莓派 5。
-
选择 “选择操作系统” → “使用自定义” → “查找 IotMI-HubSDK-RPi-Image-v1.0.0.img.gz 文件” → “打开”。
-
选择选择存储 → 选择您的 SD 读卡器。
-
验证您的配置是否与以下屏幕相匹配:
-
单击下一步。
-
配置操作系统自定义设置:
-
主机名:选择 r aspberrypi。
-
用户名和密码:
-
启用设置用户名和密码:
-
在用户名:中,输入
hub123456。 -
在 “密码:” 中,输入
sh123456。
-
-
无线局域网:
-
启用配置无线局域网。
-
输入路由器的 SSID 和密码。
设置示例:
SSID:
iotmi-tplink密码:
********(至少 8 个字符)
-
将 “国家:” 设置为
US。
-
-
设置区域设置:
-
将 “时区:” 设置为
America/Los Angeles。 -
将 “键盘布局:” 设置为
US。
-
-
SSH:
-
选择服务选项卡。
-
选中启用 SSH。
-
选择使用密码身份验证。
-
-
-
确认所有弹出窗口以进行操作系统自定义和数据删除。
-
等待写入过程完成。
-
使用以下屏幕验证成功完成:
-
单击继续。
-
取出 SD 卡并将其插入 Raspberry Pi。
在树莓派上运行 Hub SDK
在你配置的 Raspberry Pi 上启动 Hub SDK 服务:
-
将准备好的 SD 卡插入树莓派 5 设备。
-
将 Sonoff Zigbee USB 加密狗和 Silicon Labs SLUSB001A 加密狗连接到 Raspberry Pi。
-
开启 Raspberry Pi。
-
确保 Raspberry Pi 和你的计算机(通过 SSH 从中获得 SSH)在同一个网络上。
-
使用您在映像部署期间设置的凭据 SSH 到 Raspberry Pi。
ssh username@hostname -
导航到 hub SDK 目录:
cd /data/aws/iotmi -
完成 Hub 入门设置以添加身份验证和配置材料。
注意
您必须处于
YUL或DUB所在地区才能执行此步骤。 -
运行 Hub SDK:
cd /data/aws/iotmi bash start_hub_sdk.sh
如果成功启动 Hub SDK,系统会显示以下响应:
-------Stopping SDK running processes--- -------Starting Hub 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----------- -------Staring Log Daemon--- -------Starting Event Manager----------- -------Starting Zigbee Service---------- --Checking Zigbee network information-- -------Starting Zwave Service---------- /data/aws/iotmi/middleware/AceZwave/bin /data/aws/iotmi /data/aws/iotmi -------Starting CDMB-------------------- -------Starting Agent-------------------- -------Starting Provisioner-------------- -------Checking SDK status--------------- hub1234+ 1780 0.2 0.1 1093936 16368 pts/1 Sl+ 16:34 0:00 ./iotmi_mqtt_proxy -C /data/aws/iotmi/config/iotmi_config.json Process 'iotmi_mqtt_proxy' is running. hub1234+ 1884 0.0 0.0 236272 2624 pts/1 Sl+ 16:34 0:00 ./middleware/AceCommon/bin/ace_eventmgr Process 'ace_eventmgr' is running. hub1234+ 1892 9.1 0.1 393040 8352 pts/1 Sl+ 16:34 0:04 ./middleware/AceZigbee/bin/ace_zigbee_service Process 'ace_zigbee_service' is running. hub1234+ 1923 0.0 0.1 1570736 12736 pts/1 Sl+ 16:34 0:00 ./zwave_svc Process 'zwave_svc' is running. hub1234+ 1958 0.0 0.0 1067632 5776 pts/1 Sl+ 16:34 0:00 ./iotmi_cdmb Process 'iotmi_cdmb' is running. hub1234+ 2001 0.2 0.2 2017712 21264 pts/1 Sl+ 16:35 0:00 ./iotmi_device_agent Process 'iotmi_device_agent' is running. hub1234+ 2045 0.0 0.1 1457824 12624 pts/1 Sl+ 16:35 0:00 ./iotmi_lpw_provisioner Process 'iotmi_lpw_provisioner' is running. hub1234+ 1813 0.0 0.0 875152 6848 pts/1 Sl+ 16:34 0:00 ./iotmi_log_daemon Process 'iotmi_log_daemon' is running. ------Successfully Started Hub SDK----
后续步骤
成功启动 Hub SDK 后,请通过继续进行设备加载和管理。在用户指导下进行设备加载和操作的设置