更新时间:2023-11-29 GMT+08:00
分享

注册边缘节点

功能介绍

该API用于注册一个边缘节点。接口调用成功后,您可以将响应消息体中node.package字段使用base64解码成tar.gz文件,并在控制台下载边缘核心软件,然后纳管边缘节点。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST /v2/{project_id}/edgemgr/nodes

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

消息体的类型(格式),默认取值为“application/json”

X-Auth-Token

String

用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

ief-instance-id

String

铂金版实例ID,专业版实例为空值

表3 请求Body参数

参数

是否必选

参数类型

描述

node

EdgeNode object

边缘节点参数

表4 EdgeNode

参数

是否必选

参数类型

描述

name

String

边缘节点名称,只允许中文字符、英文字母、数字、下划线、中划线,最大长度64 Name为必填字段,且本账号中唯一。

description

String

边缘节点描述,最大长度255,不允许^ ~ # $ % & * < > ( ) [ ] { } ' " \

enable_gpu

Boolean

边缘节点是否开启GPU,默认为false

log_configs

Array of LogConfigs objects

边缘节点日志配置,当用户未配置日志相关字段时,将默认打开日志上传到云端功能。

device_infos

Array of DeviceInfos objects

关联设备信息

enable_npu

Boolean

边缘节点是否开启NPU,true表示开启,false表示不开启,默认为false

npu_type

String

NPU类型,支持D310、D310B,支持填写:

  • D310:D310类型

  • D310B:D310B类型

  • 不填表示为D310类型。

attributes

Array of Attributes objects

边缘节点属性,关联属性个数最多为32个

enable_docker

Boolean

边缘节点启用Docker,默认为true

tags

Array of NodeResTag objects

边缘节点标签,标签个数最多为20个

mqtt_config

MqttConfigs object

MQTT配置。

表5 LogConfigs

参数

是否必选

参数类型

描述

id

String

数据库保存的主键,不需要关注此字段。

size

Integer

应用日志文件大小限制,单位MB,默认50,取值范围10-1000。

level

String

  • 当type为LTS时,应用级日志可配置为On或Off;系统级日志可配置为Off/Error/Warning/Info/Debug;

  • 当type为local时,无需配置level。

rotate_num

Integer

应用日志rotate个数,默认5,取值范围1-10。

rotate_period

String

应用日志rotate周期,可选项:

  • daily

  • monthly

  • weekly

  • yearly

type

String

  • LTS:将日志发送到AOM

  • local:本地日志

component

String

  • app:部署到边缘节点上的应用的日志

  • system:边缘节点上系统的日志

表6 DeviceInfos

参数

是否必选

参数类型

描述

relation

String

设备和节点关系的名称,只允许中文字符、英文字母、数字、下划线、中划线,最大长度64

comment

String

设备和节点关系的描述,最大长度64,不允许^ ~ # $ % & * < > ( ) [ ] { } ' " \

device_ids

Array of strings

设备ID列表

表7 Attributes

参数

是否必选

参数类型

描述

key

String

节点属性的key值,长度取值范围为1~128, 仅允许大小写英文字母、数字、下划线、中划线

value

String

节点属性的value值,长度取值范围为1~256, 仅允许大小写英文字母、数字、下划线、中划线

表8 NodeResTag

参数

是否必选

参数类型

描述

key

String

键。最大长度36个unicode字符。 不能为空,只能包含大小写字母,数字,中划线“-”,下划线“_”。

value

String

值。每个值最大长度43个unicode字符,删除时如果value有值按照key/value删除,如果value没值,则按照key删除。 不能为空,只能包含大小写字母,数字,中划线“-”,下划线“_”。

表9 MqttConfigs

参数

是否必选

参数类型

描述

enable_mqtt

Boolean

是否启用MQTT

mqtts

Array of Mqtt objects

MQTT配置 当enable_mqtt取值为false时,mqtts需要为空数组

表10 Mqtt

参数

是否必选

参数类型

描述

bind_addr

String

MQTT监听地址,根据type取值确定。

port

Integer

端口号。

type

String

类型。枚举值:

  • nic:网卡类型

  • ip:IP类型

响应参数

状态码: 201

表11 响应Body参数

参数

参数类型

描述

node

EdgeNodeResp object

边缘节点参数

表12 EdgeNodeResp

参数

参数类型

描述

id

String

边缘节点ID

name

String

边缘节点名称,只允许中文字符、英文字母、数字、下划线、中划线,最大长度64 Name为必填字段,且本账号中唯一。

description

String

边缘节点描述,最大长度255,不允许^ ~ # $ % & * < > ( ) [ ] { } ' " \

created_at

String

创建时间

updated_at

String

更新时间

project_id

String

项目ID

private_key

String

私钥

certificate

String

证书

ca

String

根证书

state

String

边缘节点状态

  • UNCONNECTED(未注册)

  • RUNNING(运行中)

  • FAIL(故障)

  • STOPPED(停用)

  • UPGRADING(升级中)

  • FREEZE(冻结)

package

String

将证书文件certificate/ca/private_key打成.tar.gz包后用base64编码的字符串。 使用时请使用base64解码成.tar.gz包。

master_addr

String

云端服务URL

cpu

Integer

边缘节点CPU核心数

memory

Integer

边缘节点内存大小,单位M

os_name

String

边缘节点操作系统名称

os_version

String

边缘节点操作系统版本

pause_docker_image

String

pause容器镜像URL

arch

String

边缘节点架构

os_type

String

边缘节点操作系统类型

deployment_num

Integer

部署在该边缘节点上的应用实例个数

enable_gpu

Boolean

边缘节点是否开启GPU,默认为false

log_configs

Array of LogConfigs objects

边缘节点日志配置,当用户未配置日志相关字段时,将默认打开日志上传到云端功能。

device_infos

Array of DeviceInfos objects

关联设备信息

edged_version

String

edged版本

gpu_num

Integer

gpu个数

host_ips

Array of strings

主机IP,默认返回eth0网卡的IP。

relation

String

与device绑定关系名称(通过device id查询node时有值)

comment

String

与device绑定关系描述(通过device id查询node时有值)

gpu_info

Array of GpuInfo objects

gpu型号和gpu memory大小

device_num

Integer

关联设备数量

enable_npu

Boolean

边缘节点是否开启NPU,true表示开启,false表示不开启,默认为false

npu_type

String

NPU类型,支持D310、D310B,支持填写:

  • D310:D310类型

  • D310B:D310B类型

  • 空值:D310类型。

nics

Array of Nics objects

节点网卡和对应IP地址信息

host_name

String

边缘节点主机名

ief_node_version

String

边缘节点版本

upgrade_flag

Boolean

是否能升级的标志

  • true:需要升级

  • false:不需要升级

product_id

String

产品ID(通过产品证书方式纳管)

group_ids

Array of strings

节点组ID(一个节点属于多个节点组)

upgrade_history

Array of UpgradeHistory objects

节点安装或升级记录

attributes

Array of Attributes objects

边缘节点属性,关联属性个数最多为32个

docker_enable

Boolean

节点是否开启Docker

mqtt_mode

String

mqtt集成模式

  • internal:edgecore内置mqtt

  • external:外置开源mqtt

mqtt_external

String

外置开源mqtt地址

mqtt_internal

String

edgecore内置的mqtt地址

node_type

String

节点类型,默认为空,非空时为小站节点

ntp_configs

NtpConfigs object

ntp配置

error_reason

String

节点故障原因

tags

Array of ResourceTag objects

边缘节点标签,标签个数最多为20个

npu_num

Integer

NPU数量

npu_info

Array of NpuInfo objects

NPU型号和NPU Memory大小

container_runtime_version

String

容器运行时版本

identifier

String

边缘节点使用token注册时的凭证

purchase_id

String

IEC/IES节点id

state_details

StateDetails object

IEC/IES节点状态详情

cert_remaining_valid_time

Integer

证书有效期持续时间

表13 LogConfigs

参数

参数类型

描述

id

String

数据库保存的主键,不需要关注此字段。

size

Integer

应用日志文件大小限制,单位MB,默认50,取值范围10-1000。

level

String

  • 当type为LTS时,应用级日志可配置为On或Off;系统级日志可配置为Off/Error/Warning/Info/Debug;

  • 当type为local时,无需配置level。

rotate_num

Integer

应用日志rotate个数,默认5,取值范围1-10。

rotate_period

String

应用日志rotate周期,可选项:

  • daily

  • monthly

  • weekly

  • yearly

type

String

  • LTS:将日志发送到AOM

  • local:本地日志

component

String

  • app:部署到边缘节点上的应用的日志

  • system:边缘节点上系统的日志

表14 DeviceInfos

参数

参数类型

描述

relation

String

设备和节点关系的名称,只允许中文字符、英文字母、数字、下划线、中划线,最大长度64

comment

String

设备和节点关系的描述,最大长度64,不允许^ ~ # $ % & * < > ( ) [ ] { } ' " \

device_ids

Array of strings

设备ID列表

表15 GpuInfo

参数

参数类型

描述

name

String

GPU名称

type

String

GPU类型

capacity

String

GPU memory大小,单位MB

表16 Nics

参数

参数类型

描述

interface

String

边缘节点网卡名称

ip

String

上述网卡对应的IPv4地址

表17 UpgradeHistory

参数

参数类型

描述

id

Integer

节点升级或安装历史版本id

from_version

String

节点升级前节点上edgecore版本号,形式如2.1.0,其中每一位都是整数

to_version

String

节点升级或安装后节点行edgecore版本号,形式如2.1.0,其中每一位都是整数

upgrade_time

Integer

节点升级或安装的十位时间戳

result

String

节点升级或安装状态,包含

  • install_success:边缘节点安装成功

  • upgrade_success:边缘节点升级成功

  • install_failed:边缘节点安装失败

  • upgrade_failed:边缘节点升级失败

  • upgrade_failed_rollback_success:边缘节点升级失败回滚成功

  • upgrade_failed_rollback_failed:边缘节点升级失败回滚失败

dur_time

Integer

节点升级所消耗的时间

表18 Attributes

参数

参数类型

描述

key

String

节点属性的key值,长度取值范围为1~128, 仅允许大小写英文字母、数字、下划线、中划线

value

String

节点属性的value值,长度取值范围为1~256, 仅允许大小写英文字母、数字、下划线、中划线

表19 NtpConfigs

参数

参数类型

描述

ntp_enabled

Boolean

ntp服务是否开启

ntp_servers

Array of strings

ntp server地址

表20 ResourceTag

参数

参数类型

描述

key

String

键。最大长度36个unicode字符。 不能为空,只能包含大小写字母,数字,中划线“-”,下划线“_”。

value

String

值。每个值最大长度43个unicode字符,删除时如果value有值按照key/value删除,如果value没值,则按照key删除。 不能为空,只能包含大小写字母,数字,中划线“-”,下划线“_”。

表21 NpuInfo

参数

参数类型

描述

name

String

NPU名称

type

String

NPU类型

capacity

String

NPU memory大小

driver_version

String

NPU驱动版本

表22 StateDetails

参数

参数类型

描述

register_stat

String

IEC/IES节点注册状态

purchase_stat

String

IEC/IES节点状态

purchase_error

String

IEC/IES节点错误信息

请求示例

注册边缘节点,不开启GPU,将部署到边缘节点上的应用,生成的日志发送到本地。

{
  "node" : {
    "name" : "node_test",
    "description" : "This is a test node",
    "enable_gpu" : false,
    "log_configs" : [ {
      "component" : "app",
      "type" : "local",
      "level" : "debug",
      "size" : 100,
      "rotate_num" : 5,
      "rotate_period" : "daily"
    } ]
  }
}

响应示例

状态码: 201

边缘节点详细信息

{
  "node" : {
    "id" : "86715318-a5a7-4507-a289-7238d53d5fed",
    "project_id" : "05041fffa40025702f6dc009cc6f8f33",
    "name" : "node_test",
    "description" : "This is a test node",
    "created_at" : "2020-08-11T01:23:55.527805447Z",
    "updated_at" : "",
    "state" : "UNCONNECTED",
    "master_addr" : "https://ief2-placement.cn-north-4.myhuaweicloud.com:443",
    "arch" : "",
    "enable_gpu" : false,
    "gpu_info" : [ ],
    "gpu_num" : 0,
    "memory" : 0,
    "os_version" : "",
    "os_name" : "",
    "device_infos" : [ ],
    "os_type" : "",
    "pause_docker_image" : "swr.cn-north-4.myhuaweicloud.com/huawei-ief-internal-app/pause",
    "host_name" : "",
    "cpu" : 0,
    "log_configs" : [ {
      "level" : "",
      "rotate_num" : 5,
      "component" : "app",
      "rotate_period" : "daily",
      "type" : "local",
      "id" : "9b795f5e-01b7-47e8-b1ae-6dc59b9c0005",
      "size" : 100
    }, {
      "level" : "false",
      "rotate_num" : 5,
      "component" : "app",
      "rotate_period" : "daily",
      "type" : "LTS",
      "id" : "e419ab7f-17ea-4757-b62e-311fc777af69",
      "size" : 50
    }, {
      "level" : "",
      "rotate_num" : 5,
      "component" : "system",
      "rotate_period" : "daily",
      "type" : "local",
      "id" : "56dabbb7-4fb1-46cc-85df-dc80a2bd24f8",
      "size" : 50
    }, {
      "level" : "false",
      "rotate_num" : 5,
      "component" : "system",
      "rotate_period" : "daily",
      "type" : "LTS",
      "id" : "0f6935c1-e59d-4b0d-a0db-1ba07b2ac8d1",
      "size" : 50
    } ],
    "host_ips" : [ ],
    "edged_version" : "",
    "deployment_num" : 0,
    "device_num" : 0,
    "upgrade_history" : [ ],
    "ief_node_version" : "",
    "comment" : "",
    "ca" : "",
    "relation" : "",
    "certificate" : "",
    "private_key" : "",
    "attributes" : [ ],
    "package" : "",
    "tags" : null,
    "product_id" : "",
    "mqtt_mode" : "internal",
    "mqtt_internal" : "tls://docker0:8883,tls://127.0.0.1:8883",
    "mqtt_external" : "",
    "enable_npu" : false,
    "docker_enable" : true,
    "npu_num" : 0,
    "npu_info" : [ ],
    "node_type" : "",
    "ntp_configs" : null,
    "nics" : [ ],
    "error_reason" : "",
    "container_runtime_version" : ""
  }
}

状态码

状态码

描述

201

边缘节点详细信息

错误码

请参见错误码

分享:

    相关文档

    相关产品