查询部署列表
功能介绍
查询部署列表
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
GET /v3/{project_id}/edgemgr/deployments
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
项目ID |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
limit |
否 |
Long |
每页显示的条目数量,最大100,默认值10 |
offset |
否 |
Long |
查询的起始位置,默认值0 |
sort |
否 |
String |
查询结果排序,如按照创建时间降序排序为created_at:desc,升序排序为created_at:asc |
name |
否 |
String |
deployment名称(支持模糊匹配) |
node_id |
否 |
String |
节点ID,查询部署在该节点下的应用列表,和group_id不可同时请求 |
group_id |
否 |
String |
节点组ID,查询部署在该节点组的应用列表,和node_id不可同时请求 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
Content-Type |
是 |
String |
消息体的类型(格式),默认取值为“application/json” |
X-Auth-Token |
是 |
String |
用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
ief-instance-id |
否 |
String |
铂金版实例ID,专业版实例为空值 |
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
count |
Long |
应用部署总数 |
deployments |
Array of DeploymentResp objects |
应用部署列表 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
应用部署uuid |
name |
String |
应用部署名称,只允许英文小写字母、数字、中划线,最大长度32, 英文小写字母或数字开头和结尾 |
replicas |
Integer |
应用部署总副本数 |
ready_replicas |
Integer |
应用部署正常副本数 |
description |
String |
应用部署描述,最大长度255,不允许^ ~ # $ % & * < > ( ) [ ] { } ' " \ |
group_id |
String |
应用部署到指定节点组,与node_ids二选一 |
node_ids |
Array of strings |
应用部署到指定节点,当前只支持一个边缘节点 |
tags |
Array of Attributes objects |
节点属性 |
api_version |
String |
应用部署版本 |
source |
String |
应用部署来源:边缘市场(iem)或自定义(userdefined) |
project_id |
String |
项目ID |
created_at |
String |
应用部署创建时间 |
updated_at |
String |
应用部署更新时间 |
template |
PodRequest object |
应用部署模板 |
state |
String |
应用状态,仅包括冻结(FREEZE)、删除中(PENDING_DELETE)、删除失败(DELETE_FAILED),保留字段 |
source_id |
String |
预留字段 |
annotations |
Annotations object |
应用扩展功能配置选项 |
参数 |
参数类型 |
描述 |
---|---|---|
key |
String |
节点属性的key值,长度取值范围为1~128, 仅允许大小写英文字母、数字、下划线、中划线 |
value |
String |
节点属性的value值,长度取值范围为1~256, 仅允许大小写英文字母、数字、下划线、中划线 |
参数 |
参数类型 |
描述 |
---|---|---|
configs |
PodConfigs object |
应用实例配置 |
affinity |
Affinity object |
应用实例亲和性规则,仅铂金版支持 |
init_containers |
Array of ContainerDef objects |
应用部署init业务容器 |
containers |
Array of ContainerDef objects |
应用部署业务容器 |
参数 |
参数类型 |
描述 |
---|---|---|
host_network |
Boolean |
应用实例是否启用主机网络,不启用则使用端口映射,默认值false |
host_pid |
Boolean |
应用实例是否与主机共PID命名空间,默认值false |
migration |
Boolean |
应用实例故障是否迁移,指定节点组部署时必选,默认值false |
restart_policy |
String |
应用实例重启策略,可选值Always、OnFailure、Never |
toleration_seconds |
Integer |
应用实例故障容忍时间,容忍时间到达后迁移应用实例,只在指定节点组部署时生效 |
dns_policy |
String |
应用实例DNS策略,可选值Default、ClusterFirst、ClusterFirstWithHostNet,默认为Default。应用实例启用主机网络时只能选填Default、ClusterFirstWithHostNet,不启用主机网络时只能选填Default、ClusterFirst |
参数 |
参数类型 |
描述 |
---|---|---|
nodeAffinity |
nodeAffinity object |
节点亲和规则 |
podAffinity |
podAffinity object |
Pod亲和规则 |
podAntiAffinity |
podAntiAffinity object |
Pod反亲和规则 |
参数 |
参数类型 |
描述 |
---|---|---|
preferredDuringSchedulingIgnoredDuringExecution |
Array of PreferredSchedulingTerm objects |
优先使用定义的规则调度,且不会影响已经在节点上运行的Pod。即优先选择调度到满足规则的节点,但也可能会调度到不满足规则的节点。 |
requiredDuringSchedulingIgnoredDuringExecution |
RequiredDuringScheduling object |
强制使用定义的规则调度,且不会影响已经在节点上运行的Pod。即强制选择调度到满足规则的节点,不会调度到不满足规则的节点。 |
参数 |
参数类型 |
描述 |
---|---|---|
preference |
preference object |
与相应权重关联的节点选择器项。 |
weight |
Integer |
权重,范围为1-100 |
参数 |
参数类型 |
描述 |
---|---|---|
preferredDuringSchedulingIgnoredDuringExecution |
Array of WeightPodAffinityTerms objects |
优先使用定义的规则调度,且不会影响已经在节点上运行的Pod。即优先选择调度到满足规则的节点,但也可能会调度到不满足规则的节点。 |
requiredDuringSchedulingIgnoredDuringExecution |
Array of PodAffinityTerm objects |
强制使用定义的规则调度,且不会影响已经在节点上运行的Pod。即强制选择调度到满足规则的节点,不会调度到不满足规则的节点。 |
参数 |
参数类型 |
描述 |
---|---|---|
preferredDuringSchedulingIgnoredDuringExecution |
Array of WeightPodAffinityTerms objects |
优先使用定义的规则调度,且不会影响已经在节点上运行的Pod。即优先选择调度到满足规则的节点,但也可能会调度到不满足规则的节点。 |
requiredDuringSchedulingIgnoredDuringExecution |
Array of PodAffinityTerm objects |
强制使用定义的规则调度,且不会影响已经在节点上运行的Pod。即强制选择调度到满足规则的节点,不会调度到不满足规则的节点。 |
参数 |
参数类型 |
描述 |
---|---|---|
podAffinityTerm |
podAffinityTerm object |
Pod亲和规则 |
weight |
Integer |
权重,范围为1-100 |
参数 |
参数类型 |
描述 |
---|---|---|
labelSelector |
LabelSelector object |
标签选择器 |
namespaces |
Array of strings |
命名空间 |
topologyKey |
String |
拓扑标签。先圈定topologyKey指定的范围,然后再选择labelSelector定义的内容,即亲和调度只会在有topologyKey指定的标签节点上调度。 |
参数 |
参数类型 |
描述 |
---|---|---|
matchExpressions |
Array of MatchExpression objects |
匹配规则表达式 |
matchLabels |
Map<String,String> |
匹配的标签,格式为key:value键值对。 单个键值对相当于matchExpressions的一个元素,key字段为key,操作符为In,values数组中只有value。 |
参数 |
参数类型 |
描述 |
---|---|---|
labelSelector |
labelSelector object |
标签选择器 |
namespaces |
Array of strings |
命名空间 |
topologyKey |
String |
拓扑标签。先圈定topologyKey指定的范围,然后再选择labelSelector定义的内容,即亲和调度只会在有topologyKey指定的标签节点上调度。 |
参数 |
参数类型 |
描述 |
---|---|---|
matchExpressions |
Array of MatchExpression objects |
匹配规则表达式 |
matchLabels |
Map<String,String> |
匹配的标签,格式为key:value键值对。 单个键值对相当于matchExpressions的一个元素,key字段为key,操作符为In,values数组中只有value。 |
参数 |
参数类型 |
描述 |
---|---|---|
key |
String |
规则的标签 |
operator |
String |
操作符,取值如下:
|
values |
Array of strings |
一组标签值。
|
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
容器名称,只允许英文小写字母、数字、中划线,最大长度32, 英文小写字母或数字开头和结尾 |
image_url |
String |
容器镜像URL |
args |
Array of strings |
容器启动参数,字符总长度最大为65536 |
command |
Array of strings |
容器启动命令,字符总长度最大为65536。 command支持使用数组定义多条命令,但在IEF控制台界面只会显示第一条命令。 |
resources |
DeploymentResources object |
创建容器时使用的资源 |
envs |
Array of Env objects |
环境变量 |
ports |
Array of HostContainerPortMapping objects |
容器端口映射值 |
privileged |
Boolean |
是否启用特权容器,默认值false |
run_as_user |
Integer |
容器运行用户ID,输入范围为0~65534的整数 |
readiness_probe |
Probe object |
探针配置 |
liveness_probe |
Probe object |
探针配置 |
version |
String |
容器镜像版本 |
volumes |
Array of Volumes objects |
卷配置 |
npu_type |
String |
NPU类型,支持D310、D310B,支持填写:
|
参数 |
参数类型 |
描述 |
---|---|---|
limits |
Map<String,String> |
|
requests |
Map<String,String> |
|
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
环境变量的key,由大小写字母或下划线开头,由数字、大小写字母、下划线组成,最大长度2048个字符,不允许重复 |
value |
String |
环境变量的value,最大长度20480个字符。value、value_from和field_path必须三选一使用。 |
value_from |
ValueFrom object |
环境变量可使用配置项和密钥导入 |
field_path |
String |
该参数目前只支持赋值"status.hostIP",即引用边缘节点的IP地址作为环境变量。 |
参数 |
参数类型 |
描述 |
---|---|---|
secret |
Secrets object |
环境变量引用密钥时使用。使用ValueFrom时,secret与configmap必须二选一。 |
configmap |
ConfigsMap object |
环境变量引用配置项时使用。 |
参数 |
参数类型 |
描述 |
---|---|---|
container_port |
Integer |
构成一堆映射的容器端口 |
host_port |
Integer |
构成一对映射的物理机对应网卡端口 |
host_ip |
String |
对应网卡地址 |
host_port_range |
HostPortRange object |
主机端口范围,在范围内为应用实例自动分配主机端口;与主机端口参数二选一;仅铂金版可用 |
参数 |
参数类型 |
描述 |
---|---|---|
min_port |
Integer |
主机端口下限制,1到65535之间的整数 |
max_port |
Integer |
主机端口上限值,1到65535之间的整数;max_port需大于min_port |
参数 |
参数类型 |
描述 |
---|---|---|
exec |
Exec object |
执行命令检查,与http_get二选一 |
http_get |
HttpGetDetail object |
执行http探测 |
initial_delay_seconds |
Integer |
表示从工作负载启动后从多久开始探测,大于0且不大于3600的整数,默认为10 |
timeout_seconds |
Integer |
表示探测超时时间,大于0且不大于3600的整数,默认为1 |
参数 |
参数类型 |
描述 |
---|---|---|
path |
String |
必须要以/开头,构造结果为:协议类型://主机地址:端口路径 |
port |
Integer |
探测的http端口,1到65535之间的整数 |
host |
String |
请求的主机地址,默认为容器IP |
scheme |
String |
协议类型,HTTP或HTTPS,默认HTTP |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
卷名称,小写字母或数字,最长63个字符 |
type |
String |
卷的类型,支持configMap,secret,emptyDir,hostPath |
source |
String |
卷来源,type为hostPath时输入路径,要求以/开头,后面可包含中划线,反斜杠,下划线,点号,字母,数字; secret时输入secret名称,configMap时输入configMap名称,emptyDir时输入disk或memory |
destination |
String |
卷挂载路径,必须是合法的路径 |
read_only |
Boolean |
读写权限,configMap和secret类型只支持读权限 |
default_mode |
Integer |
挂载的文件权限,仅configMap和secret类型生效,默认为0644,支持填写十进制和八进制参数 |
参数 |
参数类型 |
描述 |
---|---|---|
ring_controller |
String |
生成ranktablefile。该参数目前只支持赋值"ascend-1980"。 |
autonomy_edge_selector |
String |
离线自愈功能配置字段,须填写调度的节点组id |
状态码: 400
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_msg |
String |
错误描述信息 |
状态码: 500
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_msg |
String |
错误描述信息 |
请求示例
无
响应示例
状态码: 200
ok
{ "count" : 1, "deployments" : [ { "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:20:40.630Z", "updated_at" : "2019-10-10T02:20:40.630Z", "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", "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", "npu_type" : "", "volumes" : [ { "name" : "log-volume", "type" : "hostPath", "read_only" : false, "source" : "/var/IEF", "destination" : "/var/IEF" } ] } ] } } ] }
状态码: 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" }
状态码
状态码 |
描述 |
---|---|
200 |
ok |
400 |
error |
500 |
error |
错误码
请参见错误码。