更新时间:2024-10-24 GMT+08:00
分享

部署边缘应用

功能介绍

部署边缘应用前需确保

  • Edge已创建且处于在线状态。相关方法请参见:“创建Edge”和“查询Edge”接口。

  • 待部署的应用已创建且应用版本状态已更新至发布。相关方法请参见:“创建应用”,“创建应用版本”和“更新应用版本状态”接口。

如部署边缘应用接口调用成功,稍后将会自动安装至边缘设备无需手动操作。自动安装完成后应用将处于运行中的状态。

关于应用在设备侧部署的耗时问题

  从边缘应用部署成功到处于运行中状态的耗时取决于边缘设备所处的网络状况以及应用镜像包的大小,可通过查询边缘应用接口获取边缘应用部署状态。

调试

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

URI

POST /v1/{project_id}/v2x-edges/{v2x_edge_id}/apps

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数说明:项目ID。获取方法请参见“API参考 > 附录 > 获取项目ID”。

取值范围:仅支持数字,a到f的小写字母组合,长度32。

v2x_edge_id

String

参数说明:Edge ID,用于唯一标识一个Edge,创建Edge后获得。方法参见 创建Edge

取值范围:长度36,只允许小写字母、数字、连接符(-)的组合。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

Instance-Id

String

参数说明:实例ID。DRIS物理实例的唯一标识,获取方法请参见“API参考 > 附录 > 获取Instance-Id”。

取值范围:仅支持数字,小写字母和连接符(-)的组合,长度36。

X-Auth-Token

String

参数说明:用户Token,Token认证鉴权时必选。通过调用IAM服务 “获取IAM用户Token”接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见“API参考 > API > 应用侧API参考 > 如何调用API > 认证鉴权 > Token认证”。

表3 请求Body参数

参数

是否必选

参数类型

描述

edge_app_id

String

参数说明:用户自定义应用唯一ID,部署边缘应用前应先创建应用,方法参见:“创建应用”接口。

取值范围:只允许字母、数字、下划线(_)、连接符(-)、美元符号($)的组合。

app_version

String

参数说明:应用版本,部署边缘应用版本前应先创建应用版本并发布,创建应用版本方法参见:“创建应用”接口,发布应用版本方法参见:“更新应用版本状态”接口。

取值范围:只允许字母、数字、连接符(-)、点(.)、下划线(_)的组合。

响应参数

状态码: 201

表4 响应Body参数

参数

参数类型

描述

v2x_edge_id

String

参数说明:Edge ID,用于唯一标识一个Edge。

edge_app_id

String

参数说明:用户自定义应用唯一ID。

app_version

String

参数说明:应用版本,比如1.0.0。

status

String

参数说明:应用部署状态。

取值范围

  • UNINSTALLED:待部署

  • INSTALLED:部署中

  • OFFLINE:离线

  • ONLINE:在线

  • UPGRADING:升级中

  • DELETING:删除中

  • RUNNING:运行中

请求示例

POST https://{endpoint}/v1/{project_id}/v2x-edges/{v2x_edge_id}/apps
Content-Type:application/json
X-Auth-Token:********
Instance-Id:********

{
  "edge_app_id" : "test-app",
  "app_version" : "1.0.0"
}

响应示例

状态码: 201

Created

{
  "v2x_edge_id" : "74297d76-6f99-4fe2-a435-1e27a524e4c8",
  "edge_app_id" : "test-app",
  "app_version" : "1.0.0",
  "status" : "RUNNING"
}

状态码

状态码

描述

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

405

Method Not Allowed

409

Conflict

429

Too Many Requests

500

Internal Server Error

错误码

请参见错误码

相关文档