华为云用户手册

  • URI GET /v2/{project_id}/edgemgr/secrets 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID 表2 Query参数 参数 是否必选 参数类型 描述 name 否 String 密钥名称,模糊匹配 limit 否 String 每页显示的条目数量,取值范围1~1000,默认值为1000。 offset 否 String 查询的起始位置,取值范围为非负整数,默认为0 sort 否 String 排序方式,可根据名称、创建时间、更新时间排序 枚举值: name created_at updated_at 默认升序,如sort=name,降序:sort=name%3Adesc
  • 铂金版实例消息头说明 在访问铂金版实例的API时,需要在请求消息头中添加名为ief-instance-id的消息头,instanceid取值为铂金版实例ID,如下所示。 123 POST https://{{ednpoint}}/v2/{project_id}/edgemgr/nodesContent-Type: application/jsonief-instance-id: db953bf7-9f6c-4e90-9963-0a4453df72ba 铂金版服务实例ID可从控制台获取,如下图所示。 父主题: 使用前必读
  • 调用API获取项目ID 项目ID可以通过调用查询指定条件下的项目列表API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为IAM的终端节点,可以从地区和终端节点获取。接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID。 { "projects": [ { "domain_id": "65382450e8f64ac0870cd180d14e684b", "is_domain": false, "parent_id": "65382450e8f64ac0870cd180d14e684b", "name": "project_name", "description": "", "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects/a4a5d4098fb4474fa22cd05f897d6b99" }, "id": "a4a5d4098fb4474fa22cd05f897d6b99", "enabled": true } ], "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects" }}
  • 响应示例 状态码: 200 ok { "access_protocol" : "userdefine", "property_visitors" : { }, "twin" : { "devicestate" : { "expected" : { "value" : "running", "metadata" : { "timestamp" : 1523514289 } }, "actual" : { "value" : "stop", "metadata" : { "timestamp" : 1523514289 } }, "optional" : true, "metadata" : { "type" : "string" } } }}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 消息体的类型(格式),默认取值为“application/json” X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 ief-instance-id 否 String 铂金版实例ID,专业版实例为空值
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 property_visitors ValueInPropertyVisitors object 孪生属性配置,与access_protocol关联。 twin ValueInTwinResponse object 终端设备静态属性信息 access_protocol String 访问协议,有如下选项: userdefine:自定义协议 modbus:modbus协议 opc-ua:opc-ua协议 表4 ValueInPropertyVisitors 参数 参数类型 描述 register_type ValueInAttributes object 寄存器类型,value值字段可选为CoilsRegisters、HoldingRegisters、DiscreteInputsRegisters、InputRegisters access_mode ValueInAttributes object 访问模式,value值字段可选为r和r/w register_index ValueInAttributes object 寄存器偏移地址,value值字段取值范围0-65535 register_num ValueInAttributes object 寄存器个数 scale_index ValueInAttributes object 缩放因子 original_datatype ValueInAttributes object 原始数据类型 expected_datatype ValueInAttributes object 期望数据类型 is_registerswap ValueInAttributes object 是否交换寄存器顺序 is_swap ValueInAttributes object 是否交换高低字节 sample_interval ValueInAttributes object 数据采集间隔,取值范围为1-3600 data_min ValueInAttributes object 原始数据值区间最小值,与原始数据类型关联 data_max ValueInAttributes object 原始数据值区间最大值,与原始数据类型关联 node_id ValueInAttributes object 节点id browse_name ValueInAttributes object 节点名称 表5 ValueInAttributes 参数 参数类型 描述 value String value 最大长度512,value允许英文字母、数字、下划线、中划线、点、逗号、冒号、/、@、+、?、^、=、%、&、~、#、!、* optional Boolean 标识属性是否可选,默认为true metadata Metadata object 静态属性的元数据信息,默认为{"type": "string"} 表6 ValueInTwinResponse 参数 参数类型 描述 excepted ExceptedActual object 动态属性的期望信息 actual ExceptedActual object 动态属性的实际信息 metadata Metadata object 动态属性的元数据信息 optional Boolean 标识属性是否可选,默认为true,继承模板的属性默认为false 表7 ExceptedActual 参数 参数类型 描述 value String 动态属性的初始值,最大长度512,value允许英文字母、数字、下划线、中划线、点、逗号、冒号、/、@、+、?、^、=、%、&、~、#、!、* 表8 Metadata 参数 参数类型 描述 type String 属性类型标识,string|int|float|boolean(boolean类型为true或false),默认为string
  • 响应示例 状态码: 200 ok { "configmap" : { "id" : "12ns9eb6cc0d49a0941df2f31283mds8 ", "name" : "test-cm", "description" : "this is a test cm2", "configs" : { "key1" : "val1", "key3" : "val3" }, "project_id" : "d16e6eb6cc0d49a0941df2f31285757a", "created_at" : "2018-07-16T13:41:25.347335", "updated_at" : "2018-07-19T13:41:25.347335" }}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 消息体的类型(格式),默认取值为“application/json” X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 ief-instance-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,专业版实例为空值
  • 请求示例 创建批量处理任务,批量处理类型为“应用部署”,批量作业对象类型为“边缘节点”。 { "job_name" : "aaa", "job_type" : "deployment_deploy", "job_content" : { "target_type" : "node", "targets" : [ { "target_id" : "72eb5df1-295b-41f6-baed-d1a56728b0e0", "extension_info" : [ { "key" : "node_name", "value" : "test1" } ] }, { "target_id" : "b1c0e722-ee98-4ae3-9224-881224cb32c9", "extension_info" : [ { "key" : "node_name", "value" : "test-node" } ] } ], "task_data" : "{\"deployment\":{\"replicas\":1,\"template\":{\"configs\":{\"host_network\":false,\"restart_policy\":\"Always\",\"host_pid\":false},\"containers\":[{\"name\":\"container-06fefd36\",\"version\":\"latest\",\"image_url\":\"sample:latest\",\"envs\":[],\"volumes\":[],\"resources\":{\"limits\":{\"cpu\":\"0.25\",\"memory\":\"512\"},\"requests\":{\"cpu\":\"0.25\",\"memory\":\"512\"}},\"privileged\":false,\"ports\":[]}]}},\"source\":\"userdefined\",\"name_prex\":\"aaa\",\"tags\":[],\"description\":\"\"}" }, "tags" : [ ], "description" : ""}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 ief-instance-id 否 String 铂金版实例ID,专业版实例为空值 Content-Type 是 String 消息体的类型(格式),默认取值为“application/json” 表3 请求Body参数 参数 是否必选 参数类型 描述 job_name 是 String 批量作业名称,允许输入小写字母,数字,中划线,不能以中划线开头或结尾,最大长度为26位 job_type 是 String 批量作业类型,支持以下选项: node_upgrade: 节点升级 deployment_deploy:应用部署 deployment_upgrade:应用升级 job_content 否 JobContentInfo object 批量作业详细信息 description 否 String 批量作业描述 tags 否 Array of Attributes objects 批量作业标签 表4 JobContentInfo 参数 是否必选 参数类型 描述 target_type 否 String 批量作业对象类型,支持如下选项: node:边缘节点 node_group:边缘节点组 deployment:边缘应用 targets 否 Array of Target objects 批量作业对象详情 task_data 否 String 批量作业内容,仅在批量应用部署和批量应用升级时需要填写,填入的内容为:使用json结构体编写的创建应用部署接口请求体deployment参数,并将其转换为字符串 表5 Target 参数 是否必选 参数类型 描述 extension_info 否 Array of Extension objects 批量处理对象基本信息 target_id 是 String 批量处理对象ID 表6 Extension 参数 是否必选 参数类型 描述 key 否 String 属性名,可填:node_name value 否 String 属性值 表7 Attributes 参数 是否必选 参数类型 描述 key 否 String 节点属性的key值,长度取值范围为1~128, 仅允许大小写英文字母、数字、下划线、中划线 value 否 String 节点属性的value值,长度取值范围为1~256, 仅允许大小写英文字母、数字、下划线、中划线
  • 响应示例 状态码: 201 ok { "device_template" : { "name" : "CameraTemplate", "description" : "This is a camera template", "created_at" : "2018-07-16T04:01:21.212072", "project_id" : "d16e6eb6cc0d49a0941df2f31285757a", "id" : "82952098-ec24-4643-94e6-9989174fce05", "attributes" : { "cameraURL" : { "value" : "127.0.0.1", "metadata" : { "type" : "string" } } }, "twin" : { "runstate" : { "expected" : { "value" : "running" }, "metadata" : { "type" : "string" } } } }}
  • 请求示例 创建终端设备模板,访问协议为自定义协议。 { "device_template" : { "name" : "CameraTemplate", "access_protocol" : "userdefine", "description" : "This is a camera template", "attributes" : { "cameraURL" : { "value" : "127.0.0.1", "optional" : true, "metadata" : { "type" : "string" } } }, "twin" : { "runstate" : { "expected" : { "value" : "running" }, "optional" : false, "metadata" : { "type" : "string" } } }, "tags" : { "dev" : "dev1" } }}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 ief-instance-id 否 String 铂金版实例ID,专业版实例为空值 Content-Type 是 String 消息体的类型(格式),默认取值为“application/json” 表3 请求Body参数 参数 是否必选 参数类型 描述 name 否 String 证书名称。只允许中文字符、英文字母、数字、下划线、中划线,最大长度64 type 否 String 证书类型,支持填写: - system:创建节点时会默认创建一套系统证书 - application:应用证书 - device:设备证书 description 否 String 证书描述。最大长度为255个字符
  • 响应参数 状态码: 201 表4 响应Body参数 参数 参数类型 描述 id String 证书ID name String 证书名称 description String 证书描述 created_at String 创建时间 updated_at String 更新时间 group_id String 证书绑定的边缘节点组ID is_deleted Boolean 证书是否处于删除中 project_id String 证书所属账号的项目ID type String 证书类型,包含: - system:创建节点时会默认创建一套系统证书 - application:应用证书 - device:设备证书 serial_num String 证书序列号 ca String 根证书 certificate String 证书 private_key String 私钥 package String 将证书文件certificate/ca/private_key打成.tar.gz包后用base64编码的字符串。 使用时请使用base64解码成.tar.gz包。 cert_remaining_valid_time Integer 证书有效期持续时间
  • 响应示例 状态码: 201 创建成功 { "created_at" : "2022-11-01 13:42:01.184150966 +0000 UTC", "description" : "", "id" : "842cda53-4cb4-4a47-9f5e-1c50fdcfcdc4", "name" : "aa", "updated_at" : "2022-11-01 13:42:01.184150966 +0000 UTC", "group_id" : "e4f9c0d6-e1d7-41d5-a108-f38aa8372ffd", "is_deleted" : false, "package" : "xxx", "project_id" : "pid", "serial_num" : "", "type" : "application", "ca" : "xxx", "certificate" : "xxx", "private_key" : "xxx", "cert_remaining_valid_time" : 3652}
  • 响应示例 状态码: 201 创建成功 { "product" : { "id" : "52b7e862-7b86-4b4d-b805-f580c4a25b0b", "name" : "a", "description" : "", "attributes" : { }, "project_id" : "ed202955e111444e8ced21a1bd75fc59", "created_at" : 1667214079, "private_key" : "", "certificate" : "", "ca" : "", "package" : "" }}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 ief-instance-id 否 String 铂金版实例ID,专业版实例为空值 Content-Type 是 String 消息体的类型(格式),默认取值为“application/json”
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 消息体的类型(格式),默认取值为“application/json” X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 ief-instance-id 否 String 铂金版实例ID,专业版实例为空值
  • 请求参数 表3 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 消息体的类型(格式),默认取值为“application/json” X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 ief-instance-id 否 String 铂金版实例ID,专业版实例为空值
  • URI DELETE /v3/{project_id}/edgemgr/deployments/{deployment_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID deployment_id 是 String 应用部署ID 表2 Query参数 参数 是否必选 参数类型 描述 force_delete 否 String 是否强制删除。默认为false。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 ief-instance-id 否 String 铂金版实例ID,专业版实例为空值 Content-Type 是 String 消息体的类型(格式),默认取值为“application/json”
  • 请求参数 表3 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 消息体的类型(格式),默认取值为“application/json” X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 ief-instance-id 否 String 铂金版实例ID,专业版实例为空值
  • URI GET /v3/{project_id}/edgemgr/pods 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID 表2 Query参数 参数 是否必选 参数类型 描述 node_id 否 String 指定节点查询应用实例,可选, 与group_id、deployment_id、deployment_ids四选一 group_id 否 String 指定节点组查询应用实例,可选,与node_id、deployment_id、deployment_ids四选一 deployment_id 否 String 指定应用部署ID查询应用实例,可选, 与node_id、group_id、deployment_ids四选一 deployment_ids 否 String 指定应用部署ID列表查询应用实例,多个ID使用逗号分隔,可选, 与node_id、group_id、deployment_id四选一 plugin_instance_name 否 String 指定插件实例名称查询对应的应用实例列表,可选 limit 否 Integer 查询返回记录的数量限制 offset 否 Integer 偏移量,表示查询该偏移量后面的记录
  • 响应示例 状态码: 200 ok { "count" : 1, "pods" : [ { "id" : "3e64d98a-37c5-43a6-9bfe-052b9083e362", "name" : "app-test-69f9dc4b67-wfwn6", "configs" : { "host_network" : true, "host_pid" : true, "migration" : true, "restart_policy" : "Always", "toleration_seconds" : 300 }, "containers" : [ { "args" : [ "-c", "sleep 1000" ], "command" : [ "/bin/bash" ], "name" : "container-0", "envs" : [ { "name" : "CERT_PATH", "value" : "/opt/cert" } ], "image_url" : "swr.cn-north-1.myhuaweicloud.com/ief-test/nginx:0705", "npu_type" : "", "liveness_probe" : { "http_get" : { "path" : "/", "port" : 80, "scheme" : "http" }, "initial_delay_seconds" : 10, "timeout_seconds" : 10 }, "readiness_probe" : { "http_get" : { "path" : "/", "port" : 80, "scheme" : "http" }, "initial_delay_seconds" : 10, "timeout_seconds" : 10 }, "ports" : [ { "container_port" : 80, "host_port" : 80 } ], "resources" : { "limits" : { "cpu" : 0.25, "memory" : 500, "gpu" : 500 }, "requests" : { "cpu" : 0.25, "memory" : 500, "gpu" : 500 } }, "volumes" : [ { "name" : "log-volume", "type" : "hostPath", "read_only" : false, "source" : "/var/IEF", "destination" : "/var/IEF" } ], "restarts" : 0, "message" : "", "reason" : "" } ], "node_id" : "bcd83056c918480f8f190844bd425b23", "project_id" : "bcd83056c918480f8f190844bd425b23", "reason" : "", "message" : "", "created_at" : "2019-10-10T02:24:02.325Z", "state" : "RUNNING" } ]} 状态码: 400 error { "error_code" : "IEF.100001", "error_msg" : "PROJECT_ID not found"} 状态码: 500 error { "error_code" : "IEF.100158", "error_msg" : "Fail to extract gpu infomation"}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 消息体的类型(格式),默认取值为“application/json” X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 ief-instance-id 否 String 铂金版实例ID,专业版实例为空值
  • 响应示例 状态码: 200 ok { "id" : "3e64d98a-37c5-43a6-9bfe-052b9083e362", "name" : "app-test", "replicas" : 1, "ready_replicas" : 1, "description" : "this is a test app", "group_id" : "", "node_ids" : [ "29d20c18-c20c-4a45-a087-42c766fc5d97" ], "tags" : [ { "key" : "app", "value" : "test" } ], "api_version" : "v3", "source" : "userdefine", "project_id" : "bcd83056c918480f8f190844bd425b23", "created_at" : "2019-10-10T02:23:12.272Z", "updated_at" : "2019-10-10T02:23:12.272Z", "template" : { "configs" : { "host_network" : true, "host_pid" : true, "migration" : true, "restart_policy" : "Always", "toleration_seconds" : 300 }, "init_containers" : [ ], "containers" : [ { "name" : "container-0", "image_url" : "swr.cn-north-1.myhuaweicloud.com/ief-test/nginx:0705", "npu_type" : "", "args" : [ "-c", "sleep 1000" ], "command" : [ "/bin/bash" ], "resources" : { "limits" : { "cpu" : "0.25", "memory" : "500", "gpu" : "500" }, "requests" : { "cpu" : "0.25", "memory" : "500", "gpu" : "500" } }, "envs" : [ { "name" : "CERT_PATH", "value" : "/opt/cert" } ], "ports" : [ { "container_port" : 80, "host_port" : 80 } ], "privileged" : true, "readiness_probe" : { "http_get" : { "path" : "/", "port" : 80, "scheme" : "http" }, "initial_delay_seconds" : 10, "timeout_seconds" : 10 }, "liveness_probe" : { "http_get" : { "path" : "/", "port" : 80, "scheme" : "http" }, "initial_delay_seconds" : 10, "timeout_seconds" : 10 }, "version" : "1.0", "volumes" : [ { "name" : "log-volume", "type" : "hostPath", "read_only" : false, "source" : "/var/IEF", "destination" : "/var/IEF" } ] } ] }} 状态码: 400 响应Body参数 { "error_code" : "IEF.100001", "error_msg" : "PROJECT_ID not found"} 状态码: 500 响应Body参数 { "error_code" : "IEF.100158", "error_msg" : "Fail to extract gpu infomation"}
  • 响应示例 状态码: 200 ok { "count" : 5, "tags" : [ { "values" : [ "hwg" ], "key" : "deployer" }, { "values" : [ "batchjob" ], "key" : "batchjob" }, { "values" : [ "2" ], "key" : "2" }, { "values" : [ "bbb" ], "key" : "aaa" }, { "values" : [ "autotest" ], "key" : "autotest" } ]}
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 tags Array of ResourceTag objects 标签属性 count Integer 标签数量 表4 ResourceTag 参数 参数类型 描述 key String 键。最大长度36个unicode字符。 不能为空,只能包含大小写字母,数字,中划线“-”,下划线“_”。 value String 值。每个值最大长度43个unicode字符,删除时如果value有值按照key/value删除,如果value没值,则按照key删除。 不能为空,只能包含大小写字母,数字,中划线“-”,下划线“_”。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 Content-Type 是 String 消息体的类型(格式),默认取值为“application/json” X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 ief-instance-id 否 String 铂金版实例ID,专业版实例为空值
共100000条