资讯 社区 文档
技术能力
语音技术
文字识别
人脸与人体
图像技术
语言与知识
视频技术

智能边缘控制台-多节点版

EasyEdge 智能边缘控制台——多节点版

整体介绍

智能边缘控制台 - 多节点版(EasyEdge Intelligent EdgeConsole Center 以下简称IECC),是EasyEdge推出的边缘资源管理、服务应用与管理一站式本地化方案。

通过IECC,用户可以方便地在中心节点管理子节点:

  • 边缘硬件资源的管理与监控
  • EasyDL/BML/EasyEdge的SDK的 离线 / 在线激活,服务管理
  • 视频流解析,接入本地和远程摄像头,网页中实时预览
  • 自动监控和记录相关视频流推理事件

支持的系统+CPU架构包括:

  • Windows x86_64 (Windows 7 ~ Windows 10,暂不支持Windows 11)
  • Linux x86_64 / arm32 / arm64

支持各类常见的AI加速芯片,包括:

  • NVIDIA GPU / Jetson 系列
  • Baidu EdgeBoard FZ系列
  • 比特大陆 Bitmain SC / SE 系列
  • 华为 Atlas 系列
  • 寒武纪 MLU 系列
  • 其他EasyDL/EasyEdge/BML支持的AI芯片

连接说明

以下为 中心节点(控制中心),边缘节点/子节点,摄像头的连接示意:

4.png
其中:

  • 控制中心需要有固定IP,而边缘节点可以处于多级子网之下,只需IEC能够主动访问到控制中心节点即可
  • 模型服务均运行于各边缘节点之上
  • 摄像头均与边缘节点相连

Release Note

版本号 发布时间 更新说明
2.2.0 2022-10-27 边缘节点新增Android支持;新增onvif/gb28181支持;优化端云通信通道安全
2.0.0 2022-03-25 多节点版上线!
1.0.2 2021-12-22 更新视频预览推流库;新增若干AI芯片支持;支持多种芯片温度、功耗展示;多项性能优化
1.0.0 2021-09-16 智能边缘控制台 - 单节点版 IEC 第一版!

安装

从这里选择您需要的操作系统和CPU架构下载:

或者从纯离线服务管理页可下载智能边缘控制台

bj-55a73878f01d0670ff399c52b46eaef2619de45e (1).png

以Linux为例,解压缩后目录结构如下所示:

./EasyEdge-IECC-v{版本号}/
  |-- easyedge-iecc
  |-- easyedge-iecc-setup.sh
  |-- etc/
  |-- etc/easyedge-iec.yml
  |-- readme.txt

Linux 系统

通过系统服务形式安装(推荐)

以管理员运行bash easyedge-iecc-setup.sh install 即可。

0 EasyEdge-IEC-v2.0.0 > bash ./easyedge-iecc-setup.sh install
[setup]: sudo could not be found
[setup]: Start to install IECC...
[setup]: +  bash -c "cp easyedge-iec-linux-amd64 /usr/sbin/easyedge-iecc"
[setup]: +  bash -c "chmod +x /usr/sbin/easyedge-iecc"
[setup]: +  bash -c "cp easyedge-iec-* /var/lib/easyedge-iecc/fs/tmp"
[setup]: +  bash -c "cp etc/easyedge-iecc.service.yml /etc/easyedge-iecc/easyedge-iecc.yml"
[setup]: +  bash -c "cp etc/easyedge-iecc.service-conf.init.d /etc/init.d/easyedge-iecc"
[setup]: +  bash -c "chmod +x /etc/init.d/easyedge-iecc"
[setup]: Install IECC success!
[setup]: +  bash -c "service easyedge-iecc start"
Starting easyedge-iecc: success
[setup]: Start to check IECC status...
[setup]: +  bash -c "curl -s 127.0.0.1:8702 >/dev/null"
[setup]: IECC status: OK!
[easyedge-iecc]: default configure file: /etc/easyedge-iecc/easyedge-iecc.yml
[easyedge-iecc]: default log file: /var/log/easyedge-iecc/easyedge-iecc.log
[easyedge-iecc]: service usage: service easyedge-iecc { start | stop }
[setup]: Done!

出现sucess字样,表示安装成功。

  • 日志: /var/log/easyedge-iecc/easyedge-iecc.log
  • 系统配置:/etc/easyedge-iecc/easyedge-iecc.yml
  • 服务启动/停止:service easyedge-iecc { start | stop } (不同操作系统内可能不同,具体命令参考安装日志)
  • 配置服务自启动:可根据不同操作系统参考这里进行对应配置

可通过 bash easyedge-iecc-setup.sh uninstall 来卸载,以及bash easyedge-iecc-setup.sh upgrade来升级为当前安装包的版本

自定义安装(不推荐)

自定义安装仅限于 安装脚本无法识别您的操作系统的情况。

  • 拷贝 ./EasyEdge-IEC-v2.0.0/ 整个目录至自定义文件夹,如/opt/EasyEdge-IEC
  • 进入到 /opt/EasyEdge-IEC
  • 通过 nohup 等方法运行 ./easyedge-iec-linux-{您的系统架构} --com.role=hub amd64: intel、AMD的64位x86_84 CPU arm:树莓派等32位的ARM CPU * arm64:RK3399、飞腾等64位的ARM CPU
  • 日志: ./log/easyedge-iecc.log
  • 系统配置:./easyedge-iecc.yml

Windows 系统

打开命令行(非powershell)运行 easyedge-iecc-setup.bat install

注:如果遇到hang住的情况,可修改命令行配置
1.png
2.png

验证安装:

启动之后,打开浏览器,访问 http://{设备ip}:8602/easyedge 即可:
3.png

更新服务:

关闭服务,下载最新的安装包,重新执行安装流程即可。

注:1. 中心节点更新到新版之后,已连接的边缘节点会自动跟随中心节点,自我升级到同样的版本。

  1. 报错: Text file busy. 一般是因为服务没有停止。

使用流程

Step 1 注册并激活边缘节点

  • 在IECC导航栏中点击边缘节点,点击页面中的添加边缘节点按钮
    image.png
  • 注册边缘节点,填写基本信息
  • 激活边缘节点,根据边缘节点上是否安装智能边缘控制台-单节点版(IEC)分两种激活方式

    • 边缘节点未安装IEC:复制提供的命令,在边缘节点的终端中输入执行(命令会自动在当前目录,下载单节点版IEC并注册到控制中心)。终端命令执行完成后,在下方校验激活结果,如结果通过即可完成边缘节点的激活
      image.png
    • 边缘节点已安装IEC:记录页面中提供的IP地址和Token
      image.png
    • 边缘节点的IEC-系统设置中,打开多节点模式开关,将刚才记录的IP地址和Token填入其中,建立连接
      image.png
  • 成功激活后可在边缘节点页面中看到一行状态为在线的记录
    image.png

Step 2 上传并下发模型服务

  • 在模型服务管理-已添加的模型服务页面中点击添加模型服务
    image.png
  • 上传来自于EasyDL/BML的SDK,目前仅支持Windows/Linux的SDK
    image.png
  • 添加成功后可在已添加的模型服务页面查看添加的模型服务SDK
  • 在模型服务SDK上传成功以及边缘节点也添加激活过后,即可将模型服务下发至边缘。点击导航栏-下发模型服务,选择已添加的模型服务,选择下发的目标节点(支持多节点批量下发)进行模型服务下发
    image.png
  • 确定下发配置后,填入模型服务在边缘节点联网激活运行的序列号(支持批量导入)即可完成模型服务下发,序列号可在智能云控制台获取。离线激活的过程可参考IECC中的具体指引
    image.png
  • 完成上述流程后即可在模型服务管理-已下发的模型服务列表中查看记录,并进行下一步应用功能体验

    注:完成此步骤后即可在边缘节点进行二次集成已下发的模型服务,具体的集成方式可在文档-某图像任务类型-模型发布中查找对应的SDK开发文档进行集成开发

image.png

下发时可以通过高级配置设置服务运行的host和port。若不设置,默认host为0.0.0.0,port为系统随机分配的可用端口

Step 3 配置摄像头

Step 3 - 5 描述的是如何使用IECC可视化进行视频流式推理与应用,对此有需求的用户建议详细查看后续步骤内容。如仅需对下发的模型服务进行二次集成的用户无需进行后续操作,参考SDK对应的开发文档进行集成即可

  • 首先需要确定边缘节点已经接入物理摄像头,可通过USB插口接入,也可通过RTSP/RTMP流式协议接入。在摄像头设备页面点击添加摄像头按钮,填写对应的信息添加摄像头。支持设置摄像头的运行时间以及摄像头的抽帧频率
    image.png
  • 添加完成后可在摄像头设备页面查看记录
    image.png
  • 点击预览可查看摄像头预览画面
    image.png

Step 4 模型服务接入视频流预测

  • 模型服务可接入摄像头直接进行预测,并可同时设置告警规则,出发告警条件的结果将会以事件的形式保存至IECC中。
    点击模型服务管理页面中对应服务的接入摄像头操作
    image.png
  • 将已添加至IECC的摄像头与模型服务关联,并在下方设置对应的事件告警条件。告警规则通过标签阈值的方式来建立,例如设置“猕猴桃”标签阈值80%-100%,则大于80%置信度的“猕猴桃”识别结果将会保存至事件记录中
    image.png
  • 也可在摄像头设备页面-实时预览中查看实时的模型服务预测结果
    image.png

Step 5 视频事件告警

  • 可在事件中心-事件记录中查看满足时间告警条件的图片记录
    image.png

高级配置说明

系统设置 - 高级,可以修改控制中心的高级系统配置

# IECc系统配置
version: 3

com:
  # hub: 作为中心节点模式启动。  edge: 作为子节点启动
  role: hub
  # 硬件利用率刷新时间间隔: 过低的刷新间隔可能会消耗CPU资源。
  hardwareUsageRefreshSecond: 60
  # IECC保存SDK等资源的路径:可填写 "default", 也可以直接填写绝对路径
  appDataFolder: default
  # 是否开启DEBUG模式:开启之后,将会打印大量日志,便于追踪系统问题
  debug: no
  # 是否需要用户名/密码登陆,强烈建议打开!(默认用户名/密码为 admin/easyedge)
  loginEnabled: yes
  # 登录有效时间,单位秒
  sessionMaxAge: 3600

logging:
  # 是否把日志打印到控制台
  toStd: no
  # 是否把日志输出到文件。关闭后,将无法在页面中正确显示系统日志
  toFile: yes
  loggingFile: /var/log/easyedge-iecc/easyedge-iecc.log
  # 0:info;   -1:debug;   -2:verbose
  level: -1

webservice:
  # WEB服务的监听端口
  listenPort: 8602
  listenHost: 0.0.0.0

commu:
  mqServer:
    host: 0.0.0.0
    port: 8632
    HTTPPort: 8620
    maxPayload: 8388608
    pingIntervalSecond: 30
  # 普通消息等待respond的超时时间
  respondWaitTimeoutSecond: 2
  nodeRefreshIntervalSecond: 30


# ----------- 以下高级配置一般无需修改 ------------
#  !!!注意!!! 请确保理解配置项含义后再做修改
# 数据库相关配置
db:
  sqliteDbFile: /var/lib/easyedge-iecc/easyedge-iecc.db
  hubDbFile: /var/lib/easyedge-iecc/easyedge-iecc.hub.db
  eventDbFile: /var/lib/easyedge-iecc/easyedge-event.db
  fileServerDbFile: /var/lib/easyedge-iecc/easyedge-fileserver.hub.db
  nodeMonitorDbFile: /var/lib/easyedge-iecc/easyedge-nodemonitor.hub.db

# 推流相关配置
mediaserver:
  flvPort: 8613
  rtmpPort: 8614

# 文件服务器相关配置
fileserver:
  root: /var/lib/easyedge-iecc/fs

FAQ

启动服务后,进程中出现两个easyedge-iec进程

这是正常现象,IEC通过守护进程的方式来完成更新等操作。

启动服务时,显示端口被占用port already been used

通过修改 easyedge-iecc.yml文件的配置后,再重新启动服务。

安装服务时,报错permission denied

请以管理员身份运行安装程序。

添加SDK时,报错 SDK不支持该硬件。 SDK not supported by this device

一般是因为使用的SDK跟硬件不匹配,如 GPU的SDK,硬件没有GPU卡。 对于Jetson,也可能是Jetpack版本不支持,可以通过查看 本机Jetpack版本和SDK支持的Jetpack版本列表(cpp文件中的文件名来查看)来匹配。

上一篇
智能边缘控制台-单节点版
下一篇
常见问题