
# 冷迁移云服务器 - MigrateServer
#### 功能介绍
- 将部署在专属主机上的弹性云服务器迁移至其他专属主机。
- 将部署在专属主机上的弹性云服务器迁移至公共资源池，即不再部署在专属主机上。
- 将公共资源池的弹性云服务器迁移至专属主机上，成为专属主机上部署的弹性云服务器。
本接口为异步接口，当前冷迁移弹性云服务器请求下发成功后会返回job_id，此时冷迁移弹性云服务器并没有立即完成，需要通过调用[查询任务的执行状态 - ShowJob](https://support.huaweicloud.com/api-ecs/ecs_02_0901.html)查询job状态，当Job状态为 SUCCESS 时代表云服务器冷迁移成功。
![](https://support.huaweicloud.com/api-ecs/public_sys-resources/note_3.0-zh-cn.png)
在云服务器不跨NUMA情况下，可能由于单NUMA资源不足，导致迁移失败。
#### 接口约束
- 接口目前只适用于专属主机使用场景。
- 关机状态的弹性云服务器才能执行冷迁移操作。
- 按需计费方式的弹性云服务器才能执行冷迁移操作。
 
#### 调试
您可以在[API Explorer](https://apiexplorer.developer.huaweicloud.com/apiexplorer/doc?product=ECS&api=MigrateServer)中调试该接口。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-ecs/ecs_06_0000.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
 
| 授权项                      | 访问级别  | 资源类型（\*为必须） | 条件键                                                                                                                                                                                                                     | 别名 | 依赖的授权项 |
|:---|:---|:---|:---|:---|:---|
| ecs:cloudServers:migrate | write | instance \* | - g:ResourceTag/\<tag-key\>  - g:EnterpriseProjectId   | -  | -      |
   
#### URI
POST /v1/{project_id}/cloudservers/{server_id}/migrate
参数说明请参见[表1]。
 表1参数说明 
| 参数         | 是否必选 | 描述                                                                                                                                                                                                                                                                                                                                                                          |
|:---|:---|:---|
| project_id | 是    | **参数解释：** 项目ID。 获取方法请参见[获取项目ID](https://support.huaweicloud.com/api-ecs/ecs_01_0016.html)。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及 |
| server_id  | 是    | **参数解释：** 云服务器ID。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及                                                                                                   |
   
#### 请求消息
请求参数如[表2]所示。
 表2请求参数 
| 参数      | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| migrate | 是    | Object | **参数解释：** 迁移云服务器，详情请参见[表3]。 将弹性云服务器从专属主机迁移至公共资源池时，migrate字段值为null。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及 |
   
 表3migrate数据结构说明 
| 参数                | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| dedicated_host_id | 否    | String | **参数解释：** 专属主机ID。 **约束限制：** 当弹性云服务器从公共资源池迁移至专属主机上，或者弹性云服务器在专属主机之间迁移时，该字段生效。 **取值范围：** 不涉及 **默认取值：** 不涉及 |
   
#### 响应消息
响应参数如[表4]所示。
 表4响应参数 
| 参数     | 参数类型   | 描述                                                                                                                                                                                                                                                  |
|:---|:---|:---|
| job_id | String | **参数解释：** 提交任务成功后返回的任务ID，用户可以使用该ID对任务执行情况进行查询。如何根据job_id来查询Job的执行状态，请参考[查询Job状态](https://support.huaweicloud.com/api-ecs/ecs_02_0900.html)。 **取值范围：** 不涉及 |
   
异常响应请参考[响应（任务类）](https://support.huaweicloud.com/api-ecs/ecs_07_0005.html)，异常响应要素说明。
#### 请求示例
迁移公共资源池的云服务器迁移至ID为"459a2b9d-804a-4745-ab19-a113bb1b4ddc"的专属主机。
```
POST https://{endpoint}/v1/{project_id}/cloudservers/{server_id}/migrate
{
    "migrate": {
        "dedicated_host_id": "459a2b9d-804a-4745-ab19-a113bb1b4ddc"
    }
}
```
#### 响应示例
```
{    
    "job_id": "ff80808288d41e1b018990260955686a" 
}
```
#### 返回值
请参考[通用请求返回值](https://support.huaweicloud.com/api-ecs/ecs_07_0001.html)。
#### 错误码
请参考[错误码](https://support.huaweicloud.com/api-ecs/ecs_07_0002.html)。
