
# 节点批量排水 - BatchDrainPoolNodes
#### 功能介绍
节点批量排水接口用于集中停止指定节点的业务处理能力并释放相关资源。该接口适用于以下场景：当系统需进行紧急故障隔离、资源回收、版本升级或维护操作时，用户可通过此接口批量暂停目标节点的业务流量，确保操作期间服务稳定性。使用该接口的前提条件包括：目标节点已存在且用户具备管理员权限，节点需处于运行状态且未被锁定，资源池需满足排水后容量约束（如最小可用节点数），同时需提供有效的节点列表及排水策略（如立即排水或延迟排水）作为输入参数。操作完成后，指定节点将停止接收新任务并逐步释放资源，原有业务数据将根据策略保留或迁移。若节点不存在、用户权限不足、节点状态异常（如维护中）、资源池容量不足或输入参数缺失，接口将返回对应错误信息（如404未找到节点、403权限拒绝、400参数校验失败等）。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/ModelArts/doc?api=BatchDrainPoolNodes)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-modelarts/modelarts_03_0138.html)。
- 如果使用身份策略授权，当前API调用无需身份策略权限。
 
#### URI
POST /v2/{project_id}/pools/{pool_name}/nodes/batch-drain
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释** ：用户项目ID。获取方法请参见[获取项目ID和名称](https://support.huaweicloud.com/api-modelarts/modelarts_03_0147.html)。 **约束限制**：1 - 64字符，字母、数字和中划线。 **取值范围**：不涉及。 **默认取值**：不涉及。 |
| pool_name  | 是    | String | **参数解释**：资源池ID。取值资源池详情的metadata.name字段。 **约束限制**：不涉及。 **取值范围**：只能以小写字母开头，数字、中划线组成，不能以中划线结尾，且长度为36-63个字符。 **默认取值**：不涉及。                                              |
   
#### 请求参数
表2请求Body参数 
| 参数        | 是否必选 | 参数类型             | 描述                                                                                                                |
|:---|:---|:---|:---|
| nodeNames | 是    | Array of strings | **参数解释**：节点名称列表。 **约束限制**：节点不能超过10个。 |
   
#### 响应参数
**状态码：200**
OK。
**状态码：400**
表3响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                |
|:---|:---|:---|
| error_code | String | **参数解释**：ModelArts错误码。 **取值范围**：不涉及。 |
| error_msg  | String | **参数解释**：具体错误信息。 **取值范围**：不涉及。       |
   
#### 请求示例
```
/v2/{project_id}/pools/{pool_name}/nodes/batch-drain
{
  "nodeNames" : [ "os-node-created-xzz78" ]
}
```
#### 响应示例
**状态码：200**
OK。
```
{ }
```
**状态码：400**
Not Found。
```
{
  "error_code" : "ModelArts.50004000",
  "error_msg" : "Bad request. node cannot be drained because it is not in pool"
}
```
#### 状态码
| 状态码 | 描述         |
|:---|:---|
| 200 | OK。        |
| 400 | Not Found。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-modelarts/modelarts_03_0095.html)。
