批量迁移节点 - BatchMigratePoolNodes
功能介绍
批量迁移节点接口用于在资源池之间批量迁移节点,将节点从一个资源池迁移到另一个资源池。该接口适用于以下场景:当资源池的节点分布不均衡、需要进行集群维护或业务扩展时,用户可通过此接口将指定节点从一个资源池迁移到另一个资源池。使用该接口的前提条件是资源池中至少包含两个节点,且目标资源池具备足够的资源容量(如IP地址等)以接收迁移节点。若资源池只有一个节点、目标集群资源不足、节点状态不支持迁移或用户无权限操作,接口将返回相应的错误信息。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权,具体权限要求请参见权限和授权项。
- 如果使用身份策略授权,当前API调用无需身份策略权限。
URI
POST /v2/{project_id}/pools/{pool_name}/nodes/batch-migrate
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
project_id | 是 | String | 参数解释:用户项目ID。获取方法请参见获取项目ID和名称。 约束限制:1 - 64字符,字母、数字和中划线。 取值范围:不涉及。 默认取值:不涉及。 |
pool_name | 是 | String | 参数解释:资源池名称。该字段取自资源池metadata.name字段的值。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
请求参数
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
migrateNodeNames | 否 | Array of strings | 参数解释:待迁移的节点名称列表。 约束限制:不涉及。 |
fromClusterName | 是 | String | 参数解释:迁移起始集群名称。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
toClusterName | 是 | String | 参数解释:迁移目标集群名称。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
toPoolName | 否 | String | 参数解释:迁移目标资源池名称。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
resourceSpec | 否 | MigrateResourceSpec object | 参数解释:迁移节点在目标资源池中配置信息。节点跨资源池迁移时参数必填。 约束限制:不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
flavor | 是 | String | 参数解释:资源规格名称,跨资源池迁移时该参数必传。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
creatingStep | 否 | CreatingStep object | 参数解释:资源步长信息。整柜或超节点迁移时,需要传递步长信息。 约束限制:不涉及。 |
nodePool | 否 | String | 参数解释:资源迁移的目标节点池名称。 约束限制:不涉及。 取值范围:不涉及。 默认取值:不涉及。 |
rootVolume | 否 | RootVolume object | 参数解释:目标节点池的系统盘信息,新建节点池时有效。 约束限制:不涉及。 |
dataVolumes | 否 | Array of DataVolumeItem objects | 参数解释:目标节点池的数据盘盘信息,新建节点池时有效。 约束限制:不涉及。 |
volumeGroupConfigs | 否 | Array of VolumeGroupConfig objects | 参数解释:磁盘高级配置。存在自定义数据盘时必须指定对应的高级配置,新建节点池时有效。 约束限制:不涉及。 |
labels | 否 | Map<String,String> | 参数解释:k8s标签,格式为key/value键值对,非特权池不能指定。新建节点池时有效。 约束限制:不涉及。 |
taints | 否 | Array of Taints objects | 参数解释:支持给创建出来的节点加taints来设置反亲和性,非特权池不能指定。新建节点池时有效。 约束限制:不涉及。 |
tags | 否 | Array of UserTags objects | 参数解释:资源标签。新建节点池时有效。 约束限制:不涉及。 |
network | 否 | NodeNetwork object | 参数解释:网络配置,非特权池不能指定。新建节点池时有效。 约束限制:不涉及。 |
extendParams | 否 | ResourceExtendParams object | 参数解释:自定义配置,比如设置节点dockerSize。新建节点池时有效。 约束限制:不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
step | 否 | Integer | 参数解释:超节点的步长。仅支持资源规格详情中包含的步长。 取值范围:不涉及。 |
type | 否 | String | 参数解释:批量创建类型。 取值范围:可选值如下: |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
volumeType | 是 | String | 参数解释:磁盘类型,具体内容可参考磁盘类型及性能介绍。 取值范围:可选值如下: |
size | 是 | String | 参数解释:磁盘大小,单位为GiB。 取值范围:不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
volumeType | 是 | String | 参数解释:磁盘类型,具体内容可参考磁盘类型及性能介绍。 取值范围:可选值如下: |
size | 是 | String | 参数解释:磁盘大小,单位为GiB。 取值范围:不涉及。 |
count | 否 | Integer | 参数解释:磁盘个数。 取值范围:不涉及。 |
extendParams | 是 | VolumeExtendParams object | 参数解释:磁盘自定义配置。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
volumeGroup | 是 | String | 参数解释:磁盘分组名称。作为dataVolumes中volumeGroup的索引。 取值范围:不涉及。 |
dockerThinPool | 否 | Integer | 参数解释:资源池节点容器盘占数据盘的百分比。仅磁盘分组名称为vgpaas时,即容器盘,才可指定此参数。 取值范围:不涉及。 |
lvmConfig | 否 | LvmConfig object | 参数解释:LVM配置管理。 |
types | 否 | Array of strings | 参数解释:存储类型。可选项如下: |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
lvType | 是 | String | 参数解释:LVM写入模式。 取值范围:可选项如下: |
path | 否 | String | 参数解释:磁盘挂载路径。仅在用户配置中生效。支持包含:数字、大小写字母、点、中划线、下划线的绝对路径。 取值范围:不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
key | 是 | String | 参数解释:键。 取值范围:不涉及。 |
value | 否 | String | 参数解释:值。 取值范围:不涉及。 |
effect | 是 | String | 参数解释:作用效果。 取值范围:不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
key | 是 | String | 参数解释:键。不得以"CCE-"或"__type_baremetal"开头"。 取值范围:不涉及。 |
value | 是 | String | 参数解释:值。 取值范围:不涉及。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
vpc | 否 | String | 参数解释:vpc id。 取值范围:不涉及。 |
subnet | 否 | String | 参数解释:子网id。 取值范围:不涉及。 |
securityGroups | 否 | Array of strings | 参数解释:安全组id集合。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
dockerBaseSize | 否 | String | 参数解释:节点的容器镜像空间大小。 取值范围:可选值如下: |
postInstall | 否 | String | 参数解释:安装后执行脚本,输入的值需要经过Base64编码。 取值范围:不涉及。 |
runtime | 否 | String | 参数解释:容器运行时。 取值范围:可选值如下: |
labelPolicyOnExistingNodes | 否 | String | 参数解释:存量节点k8s标签更新策略,值为空时默认更新存量节点。 取值范围:可选值如下: |
taintPolicyOnExistingNodes | 否 | String | 参数解释:存量节点k8s污点更新策略,值为空时默认更新存量节点。 取值范围:可选值如下: |
tagPolicyOnExistingNodes | 否 | String | 参数解释:存量节点资源标签更新策略,值为空时默认更新存量节点。 取值范围:可选值如下: |
XParameterPlaneSubnet | 否 | String | 参数解释:跨物理集群之间进行参数面数据传输使用的子网id。不可与节点子网和容器子网重复。 取值范围:不涉及。 |
nodePoolName | 否 | String | 参数解释:用户指定的节点池名称。最小长度为2,最大长度为50的小写字母、中划线-、数字组成,由小写字母开头,不能以-,-default结尾。 取值范围:不涉及 |
响应参数
状态码:200
参数 | 参数类型 | 描述 |
|---|---|---|
job_id | String | 参数解释:异步任务的ID。 取值范围:不涉及。 |
状态码:404
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 参数解释:ModelArts错误码。 取值范围:不涉及。 |
error_msg | String | 参数解释:具体错误信息。 取值范围:不涉及。 |
请求示例
POST /v2/{project_id}/pools/{pool_name}/nodes/batch-migrate
{
"migrateNodeNames" : [ "os-node-created-zrxm7" ],
"fromClusterName" : "lite-cluster-1dc682c4-e04d-11ee-bda6-0255ac1001ba",
"toClusterName" : "lite-cluster-d3a65087-38e4-11ef-a12c-0255ac100b03",
"toPoolName" : "pool-9d3f-6f5da086876d4cd084d36f8bd3346036",
"resourceSpec" : {
"flavor" : "modelarts.vm.2u4g"
}
} 响应示例
状态码:200
OK。
{
"job_id" : "66798666-6778-443f-9f8a-56c9ea6d719c"
} 状态码:404
Not Found。
{
"error_code" : "ModelArts.50015001",
"error_msg" : "pool not found"
} 状态码
状态码 | 描述 |
|---|---|
200 | OK。 |
404 | Not Found。 |
错误码
请参见错误码。

