文档
注册

配置文件说明

ISV用户可以根据不同的底板对配置文件(device_config.json)的进行相应修改,从而实现边缘管理系统可以识别该外部设备,并可以展示外部设备信息。同时支持对外部设备存储进行分区创建、删除、挂载与解挂等操作。

配置文件

配置文件路径为{project_dir}/src/app/add_extend_device”,代码目录结构如下所示。

├── device_config.json                 // 外设配置文件
└── validate_device_config.py          // 外设配置校验脚本
device_config.json配置模板(参照Atlas 500 A2 智能小站配置)如下,该配置文件的结构不支持调整,否则可能导致边缘管理系统启动失败。可以增删改单个设备的配置与启动设备的主分区号,多余的设备配置或匹配不到设备的配置会被忽略。具体参数见表参数说明。
{
    "primary_partitions": [
        1,
        2,
        3,
        4,
        5
    ],
    "usb_hub_id": "0bda:5411",
    "extend_info": {
        "u-disk": [   # 外设类别名
            {
            "platform": "a5080000.hiusbc1",
            "location": "usb2",
            "name": "u-disk2"
            }, # 单个设备配置
            {
            "platform": "a5100000.hiusbc2",
            "location": "usb1",
            "name": "u-disk1"
            },
            {
            "platform": "a5180000.hiusbc3",
            "location": "usb0",
            "name": "u-disk0"
            }
        ],
        "eMMC": [
            {
            "platform": "82000000.sdhci0",
            "location": "eMMC1",
            "name": "eMMC"
            },
            {
            "platform": "82010000.sdhci1",
            "location": "SDIO1",
            "name": "SD-card"
            }
        ],
        "DISK": [
            {
            "platform": "a6000000.sata",
            "device": "0:0:0:0",
            "location": "PCIE-0",
            "name": "disk m.2"
            },
            {
            "platform": "a6000000.sata",
            "device": "1:0:0:0",
            "location": "PCIE-1",
            "name": "disk0"
            },
            {
            "platform": "a6000000.sata",
            "device": "2:0:0:0",
            "location": "PCIE-2",
            "name": "disk1"
            }
        ],
        "ethnet": [
            {
            "platform": "a7100000.xge0",
            "location": "PORT1",
            "name": "eth0"
            },
            {
            "platform": "a7200000.xge1",
            "location": "PORT2",
            "name": "eth1"
            }
        ]
    }
}
表1 参数说明

参数名

参数说明

primary_partitions

含义:启动盘的系统主分区

类型:列表

取值:默认1~5;最多配置16个分区

说明:配置该参数后,通过查询磁盘分区集合信息、查询磁盘详细信息、删除磁盘分区等接口均查不到配置列表中的分区,可避免误删。

usb_hub_id

含义:USB HUB的厂商ID和产品ID

类型:字符串

取值:以0bda:5411为例,0bda是USB HUB的厂商ID,5411是USB HUB的产品ID,用于USB HUB异常检测

说明:可执行lsusb命令获取,若配置错误,可能导致不停触发USB HUB异常告警。

extend_info

含义:外设扩展与匹配信息

类型:字典

取值:u-disk、eMMC、DISK、ethnet

说明:字典的键表示设备类型,字典的值为设备的外设配置信息列表。

platform

含义:设备在/sys/devices/platform中的子目录名

类型:字符串

说明:边缘管理系统根据此参数的值查找系统中是否存在对应的设备。

device

含义:/sys/block/设备名/device链接指向的目录名

类型:字符串

说明:类似DISK类型的外部设备,当platform名字一样时则无法区分出不同的DISK。此时,需要将对应设备的/sys/block/设备名/device链接指向的目录名配置到device参数,以供边缘管理系统查找对应设备。

location

含义:页面展示的位置信息

类型:字符串

取值:建议按照物理位置配置location的取值,例如USB设备取值为usb1

说明:不同设备的该项配置不能重复,需要保证location取值的唯一性。

name

含义:FusionDirector展示用的设备名

类型:字符串

取值:支持大小写字母,数字、其他字符(-_.)和空格;建议按照物理类型和物理位置编号取值,例如USB设备取值为usb1

说明:若配置不符合取值要求,可能导致外部设备信息查询失败。

配置说明

在Linux系统中,/sys/devices/platform目录下存储了系统中所有的平台信息。设备的详细信息可通过该目录下的子目录进行查询。每个子目录的名称代表了一个平台设备的名称,以Atlas 500 A2 智能小站为例:

  • 子目录名称包含hiusb的表示USB设备
  • 子目录名称包含sdhci表示eMMC存储设备
  • 子目录名称为a6000000.sata表示sata盘
  • 子目录名称包含xge的表示网卡设备

以上除了sata类型的存储盘,均能通过platform下的子目录名称关联出对应的物理设备,例如a5080000.hiusbc1关联了位置为usb2的插口,如图图1所示,82010000.sdhci1关联了位置为SD卡插口。sata类型的需要根据盘的具体路径信息关联对应设备,即/sys/block/存储设备盘符名/device目录(软连接)指向的目录名,0:0:0:0表示M.2,1:0:0:0表示disk0,2:0:0:0表示disk1。

图1 USB插口位置

扩展存储告警

OM SDK支持扩展存储设备的部分告警,包含硬盘温度过高、硬盘寿命到期预警、硬盘不在位、硬盘访问阻塞以及USB Hub异常。如果开发者期望使用OM SDK提供的扩展存储告警检测功能,需要配置device_config.json文件,存储设备的取值为u-disk、eMMC、DISK;硬盘(DISK)相关的location和device字段取值范围为(location=PCIE-0,device=0:0:0:0)、(location=PCIE-1,device=1:0:0:0)(location=PCIE-2,device=2:0:0:0),分别表示M.2,DISK0和DISK1。如果开发者期望新增扩展存储的其他告警,可以参考自定义告警章节进行操作。

搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词