更新时间:2024-06-19 GMT+08:00

云服务器切换虚拟私有云

功能介绍

云服务器切换虚拟私有云。

本接口为异步接口,当前云服务器切换虚拟私有云请求下发成功后会返回job_id,此时云服务器切换虚拟私有云并没有立即完成,需要通过调用查询任务的执行状态查询job状态,当Job状态为 SUCCESS 时代表云服务器虚拟私有云切换成功。

切换虚拟私有云会卸载当前主网卡,用新指定的虚拟私有云创建主网卡。

若原主网卡绑定有弹性IP,则会将弹性IP绑定到新创建的主网卡上。

  • 切换虚拟私有云会导致云服务器网络中断,同时更改云服务器子网、IP地址、MAC地址。
  • 虚拟私有云切换完成后,与网络配置相关的应用软件需要重新配置。与网络相关的服务也需要重新配置,例如ELB、VPN、NAT、DNS等。
  • 切换虚拟私有云过程中,请勿操作云服务器的弹性IP,或对云服务器做其他操作。

接口约束

  • 云服务器只有主网卡,无其他网卡时,允许切换虚拟私有云。
  • 挂载IPv6协议网卡的云服务器不支持切换虚拟私有云。

URI

POST /v1/{project_id}/cloudservers/{server_id}/changevpc

参数说明请参见表1
表1 参数说明

参数

是否必选

描述

project_id

项目ID。

获取方法请参见获取项目ID

server_id

云服务器ID。

请求消息

请求参数如表2所示。
表2 请求参数

参数

是否必选

参数类型

描述

vpc_id

String

虚拟机私有云ID ,UUID格式。

nic

Object

需要添加的网卡参数列表,详情请参见表3

表3 nic字段数据结构说明

参数

是否必选

参数类型

描述

port_id

String

网卡ID,UUID格式。 当该字段不为空时,表示挂载指定的网卡。

说明:

port_id和subnet_id不能同时为空。

网卡ID可以通过虚拟私有云的“查询端口列表”接口查询。

约束:

  • 网卡必须带有安全组。
  • 网卡状态必须为DOWN。
  • 网卡的vpcid必须和传入的vpcid一致。
  • 当port_id和subnet_id同时存在的时候,优先使用port_id。
  • 当选择port_id不为空时,代表此时使用的是弹性网卡,此时security_groups和ip_address等参数不生效。

subnet_id

String

云服务器添加网卡的信息。

需要指定云服务器所属虚拟私有云下已创建的网络(network)的ID,UUID格式。

security_groups

Array of objects

添加网卡的安全组信息,详情请参见表4

ip_address

String

IP地址,无该参数表示自动分配IP地址。

表4 security_groups字段数据结构说明

参数

是否必选

参数类型

描述

id

String

安全组ID。

响应消息

请参考响应(任务类)

请求示例

云服务器切换VPC,添加网卡、安全组并指定IP地址。

POST  https://{endpoint}/v1/{project_id}/cloudservers/{server_id}/changevpc

{
    "vpc_id": "d32019d3-bc6e-4319-9c1d-6722fc136a23",
    "nic": {
        "subnet_id": "d32019d3-bc6e-4319-9c1d-6722fc136a23",
        "security_groups": [
            {
                "id": "f0ac4394-7e4a-4409-9701-ba8be283dbc3"
            }
        ],
        "ip_address": "192.168.255.1"
    }
}

响应示例

{
    "job_id": "ff8080829029501f01902e4a1703000f"
}

返回值

请参考通用请求返回值

错误码

请参考错误码