# 重置节点 - BatchResetPoolNodes
#### 功能介绍
重置节点接口用于将指定节点恢复到初始状态，清除节点上的数据和配置。该接口适用于以下场景：当节点出现故障、配置错误、需要重新部署或进行系统恢复时，用户可通过此接口重置节点，使其恢复到出厂或初始状态。使用该接口的前提条件是节点已存在且用户具有管理员权限。重置操作完成后，节点上的所有数据和配置将被清除，节点将被重新启动并恢复到初始状态。若节点不存在、用户无权限操作或节点处于不可重置状态（如正在运行任务），接口将返回相应的错误信息。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/ModelArts/doc?api=BatchResetPoolNodes)中调试该接口，支持自动认证鉴权。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-reset
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释** ：用户项目ID。获取方法请参见[获取项目ID和名称](https://support.huaweicloud.com/api-modelarts/modelarts_03_0147.html)。 **约束限制**：1 - 64字符，字母、数字和中划线。 **取值范围**：不涉及。 **默认取值**：不涉及。 |
| pool_name  | 是    | String | **参数解释**：资源池ID。取值资源池详情的metadata.name字段。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                   |
   
#### 请求参数
表2请求Body参数 
| 参数            | 是否必选 | 参数类型                                                                                                      | 描述                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| nodeNames     | 是    | Array of strings                                                                                          | **参数解释**：需要重置的节点名称列表。 **约束限制**：不涉及。                                                                                      |
| rollingConfig | 是    | [rollingConfig] object | **参数解释**：节点重置是滚动配置。 **约束限制**：不涉及。                                                                                        |
| nodeConfig    | 否    | [nodeConfig] object       | **参数解释**：节点配置参数。 **约束限制**：该参数待下线。超节点禁传此参数，非超节点亦不推荐传递此参数。重置配置参数会从节点所在的nodepool自动取值， 若需要重置时修改某参数， 可先修改nodepool相关参数， 再进行重置。 |
   
 表3rollingConfig 
| 参数             | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|:---|
| strategy       | 是    | String  | **参数解释**：滚动策略。 **约束限制**：不涉及。 **取值范围**：可选值如下： - RollingByNumber：表示按节点数量设置最大同时重置节点数量，例如10，表示单次最多重置10个节点   - RollingByPercent：表示按百分比设置最大同时重置节点数量。例如10，表示单次最多重置10%的节点    **默认取值**：不涉及。 |
| maxUnavailable | 是    | Integer | **参数解释**：滚动重置的节点数量或者节点比例, 当strategy为RollingByNumber时,表示允许同时重置的节点数量, 当strategy为RollingByPercent时,表示允许同时重置的最大节点比例。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
   
 表4nodeConfig 
| 参数        | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                 |
|:---|:---|:---|:---|
| os        | 否    | String | **参数解释**：节点的镜像名称，如果不设置则取name字段的值 **约束限制**：不涉及。                                                                                                        |
| name      | 否    | String | **参数解释**：节点的镜像名称，如果os字段不设置才取此字段的值。 **约束限制**：不涉及。                                                                                                      |
| imageId   | 否    | String | **参数解释**：节点的镜像ID。 **约束限制**：不涉及。                                                                                                                       |
| imageType | 否    | String | **参数解释**：节点的镜像类型。 **约束限制**：不涉及。                                                                                                                       |
| runtime   | 否    | String | **参数解释**：节点的容器运行时。 **约束限制**：不涉及。 **取值范围**：只能是\[docker, containerd\]其中一个。 |
   
#### 响应参数
**状态码：200**
表5响应Body参数 
| 参数     | 参数类型   | 描述                                                                                                           |
|:---|:---|:---|
| job_id | String | **参数解释**：异步任务的ID。 **取值范围**：不涉及。 |
   
**状态码：404**
表6响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                |
|:---|:---|:---|
| error_code | String | **参数解释**：ModelArts错误码。 **取值范围**：不涉及。 |
| error_msg  | String | **参数解释**：具体错误信息。 **取值范围**：不涉及。       |
   
#### 请求示例
```
POST /v2/{project_id}/pools/{pool_name}/nodes/batch-reset
{
  "nodeNames" : [ "os-node-created-lv29s" ],
  "rollingConfig" : {
    "strategy" : "RollingByPercent",
    "maxUnavailable" : 25
  },
  "nodeConfig" : {
    "imageId" : "3f2ee6e8-b19b-4683-8c9d-c10b197d51d6",
    "imageType" : "private"
  }
}
```
#### 响应示例
**状态码：200**
OK。
```
{
  "job_id" : "f234a869-f8ee-4b51-8255-3cbede368aba"
}
```
**状态码：404**
Not Found。
```
{
  "error_code" : "ModelArts.50015001",
  "error_msg" : "pool not found"
}
```
#### 状态码
| 状态码 | 描述         |
|:---|:---|
| 200 | OK。        |
| 404 | Not Found。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-modelarts/modelarts_03_0095.html)。
