---
title: "批量新增主机 | OceanBase 文档中心"
description: 批量新增主机 功能说明 批量添加主机信息。 调用说明 接口约束 调用者需要具备 HOST_MANAGER 权限。 请求路径 POST /api/v2/compute/hosts/batchCreate 请求参数 参数 类型 必选 示例值 描述 hostBasicDataList ObjectArray 是 -- Ho…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*lJTmRZ61jSUAAAAAAAAAAAAADiGDAQ/original) 云平台 OCPV 4.0.3 企业版

# 批量新增主机

更新时间：2023-08-10 11:45:58

## 功能说明

批量添加主机信息。

## 调用说明

### 接口约束

调用者需要具备 HOST_MANAGER 权限。

### 请求路径

`POST /api/v2/compute/hosts/batchCreate`

### 请求参数

| 参数 | 类型 | 必选 | 示例值 | 描述 |
| --- | --- | --- | --- | --- |
| hostBasicDataList | ObjectArray | 是 | -- | HostBasicData 数组，主机基本信息 |
| sshPort | Integer | 是 | 22 | 主机 SSH 端口 |
| kind | String | 是 | DEDICATED_PHYSICAL_MACHINE | 主机类型，有如下两种： * DEDICATED_PHYSICAL_MACHINE：物理机 * DEDICATED_CONTAINER：容器 |
| publishPorts | StringArray | 否 | 8080:8080,8090,8090 | 端口映射，当 kind 是容器是需要配置容器与物理机的端口映射关系。 |
| idcId | Long | 是 | 100 | 机房 ID |
| typeId | Long | 是 | 1001 | 机型 ID |
| credentialId | Long | 是 | 1001 | 凭据 ID，凭据是 SSH 用来访问主机的信息。 |
| alias | String | 否 | 机器1 | 主机的别名，只有添加单台是才可以设置别名。 |
| description | String | 否 | 测试机器 | 主机描述信息 |

HostBasicData 的数据结构

| 参数 | 类型 | 必选 | 示例值 | 描述 |
| --- | --- | --- | --- | --- |
| innerIpAddress | String | 是 | xxx.xxx.xxx.xxx | 主机 IP 地址 |
| serialNumber | String | 否 | 6CU4120W67 | 主机序列号 |

### 返回结果

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| data | Object | 请求的数据 |
| ├─ contents | Array | TaskInstance 的数组，详细数据结构见下表 |
| successful | Boolean | 请求是否成功 |
| timestamp | Datetime | 服务端完成请求的时间戳 |
| duration | Integer | 服务端处理请求的时间（毫秒） |
| status | Integer | 符合 HTTP Status 规范的编码 |
| traceId | String | 请求的 Trace ID，用于排查问题 |
| server | String | 响应请求的应用服务的地址 |

TaskInstance 的数据结构

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| id | Long | 软件包 ID |
| name | String | 软件包名称 |
| clusterId | Long | 集群 ID |
| tenantId | Long | 租户 ID |
| hostId | Long | 主机 ID |
| type | String | 任务类型，有如下可选值： * MANUAL：手动发起的运维任务 * SYS_ONECE：系统执行的单次任务  * SCHEDULED：非内置的定时执行任务 * SYS_SCHEDULED：系统内置定时执行任务 |
| status | Integer | 任务执行状态，有如下可选值： * RUNNING：执行中 * FAILED：执行失败  * SUCCESSFUL：执行成功 |
| creator | String | 任务创建者用户名 |
| operation | String | 任务操作，有如下集中操作： * EXECUTE：正常执行 * RETRY：重试  * ROLLBACK：回滚 * SKIP：跳过  * CANCEL：取消 |
| executor | String | 任务执行节点地址 |
| createTime | String | 任务创建时间 |
| startTime | String | 任务开始时间 |
| finishTime | String | 任务结束时间 |
| prohibitRollback | Boolean | 是否允许回滚 |
| subtasks | ObjectArray | SubtaskInstance 数组，子任务汇总信息 |

SubtaskInstance 的数据结构

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| id | Long | 子任务实例 ID |
| name | String | 子任务名称 |
| seriesId | Long | 子任务序列 ID |
| description | String | 子任务描述信息 |
| timeout | Integer | 子任务超时时间，单位秒 |
| status | String | 子任务状态，有如下几种状态： * PENDING：初始态，等待上游节点执行完成 * READY：准备中，依赖节点已经执行完成，等待执行  * RUNNING：执行中 * CANCELING：取消中  * FAILED：终态，执行失败 * SUCCESSFUL：终态：执行成功 |
| operation | String | 子任务操作，有如下集中操作： * EXECUTE：正常执行 * RETRY：重试  * ROLLBACK：回滚 * SKIP：跳过  * CANCEL：取消 |
| executor | String | 子任务执行节点信息 |
| runTime | Integer | 子任务执行次数 |
| createTime | String | 子任务创建时间 |
| startTime | String | 子任务开始时间 |
| finishTime | String | 子任务结束时间 |
| nodeType | String | 节点类型，如 JAVA_TASK |
| paralleIdx | Integer | 并行子任务索引值，-1 为非并行子任务 |
| upstreams | LongArray | 上游子任务 ID 列表 |
| downstream | LongArray | 下游子任务 ID 列表 |
| prohibitRollback | Boolean | 子任务是否支持回滚 |

## 示例

### 请求示例

`POST /api/v2/compute/hosts/batchCreate`

```unknow
curl --user <username>:<password> -X POST 'http://<IP>:<PORT>/api/v2/compute/hosts/batchCreate' \
-H 'Content-Type: application/json' \
--data-raw '{"hostBasicDataList":[{"innerIpAddress":"xxx.xxx.xxx.xxx"}],"sshPort":22,"typeId":1,"idcId":1000002,"kind":"DEDICATED_PHYSICAL_MACHINE","credentialId":2000001}' \

```

### 返回示例

```unknow
{
  "data": {
    "contents": [
      {
        "creator": "admin",
        "executor": "xx.xx.xx.xx",
        "hostId": 4000002,
        "id": 35006655,
        "name": "Prepare host",
        "operation": "EXECUTE",
        "startTime": "2021-08-25T19:48:49.604+08:00",
        "status": "RUNNING",
        "subtasks": [
          {
            "description": "Update host status",
            "downstreams": [],
            "id": 13006993,
            "name": "Update host status",
            "nodeType": "JAVA_TASK",
            "operation": "EXECUTE",
            "parallelIdx": -1,
            "prohibitRollback": false,
            "runTime": 1,
            "seriesId": 4,
            "status": "PENDING",
            "timeout": 1800,
            "upstreams": [
              13006994
            ]
          },
          {
            "description": "Uninstall legacy ocp agent",
            "downstreams": [
              13006994
            ],
            "id": 13006990,
            "name": "Uninstall legacy ocp agent",
            "nodeType": "JAVA_TASK",
            "operation": "EXECUTE",
            "parallelIdx": -1,
            "prohibitRollback": false,
            "runTime": 1,
            "seriesId": 2,
            "status": "PENDING",
            "timeout": 600,
            "upstreams": [
              13006991
            ]
          },
          {
            "description": "Pre check for create host",
            "downstreams": [
              13006991
            ],
            "id": 13006992,
            "name": "Pre check for create host",
            "nodeType": "JAVA_TASK",
            "operation": "EXECUTE",
            "parallelIdx": -1,
            "prohibitRollback": false,
            "runTime": 1,
            "seriesId": 1,
            "status": "READY",
            "timeout": 1800,
            "upstreams": []
          },
          {
            "description": "Install ocp agent",
            "downstreams": [
              13006993
            ],
            "id": 13006994,
            "name": "Install ocp agent",
            "nodeType": "JAVA_TASK",
            "operation": "EXECUTE",
            "parallelIdx": -1,
            "prohibitRollback": false,
            "runTime": 1,
            "seriesId": 0,
            "status": "PENDING",
            "timeout": 5400,
            "upstreams": [
              13006990
            ]
          },
          {
            "description": "Uninstall legacy obagent",
            "downstreams": [
              13006990
            ],
            "id": 13006991,
            "name": "Uninstall legacy obagent",
            "nodeType": "JAVA_TASK",
            "operation": "EXECUTE",
            "parallelIdx": -1,
            "prohibitRollback": false,
            "runTime": 1,
            "seriesId": 3,
            "status": "PENDING",
            "timeout": 2100,
            "upstreams": [
              13006992
            ]
          }
        ],
        "type": "MANUAL"
      }
    ]
  },
  "duration": 1118,
  "server": "a83ad33525",
  "status": 200,
  "successful": true,
  "timestamp": "2021-08-25T19:48:49.639+08:00",
  "traceId": "93c00223847c4e0a"
}

```

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
