本文介绍基于树莓派(Raspberry Pi),搭建Link IoT Edge标准版(LE Standard)运行环境的方法。
Link IoT Edge标准版软件包支持在树莓派上运行,并在下面平台上进行了测试和验证。
硬件 | 操作系统 |
树莓派3B | Raspbian |
理论上Link IoT Edge也可以在其它版本的树莓派(2B、3B+、4B版本的树莓派)上运行,但为了最佳的稳定性和安全性,建议您选择在官方支持的系统版本上运行。
准备工作
准备符合如下表格中要求的树莓派设备。
项目 | 规格 |
树莓派 | 树莓派3B |
操作系统 | Raspbian Stretch with desktop |
内核 | ≥4.13 |
Micro SD卡 | ≥8GB |
外设 | HDMI线、键盘、鼠标、MicroUSB线 |
环境设置
在树莓派设备上需要设置Link IoT Edge运行所依赖的环境,如果您的树莓派设备上已经安装好Raspbian,请跳过步骤1至步骤3。
- 下载Raspbian镜像和SD镜像烧写工具。
- 操作系统镜像:Raspbian Stretch with desktop
- SD卡镜像烧写工具:Etcher说明 下载适合您计算机操作系统的SD卡镜像烧写工具。
- 使用Etcher将Raspbian镜像烧写到SD卡。将Micro SD卡插入读卡器,并接入到您的计算机。请参考树莓派操作系统镜像安装指南将Raspbian镜像烧写到Micro SD卡。
- 启动并配置Raspbian操作系统。将Micro SD卡插入您的树莓派设备上,连接好鼠标和键盘,通过HDMI线连接到监视器上,使用MicroUSB线进行供电,启动您的树莓派设备。
- 通过WiFi网络或者以太网将树莓派设备连接到Internet,配置方法请参考树莓派配置WiFi无线网络。
- 配置SSH服务。
- 执行
sudo systemctl start ssh
命令开启SSH服务。 - 执行
sudo systemctl status ssh
命令查看SSH服务。 - 执行
sudo systemctl enable ssh
设置开机自动启动SSH服务。
- 执行
在启动SSH服务之后,执行hostname -I
命令获取树莓派的IP地址,通过网络SSH远程登录的方式登录树莓派设备。 - 检查Link IoT Edge运行环境依赖。
- 在树莓派设备的本地终端窗口或者SSH终端窗口执行以下命令,下载环境检查工具并运行。
wget http://iotedge-web.oss-cn-shanghai.aliyuncs.com/public/testingTool/link-iot-edge_env-check.sh sudo chmod +x ./link-iot-edge_env-check.sh sudo ./link-iot-edge_env-check.sh
说明 link-iot-edge_env-check.sh脚本在Link IoT Edge支持的平台需要以root权限运行并需要以下Linux系统命令:printf、echo、cat、ls、expr、grep、test、uname、set、head、sort、cut、uniq、xargs、ifconfig。 - 按照运行环境检查工具的提示在您的机器上安装所有必需的依赖项,当检查工具成功运行完成后,返回如下图信息,表示Link IoT Edge能够在您的机器上成功运行。
- 在树莓派设备的本地终端窗口或者SSH终端窗口执行以下命令,下载环境检查工具并运行。
创建边缘实例和网关
- 登录边缘计算控制台。
- 在左侧导航栏单击边缘实例。
- 创建一个边缘实例。
- 单击新增实例,在弹出对话框中设置实例名称。说明 实例名称支持中文、英文字母大小写、数字、下划线(_)和短划线(-),长度不超过20个字符,1个汉字算2个字符。
- 根据所搭建的环境,选择对应的Link IoT Edge产品规格。详细介绍,请参见产品规格。物联网边缘计算支持自动分配网关到边缘实例,您可以无需设置其它新增实例相关参数,直接跳转到步骤4。物联网边缘计算自动为您的边缘实例创建名为LEGatewayAuto的网关产品,并在该产品下添加一个随机命名的网关设备。说明
- 物联网边缘计算自动为您创建LEGatewayAuto产品时,若您已有该名称的产品,则会在该名称后添加随机后缀,作为自动创建的网关产品。
- 物联网边缘计算已为您自动创建过一次LEGatewayAuto产品后,在您后续新建边缘实例并自动分配网关时,会在LEGatewayAuto产品下新增网关设备,分配到您新的边缘实例中。
- (可选)单击标签信息下的新增标签,可以设置实例标签。通过标签您可以更加有效地归类及识别实例。您也可以不设置标签。若设置实例标签,请填写标签key和标签value。
表 3. 参数说明 参数 描述 标签key 不可为空,仅支持英文字母大小写,长度不超过20个字符,同一个边缘实例不可以重复定义标签key。 标签value 不可为空,支持中文、英文字母大小写、数字、下划线(_)和短划线(-),长度不超过20个字符,1个中文汉字算2个字符。
- 单击新增实例,在弹出对话框中设置实例名称。
- (可选)若您想要手动创建网关产品和设备并分配到边缘实例,请按如下步骤操作。
- 在新增实例对话框,单击高级选项。
- 在网关产品下单击新建网关产品,为实例创建网关。物联网边缘计算中的网关承载边缘计算能力,每个实例必须分配一个网关设备,并且该网关设备同一时间只能被分配到一个边缘实例。
- 在创建产品对话框中,设置网关产品参数,然后单击完成。物联网边缘计算中的新建网关产品,继承了物联网平台中的产品功能,此处已自动为您简化了创建产品的步骤,以便您更快速地创建适合物联网边缘计算中使用的网关产品。
表 4. 参数说明 参数 说明 产品名称 为网关产品设置名称,用于后续的查询及识别网关产品。支持中文、英文字母大小写、数字和下划线(_),长度限制4~30个字符,一个中文汉字算2位。 所属品类 选择品类,为该产品定义物模型。
可选择的值为:
- 标准品类:选择任一物联网平台预定义的品类,快速完成产品的功能定义。选择产品模板后,您可以在该模板基础上,编辑、修改、新增功能。
- 自定义品类:需根据实际需要,定义产品功能。
若您需要的网关没有特殊功能定义,建议您选择自定义品类。
产品描述 可输入文字,用来描述产品信息。字数限制为100个字符。可以为空。 产品创建成功后,自动跳转回新增实例对话框,并且在网关产品参数下自动分配刚刚创建的网关产品。
- 在新增实例对话框,单击网关设备下的新建网关设备,为网关产品添加设备。物联网边缘计算中的新建网关设备功能,继承物联网平台的功能。
- 根据界面提示设置参数后,单击确认。
表 5. 参数说明 参数 描述 产品 系统已自动关联上一步创建的网关产品。 设备名称 为该网关设备命名。设备名称需保持产品内唯一。如不填写,系统将自动生成。 说明 设备名称长度为4~32个字符,可包含英文字母、数字和特殊字符,包括短划线(-)、下划线(_)、at(@)、英文句号(.)和英文冒号(:)。
- 实例参数设置完成后,单击确定,至此您已创建边缘实例和网关。
安装并启动Link IoT Edge
根据本文上方创建边缘实例和网关内容,创建完成边缘实例并分配网关后,您需要在网关上安装并启动Link IoT Edge。
- 在边缘实例页面,单击实例名称右侧的软件安装。
- 根据环境设置软件安装相关参数,然后单击生成安装命令。
表 1. 参数说明 参数 描述 边缘网关CPU架构您的设备系统对应的CPU架构。此处选择ARMv7 VFPv3。 产品规格在创建边缘实例时,已选择实例中使用的Link IoT Edge版本。此处不可操作。 边缘版本选择Link IoT Edge的发布版本。
操作系统选择您的设备对应的操作系统。此处选择Linux。 - 复制软件包下载命令备用。
- 登录您的树莓派系统机器后台。
- 任意目录下执行步骤3中已复制的命令。
该命令实现一键下载、配置并启动Link IoT Edge。命令执行完成后,会在当前目录中下载link-iot-edge-standard.sh脚本。说明 如果不是第一次安装启动Link IoT Edge,可使用已下载的link-iot-edge-standard.sh脚本,对Link IoT Edge进行重启、停止、获取状态、修改配置参数等操作,命令详情请见下图。
- 执行如下命令查看Link IoT Edge核心服务的运行状态。
- (可选)在实例详情页面,查看CPU使用率、内存使用率、存储使用率以及实例进程需要授权访问阿里云云监控(CloudMonitor)服务。
- 添加角色或分配已有的角色,并确保该角色拥有管理云监控(CloudMonitor)的权限。详细操作,请参见云资源访问。
- 选择监控信息页签,打开页面右侧的云监控状态开关,如下图所示。
云监控状态打开后,可在监控信息页签,查看网关的各类监控信息。
- (可选)Link IoT Edge支持将边缘实例授权给其他阿里云账号操作。在边缘实例页面,单击左上角授权,在弹出对话框中单击新增授权,根据界面提示设置参数。
表 6. 参数说明 参数 描述 授权用户UID 获取被授权用户的阿里云账号ID,填入此处。 授权实例 选择允许该阿里云账号ID的用户进行远程运维操作的边缘实例。
使用systemd管理Link IoT Edge
您可以使用systemd来管理Link IoT Edge服务的启动(start)、停止(stop)和查看状态(status)。
Link IoT Edge的systemd service如下所示。
[Unit]
Description=Link IoT Edge
[Service]
Type=forking
Restart=on-failure
ExecStart=/linkedge/gateway/build/script/iot_gateway_start.sh
ExecReload=/linkedge/gateway/build/script/iot_gateway_start.sh
ExecStop=/linkedge/gateway/build/script/iot_gateway_stop.sh
[Install]
WantedBy=multi-user.target
您可以运行如下命令,配置开机自启动功能。
wget http://iotedge-web.oss-cn-shanghai.aliyuncs.com/public/testingTool/LinkIoTEdge.service
sudo cp LinkIoTEdge.service /etc/systemd/system/LinkIoTEdge.service
sudo systemctl enable LinkIoTEdge.service
其它常用命令如下所示。
- 启动命令:
sudo systemctl start LinkIoTEdge.service
- 重启命令:
sudo systemctl restart LinkIoTEdge.service
- 停止命令:
sudo systemctl stop LinkIoTEdge.service
- 禁用开机自启动:
sudo systemctl disable LinkIoTEdge.service
下一步
环境搭建完成后,您可以根据设备接入章节内容,把您的设备接入到物联网边缘计算。同时也可以为边缘实例分配其他资源(如函数计算、消息路由等)管理您的设备。
接入设备或分配其他资源到边缘实例后,需要根据如下步骤部署边缘实例。
- 在实例详情页面,单击右上角部署后在弹出框中单击确定,部署边缘实例。
- 当部署状态显示为部署成功,表示部署实例完成。您可以单击查看日志,查看部署详情。您也可以通过单击实例详情页面右上角的查看部署日志,查看历史部署情况。
文档内容是否对您有帮助?