创建一个交换机。
接口说明
调用该接口创建交换机时,请注意以下事项:
-
每个 VPC 内的交换机数量不能超过 150 个。
-
每个交换机网段的第 1 个和最后 3 个 IP 地址为系统保留地址。例如 192.168.1.0/24 的系统保留地址为 192.168.1.0、192.168.1.253、192.168.1.254 和 192.168.1.255。
-
交换机下的云产品实例数量不允许超过 VPC 剩余的可用云产品实例数量(15000 减去当前云产品实例数量)。
-
一个云产品实例只能属于一个交换机。
-
交换机不支持组播和广播。
-
交换机创建成功后,无法修改网段。
-
CreateVSwitch 接口属于异步接口,即系统会返回一个实例 ID,但该交换机尚未创建完成,系统后台任务仍在进行中。您可以调用 DescribeVSwitchAttributes 查询交换机的创建状态:
- 当交换机处于 Pending 状态时,表示交换机正在配置中。
- 当交换机处于 Available 状态时,表示交换机可用。
-
CreateVSwitch 接口不支持在同一个 VPC 中并发创建交换机。
-
CreateVSwitch 接口不支持创建 100.64.0.0/10 及其子网网段的交换机。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用背景高亮的方式表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
vpc:CreateVSwitch | create | *VPC acs:vpc:{#regionId}:{#accountId}:vpc/{#VpcId} *VSwitch acs:vpc:{#regionId}:{#accountId}:vswitch/* |
| 无 |
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
Tag | array<object> | 否 | 资源的标签。 | |
object | 否 | 标签。 | ||
Key | string | 否 | 资源的标签键。最多支持输入 20 个标签键。如需传入该值,则不能输入空字符串。 一个标签键最多支持 128 个字符,不能以 | FinanceJoshua |
Value | string | 否 | 资源的标签值。最多支持输入 20 个标签值。如需传入该值,可以输入空字符串。 最多支持 128 个字符,不能以 | FinanceDept |
ZoneId | string | 是 | 要创建的交换机所属的可用区 ID。 您可以通过调用 DescribeZones 接口获取可用区 ID。 | cn-hangzhou-b |
RegionId | string | 否 | 要创建的交换机的地域 ID。 您可以通过调用 DescribeRegions 接口获取地域 ID。 | cn-hangzhou |
CidrBlock | string | 是 | 交换机的网段。交换机网段要求如下:
| 172.16.0.0/24 |
Ipv6CidrBlock | integer | 否 | 交换机 IPv6 网段的最后 8 比特位,取值:0~255。 | 12 |
VpcId | string | 是 | 要创建的交换机所属的 VPC ID。 | vpc-257gqcdfvx6n**** |
VSwitchName | string | 否 | 交换机的名称。 名称长度为 1~128 个字符,不能以 | vSwitch-1 |
Description | string | 否 | 交换机的描述信息。 描述长度为 1~256 个字符,不能以 | vSwitch |
ClientToken | string | 否 | 客户端 Token,用于保证请求的幂等性。 从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符。 说明
若您未指定,则系统自动使用 API 请求的 RequestId 作为 ClientToken 标识。每次 API 请求的 RequestId 可能不一样。
| 0c593ea1-3bea-11e9-b96b-88e9fe63**** |
VpcIpv6CidrBlock | string | 否 | VPC 的 IPv6 网段。 | 2408:XXXX:0:6a::/56 |
返回参数
示例
正常返回示例
JSON
格式
{
"VSwitchId": "vsw-25navfgbue4g****",
"RequestId": "0ED8D006-F706-4D23-88ED-E11ED28DCAC0"
}
错误码
HTTP status code | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | OperationFailed.ResourceConflict | vpc only support one cloud box. | - |
400 | OperationFailed.IdempotentTokenProcessing | Action is processing. | - |
400 | InvalidDescription.Malformed | Invalid description. | - |
400 | InvalidVSwitchName.Malformed | Specified virtual switch name is not valid. | 该vSwitch名字格式不正确,请您确认vSwitch名字格式。 |
400 | InvalidVSwitchDiscription.Malformed | Specified virtual switch description is not valid. | 交换机描述不合法。 |
400 | Abs.Vpc.InvalidDescription.Malformed | Specified virtual switch name is not valid. | - |
400 | MissingParam.vpcId | The parameter vpcId is mandatory. | 参数缺失,vpcId是必选参数 |
400 | ResourceNotAvailable | Resource you requested is not available in this region or zone. | 当前地域或可用区不支持创建交换机。 |
400 | InvalidParameter | Specified CIDR block is not valid in VPC. | 该网段不在VPC网段内。 |
400 | InvalidCidrBlock.Overlapped | Specified CIDR block overlapped with other subnets. | 该交换机网段与其他交换机的网段重叠或与已有的自定义路由的目标网段重叠,请使用其他未被占用的网段。 |
400 | InvalidCidrBlock.Overlapped | Specified CIDR block overlapped with other entry. | 该交换机网段与其他交换机的网段重叠或与已有的自定义路由的目标网段重叠,请使用其他未被占用的网段。 |
400 | QuotaExceeded.VSwitch | Virtual switch quota exceeded. | vSwitch数量达到配额上限,请您减少vSwitch数量后再试。 |
400 | IncorrectRouteEntryStatus | Some route entry status blocked this operation. | 无法执行该操作,当前路由表中有路由条目的状态为pending或modifying。 |
400 | IncorrectVSwitchStatus | Some virtual switch is modifying within the same VPC. | 同一个VPC下存在多个“修改中”的虚拟交换机,请您稍后重试。 |
400 | InvalidCirdrBlock.MaskLength | Specified CIDR block is not valid . | 该CIDR网段格式不正确。 |
400 | IncorrectVpcStatus | Current VPC status does not support this operation. | 当前VPC的状态无法支持这个操作。 |
400 | CreateVSwitch.IncorrectStatus.cbnStatus | Current CBN status does not support this operation. | 当前CBN的状态不支持创建虚拟交换机(VSwitch)操作 |
400 | InvalidCidrBlock.Malformed | Specified CIDR block is not valid. | 该CIDR格式不正确。 |
400 | MissingParameter | Miss mandatory parameter. | 缺少必要参数,请您检查必填参数是否都已填后再进行操作。 |
400 | IncorrectVSwitchStatus | VSwitch Creation simultaneously is not supported. | 创建交换机失败,VPC中有交换机的状态为Creating。 |
400 | TaskConflict | The operation is too frequent, TaskConflict. | 操作太频繁,请稍后重试 |
400 | VPC.SWITCH.RULE.QUOTA.NOT.EXISTS | vSwitch quota rule not exists. | - |
400 | Forbidden.VpcNotFound | Specified VPC can not found. | 指定的VPC不存在,请您检查VPC是否正确。 |
400 | RouteConflict.AlreadyExist | Route conflict exists in routing table. | 路由表中存在路由冲突。 |
400 | OperationFailed.CidrAcross | Classic link instance cidr must not across. | - |
400 | Duplicated.ClientToken | %s | - |
400 | OperationFailed.Ipv6CidrBlockExisted | %s | - |
400 | IllegalParam.Ipv6CidrBlock | %s | - |
400 | OperationFailed.VpcIpv6Disabled | %s | - |
400 | IncorrectStatus.cbnStatus | Current CBN status does not support this operation. | CBN当前状态不正确 |
400 | OperationFailed.NotifyCenCreate | Failed to notify cen when create vswitch. | - |
400 | OperationFailed.DistibuteLock | Distibute lock fail. | 操作被其他请求加锁; |
400 | UnsupportedFeature.CloudBoxIpv6 | The IPv6 feature is not supported by cloud box. | 云盒不支持创建IPv6。 |
400 | OperationDenied.VpcPeerExist | The operation is not allowed because the VPC peer exists. | 指定操作被禁止,因为VPC存在对等连接。 |
400 | OperationDenied.CenAttached | The operation is not allowed because the VPC is attached to CEN. | 指定操作被禁止,因为VPC关联了CEN。 |
400 | OperationDenied.NatgwExist | The operation is not allowed because the NAT gateway exists in VPC. | 指定操作被禁止,因为VPC中创建有NAT网关。 |
400 | MissingParam.Ipv6CidrBlock | The parameter Ipv6CidrBlock is mandatory. | 参数缺失,Ipv6CidrBlock是必选参数 |
400 | IllegalParam.VpcIpv6CidrBlock | %s | - |
400 | OperationDenied.OtherSubnetCreating | The operation is not allowed because the other VSwitch is creating. | - |
400 | OperationDenied.VpcPeerExists | The operation is not allowed because the VpcPeer exists. | 指定操作被禁止,因为VPC内存在VPC对等连接。 |
400 | IllegalParam.CidrBlock | The param of CidrBlock [%s] is illegal. | CidrBlock非法 |
404 | Invalid.NotExist | witch mask rule not exists. | - |
404 | InvalidStatus.RouteEntry | RouteEntry status error. | - |
404 | InvalidZoneId.NotFound | Specified zone does not exist. | 可用区ID不正确。 |
404 | InvalidVpcId.NotFound | Specified VPC does not exist. | 该VPC不存在。 |
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 |
---|---|---|
2024-01-17 | OpenAPI 错误码发生变更 | 查看变更详情 |
2023-09-06 | OpenAPI 错误码发生变更 | 查看变更详情 |
2023-07-05 | OpenAPI 描述信息更新、OpenAPI 错误码发生变更、OpenAPI 入参发生变更 | 查看变更详情 |