删除服务部署 - DeleteV2Deployment
功能介绍
该接口适用于删除服务的某个部署。若服务ID、部署ID无效、版本号不存在或用户无权限,则返回400 Bad Request或403 Forbidden
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权,具体权限要求请参见权限和授权项。
- 如果使用身份策略授权,需具备如下身份策略权限。
授权项
访问级别
资源类型(*为必须)
条件键
别名
依赖的授权项
modelarts:service:deleteDeployment
Read
service *
-
-
-
URI
DELETE /v2/{project_id}/services/{service_id}/deployments/{deployment_id}
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| project_id | 是 | String | 参数解释: 用户项目ID。获取方法请参见获取项目ID和名称。 约束限制: 不涉及。 取值范围: 账号的项目ID。 默认取值: 不涉及。 |
| service_id | 是 | String | 参数解释: 服务ID,在创建服务时即可在返回体中获取,也可通过查询服务列表获取当前用户拥有的服务,其中service_id字段即为服务ID。 约束限制: 不涉及。 取值范围: 服务ID。 默认取值: 不涉及。 |
| deployment_id | 是 | String | 参数解释: 部署ID,在创建部署时即可在返回体中获取,也可通过查询服务部署列表获取当前用户拥有的部署,其中deployment_id字段即为部署ID。 约束限制: 不涉及。 取值范围: 部署ID。 默认取值: 不涉及。 |
请求参数
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 参数解释: 部署ID。 取值范围: 不涉及。 |
| name | String | 参数解释: 部署名称。 取值范围: 不涉及。 |
| pool_id | String | 参数解释: 资源池ID,查询指定资源池下的服务,默认不过滤。可通过查询资源池列表获取。 取值范围: 不涉及。 |
| count | Integer | 参数解释: 部署场景下,服务实例数量。 约束限制: 不涉及。 取值范围: [1, 128]。 默认取值: 不涉及。 |
| unit_configs | Array of UnitConfigResponse objects | 参数解释: 实例单元配置。 |
| weight | Integer | 参数解释: 权重百分比,分配到此模型的流量权重,仅当模型部署为在线服务时需要配置。 取值范围: [0, 100]。 |
| secret_type | String | 参数解释: 凭证类型相关配置,用户可以在此处选择使用的凭证类型(dew,agency) 约束限制: 不涉及。 取值范围: 默认取值: 不涉及。 |
| secret_name | String | 参数解释: 凭证名称,用户使用dew类型凭证时可以在此处选择使用的凭证。 约束限制: 不涉及。 |
| priority | Integer | 参数解释: 服务优先级。 约束限制: 不涉及。 取值范围: [1, 3]。 默认取值: 不涉及。 |
| version | String | 参数解释: 版本号。 取值范围: 不涉及。 |
| status | String | 参数解释: 部署状态。 取值范围: |
| failure_reason | String | 参数解释: 部署失败原因。 取值范围: 不涉及。 |
| create_at | String | 参数解释: 创建时间,根据创建时的当前时间自动生成。 取值范围: 毫秒级时间戳,13位数字,如1609459200000。 |
| update_at | String | 参数解释: 更新时间,根据更新时的当前时间自动生成。 取值范围: 毫秒级时间戳,13位数字,如1609459200000。 |
| description | String | 参数解释: 描述。 取值范围: 不涉及。 |
| advanced_config | AdvancedConfigResponse object | 参数解释: 高级配置,服务部署时的配置。 |
| model | ModelResponse object | 参数解释: 推理单元共用模型相关配置,用户可以在此处选择模型及权重文件配合镜像使用,此配置对所有推理单元生效。 约束限制: 不涉及。 |
| schedule_strategy | String | 参数解释: 调度策略。 取值范围: |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 参数解释: 实例单元ID。 取值范围: 不涉及。 |
| role | String | 参数解释: 实例单元角色。 取值范围: |
| custom_spec | CustomSpecResponse object | 参数解释: 自定义资源规格配置。 |
| flavor | String | 参数解释: 资源规格,根据所提供版本选择适合业务的规格。当specification为custom时表示自定义规格。由custom_spec指定部署的规格配置。 取值范围: 不涉及。 |
| image | ImageResponse object | 参数解释: 镜像配置信息,包含镜像地址,镜像来源。 |
| models | Array of ModelResponse objects | 参数解释: 模型相关配置,用户可以在此处选择模型及权重文件配合镜像使用。 |
| codes | Array of CodeResponse objects | 参数解释: 代码相关配置,用户可以在此处选择代码所在的obs路径等。 |
| files | Array of FileResponse objects | 参数解释: 模型和代码相关配置,用户可以在此处选择模型及权重文件和代码所在的obs路径等配合镜像使用。 |
| count | Integer | 参数解释: 配置实例个数,单机推理无需配置。 取值范围: 不涉及。 |
| cmd | String | 参数解释: 启动命令。 取值范围: 不涉及。 |
| envs | Map<String,String> | 参数解释: 环境变量。 |
| readiness_health | HealthResponse object | 参数解释: 就绪健康检查。 |
| startup_health | HealthResponse object | 参数解释: 启动健康检查。 |
| liveness_health | HealthResponse object | 参数解释: 存活健康检查。 |
| port | Integer | 参数解释: 端口。 取值范围: [1,65535]。 |
| recovery | String | 参数解释: 自动重建策略,开启后,由于部署配置变更或者故障等原因导致Pod重启时,平台将按策略自动执行重建。若不开启,平台将不会主动干预处理。 取值范围: |
| npu_reset_enable | Boolean | 参数解释: 是否开启恢复策略。 取值范围: |
| affinity | AffinityResponse object | 参数解释: 节点亲和调度设置。 |
| dumps | Array of DumpResponse objects | 参数解释: 产物转储相关配置。 |
| group_policy | UnitGroupPolicyResponse object | 参数解释: 单副本资源实例调度约束配置。 约束限制: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| gpu | Number | 参数解释: GPU个数。 取值范围: 支持配置小数,输入值不能小于0(最多支持2位小数,小数点后第3位做四舍五入处理)。 |
| memory | Integer | 参数解释: 内存,单位为MB。 取值范围: 仅支持整数。 |
| cpu | Number | 参数解释: CPU核数。 取值范围: 支持配置小数,输入值不能小于0.01(最多支持2位小数,小数点后第3位做四舍五入处理)。 |
| ascend | Integer | 参数解释: Ascend芯片个数。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 参数解释: 镜像id。 取值范围: 不涉及。 |
| source | String | 参数解释: 镜像类别,标识镜像来源。 取值范围: |
| swr_path | String | 参数解释: 镜像地址,source不同取值时,地址为不同值。 取值范围: 不涉及。 |
| category | String | 参数解释: 镜像支持的规格。 取值范围: |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| source | String | 参数解释: 代码来源类别。 取值范围: |
| address | String | 参数解释: 代码来源地址,格式遵循不同存储系统。 取值范围: 不涉及。 |
| mount_path | String | 参数解释: 挂载到容器内的路径,要求以/开头,后面可包含中划线、反斜杠、下划线、点号、字母、数字。 取值范围: 不涉及。 |
| host_cache | Boolean | 参数解释: 是否支持模型本地缓存,默认是不支持。 取值范围: |
| efs_sub_path | String | 参数解释: 当存储类别为EFS时,支持配置子目录。 取值范围: 不涉及。 |
| read_only | Boolean | 参数解释: 挂载权限设置,是否只读。 取值范围: |
| os_warm_up | Boolean | 参数解释: os预热。 取值范围: |
| source_name | String | 参数解释: 预热名称。 约束限制: os_warm_up为true时必填。 取值范围: 支持1-64位字符,可包含字母、中文、数字、中划线、下划线。 默认取值: 不涉及。 |
| asset_id | String | 参数解释: 预置资产id。 取值范围: 支持1-64位字符,可包含字母、中文、数字、中划线、下划线。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| source | String | 参数解释: 代码来源类别。 取值范围: |
| address | String | 参数解释: 代码来源地址,格式遵循不同存储系统。 取值范围: 不涉及。 |
| source_id | String | 参数解释: 代码来源id,与address二选一,当且仅当source为EFS时,可以传入sfs turbo的id。 取值范围: 不涉及。 |
| mount_path | String | 参数解释: 挂载到容器内的路径,要求以/开头,后面可包含中划线、反斜杠、下划线、点号、字母、数字。 取值范围: 不涉及。 |
| efs_sub_path | String | 参数解释: sfs 子路径。 取值范围: 不涉及。 |
| read_only | Boolean | 参数解释: 是否只读。 取值范围: |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| source | String | 参数解释: 代码来源类别。 取值范围: |
| address | String | 参数解释: 代码来源地址,格式遵循不同存储系统。 取值范围: 不涉及。 |
| mount_path | String | 参数解释: 挂载到容器内的路径,要求以/开头,后面可包含中划线、反斜杠、下划线、点号、字母、数字。 取值范围: 不涉及。 |
| host_cache | Boolean | 参数解释: 是否支持模型本地缓存,默认是不支持。 取值范围: |
| efs_sub_path | String | 参数解释: 当存储类别为EFS时,支持配置子目录。 取值范围: 不涉及。 |
| read_only | Boolean | 参数解释: 挂载权限设置,是否只读。 取值范围: |
| os_warm_up | Boolean | 参数解释: os预热。 取值范围: |
| source_name | String | 参数解释: 预热名称。 约束限制: os_warm_up为true时必填。 取值范围: 支持1-64位字符,可包含字母、中文、数字、中划线、下划线。 默认取值: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| check_method | String | 参数解释: 健康检查方式:HTTP 或者 EXEC(命令行)。 取值范围: |
| cmd | String | 参数解释: 当健康检查方式为EXEC时,配置的命令行。 取值范围: 不涉及。 |
| url | String | 参数解释: 当健康检查方式为HTTP 时,配置的请求地址。 取值范围: 不涉及。 |
| protocol | String | 参数解释: 连接协议。 取值范围: |
| initial_delay_seconds | Integer | 参数解释: 执行首次探测时,应该等待的时间。 取值范围: 不涉及。 |
| timeout_seconds | Integer | 参数解释: 执行探测的超时时间,默认1秒,最小1秒。 取值范围: 不涉及。 |
| period_seconds | Integer | 参数解释: 执行健康检查的周期时间,执行探测的频率。默认是10秒,最小1秒。 取值范围: 不涉及。 |
| failure_threshold | Integer | 参数解释: 探测成功后,最少连续探测失败多少次才被认定为失败。默认是3。最小值是1。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| affinity_type | String | 参数解释: 节点亲和类型。 取值范围: |
| required | Boolean | 参数解释: 是否设置强亲和。 取值范围: |
| selection_mode | String | 参数解释: 选择节点方式。 取值范围: IP。 |
| targets | Map<String,String> | 参数解释: 通过上述方式选择的列表,长度不能超过20。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| address | String | 参数解释: 挂载的PFS目录。 取值范围: 不涉及。 |
| mount_path | String | 参数解释: 挂载到容器内的路径,要求以/开头,后面可包含中划线、反斜杠、下划线、点号、字母、数字。 取值范围: 不涉及。 |
| source | String | 参数解释: 转储目的类别。 取值范围: |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| schedule_scope | String | 参数解释: 调度范围。 取值范围: HYPERNODE:超节点调度 SLICE:柜级调度 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| deploy_timeout_minutes | String | 参数解释: 部署超时时间 |
| upgrade_config | UpgradeConfigResponse object | 参数解释: 在线服务升级配置。 |
| service_secret | ServiceSecretResponse object | 参数解释: 服务密钥挂载。 |
| dynamic_routing_enable | String | 参数解释: 动态路由开关。 取值范围: |
| strategy | String | 参数解释: 智能路由策略。 取值范围: |
| metric_api_scheme | String | 参数解释: 指标接口服务请求协议。 取值范围: |
| metric_api_port | String | 参数解释: 指标接口端口号。 取值范围: [1, 65535]。 |
| metric_api_path | String | 参数解释: 指标接口path。 取值范围: 默认值metrics。 |
| ems_enable | String | 参数解释: 是否开启EMS加速。 取值范围: |
| custom_metrics_path | String | 参数解释: 自定义监控采集指标地址 |
| port | Integer | 参数解释: 容器端口号。 取值范围: [1, 65535]。 |
| protocol | String | 参数解释: 服务请求协议。当选择WSS与WS时,服务接口会升级为WebSocket。开启WebSocket时,不支持同时设置“服务流量限制”。 取值范围: |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| type | String | 参数解释: 升级类型。 取值范围: |
| rolling_update | RollingUpdateResponse object | 参数解释: 滚动更新配置。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| max_surge | String | 参数解释: 滚动更新时最多可以启动多少个Pod。 取值范围: 不涉及。 |
| max_unavailable | String | 参数解释: 滚动更新时最多可以删除多少个Pod。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| secret_enable | Boolean | 参数解释: 是否启用密钥。 取值范围: |
| secret_type | String | 参数解释: 密钥类型。 取值范围: |
| secret_volumes | SecretVolumeResponse object | 参数解释: 密钥挂载。 约束限制: 上限30个。 |
| group_enable | Boolean | 参数解释: 是否启用镜像的用户组。 取值范围: |
| group_id | Long | 参数解释: 镜像的用户组id。 取值范围: 不涉及。 |
请求示例
删除部署
DELETE https://{endpoint}/v2/{project_id}/services/{service_id}/deployments/{deployment_id} 响应示例
状态码:200
删除部署成功
{
"count" : 1,
"framework" : "COMMON",
"id" : "8a927efb-43f6-4a0b-8222-a1b87d2d2fa8",
"name" : "deployment-example",
"description" : "infer-description",
"pool_id" : "pool-xinfer-1216-dev-04f258c84780d5a52f3bc00dc15aa5e7",
"priority" : 1,
"unit_configs" : [ {
"codes" : [ ],
"count" : 1,
"custom_spec" : {
"cpu" : 0.1,
"memory" : 50
},
"envs" : {
"additionalProp1" : "string",
"additionalProp2" : "string",
"a" : "1"
},
"id" : "8a0e4ab7970bc24d01970bcd7f460003",
"image" : {
"category" : "CPU",
"id" : "bc84b0e49e910cd7918b1dfaeaa478f9c7e5242c6733525ca88304f026fa24e4",
"source" : "SWR",
"swr_path" : "swr.cn-north-7.myhuaweicloud.com/example/helloworld-example:0.0.1"
},
"npu_reset_enable" : false,
"port" : 65535,
"role" : "COMMON"
} ],
"weight" : 100,
"version" : "0.0.0",
"status" : "DEPLOYING"
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | 删除部署成功 |
错误码
请参见错误码。