华为云用户手册

  • 调用API获取项目ID 项目ID可以通过调用查询指定条件下的项目列表API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为IAM的终端节点,可以从地区和终端节点获取。接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID。 { "projects": [ { "domain_id": "65382450e8f64ac0870cd180d14e684b", "is_domain": false, "parent_id": "65382450e8f64ac0870cd180d14e684b", "name": "project_name", "description": "", "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects/a4a5d4098fb4474fa22cd05f897d6b99" }, "id": "a4a5d4098fb4474fa22cd05f897d6b99", "enabled": true } ], "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects" }}
  • 两者区别 子网接口分为VPC子网接口、OpenStack Neutron子网接口两种。两者均可以正常创建、查询、更新、删除子网。 两者的区别及容易混淆的地方在于网络ID、子网ID两个参数的含义。 登录管理控制台,查看子网的基本信息,可以看到网络ID、子网ID两个字段。 图1 子网基本信息 调用VPC子网接口时,使用的子网ID为图1所示的网络ID,例如:a22724a0-b77b-44b4-b731-afd3a4839863。 调用OpenStack neutron子网接口时,使用的子网ID为图1所示的子网ID,例如:f32a3acf-2312-41d0-947c-13d377a35059。
  • 示例 以查询子网详情为例,对比两者之间的区别。 VPC子网接口 GET /v1/049d06b7f20037e12f0dc0137381822f/subnets/a22724a0-b77b-44b4-b731-afd3a4839863 { "subnet": { "id": "a22724a0-b77b-44b4-b731-afd3a4839863", //对应管理控制台上的网络ID "name": "subnet-54eb", "description": "", "cidr": "192.168.0.0/24", "dnsList": [ "100.125.1.202", "100.125.1.230" ], "status": "ACTIVE", "tags": [], "vpc_id": "f4d0ebd4-2a62-4396-980b-96e73b3386de", "ipv6_enable": false, "gateway_ip": "192.168.0.1", "dhcp_enable": true, "primary_dns": "100.125.1.202", "secondary_dns": "100.125.1.230", "availability_zone": "az1.dc1", "neutron_network_id": "a22724a0-b77b-44b4-b731-afd3a4839863", //对应管理控制台上的网络ID "neutron_subnet_id": "f32a3acf-2312-41d0-947c-13d377a35059", //对应管理控制台上的子网ID "extra_dhcp_opts": [] }} OpenStack neutron子网接口 GET /v2.0/subnets/f32a3acf-2312-41d0-947c-13d377a35059 { "subnet": { "name": "subnet-54eb", "cidr": "192.168.0.0/24", "id": "f32a3acf-2312-41d0-947c-13d377a35059", //对应管理控制台上的子网ID "enable_dhcp": true, "network_id": "a22724a0-b77b-44b4-b731-afd3a4839863", //对应管理控制台上的网络ID "tenant_id": "049d06b7f20037e12f0dc0137381822f", "project_id": "049d06b7f20037e12f0dc0137381822f", "dns_nameservers": [ "100.125.1.202", "100.125.1.230" ], "allocation_pools": [ { "start": "192.168.0.2", "end": "192.168.0.252" } ], "host_routes": [], "ip_version": 4, "gateway_ip": "192.168.0.1", "created_at": "2019-04-09T08:03:58", "updated_at": "2019-04-09T08:03:59" }}
  • 响应参数 表5 响应参数 名称 参数类型 说明 resources Array of resource objects resource对象列表,请参见表6。 total_count Integer 总记录数 表6 resource对象 名称 参数类型 说明 resource_id String 资源ID resource_detail Object 资源详情。 资源对象,用于扩展。默认为空 tags Array of tag objects 标签列表,没有标签默认为空数组,参见表7 resource_name String 资源名称,没有默认为空字符串 表7 tag字段数据结构说明 名称 是否必选 参数类型 说明 key 是 String 键。最大长度127个unicode字符。 key不能为空。(搜索时不对此参数做校验) value 是 string 值列表。每个值最大长度255个unicode字符,如果values为空列表,则表示any_value。value之间为或的关系。
  • 响应示例 action为filter { "resources": [ { "resource_detail": null, "resource_id": "cdfs_cefs_wesas_12_dsad", "resource_name": "resouece1", "tags": [ { "key": "key1", "value": "value1" }, { "key": "key2", "value": "value1" } ] } ], "total_count": 1000} action为count { "total_count": 1000}
  • 请求参数 表2 请求参数 参数名称 类型 是否必选 说明 tags Array of tag objects 否 包含标签,最多包含10个key,每个key下面的value最多10个,结构体不能缺失,key不能为空或者空字符串。Key不能重复,同一个key中values不能重复。 limit Integer 否 查询记录数(action为count时无此参数)如果action为filter默认为1000,limit最多为1000,不能为负数,最小值为1 offset Integer 否 (索引位置), 从offset指定的下一条数据开始查询。 查询第一页数据时,不需要传入此参数,查询后续页码数据时,将查询前一页数据时响应体中的值带入此参数(action为count时无此参数)如果action为filter默认为0,必须为数字,不能为负数 action String 是 操作标识(仅限于filter,count):filter(过滤),count(查询总条数) 如果是filter就是分页查询,如果是count只需按照条件将总条数返回即可。 matches Array of match objects 否 搜索字段,key为要匹配的字段,当前仅支持resource_name。value为匹配的值。此字段为固定字典值。 表3 tag字段数据结构说明 名称 是否必选 参数类型 说明 key 是 String 键。最大长度127个unicode字符。 key不能为空。(搜索时不对此参数做校验) values 是 Array of strings 值列表。每个值最大长度255个unicode字符,如果values为空列表,则表示any_value。value之间为或的关系。 表4 match字段数据结构说明 名称 是否必选 参数类型 说明 key 是 String 键。当前仅限定为resource_name value 是 String 值。每个值最大长度255个unicode字符。
  • 请求示例 过滤查询子网资源实例,action为filter,从第1条数据开始查询,单次查询最多返回100条,用matches和tags过滤查询。 POST https://{Endpoint}/v2.0/{project_id}/subnets/resource_instances/action{ "offset": "0", "limit": "100", "action": "filter", "matches": [ { "key": "resource_name", "value": "resource1" } ], "tags": [ { "key": "key1", "values": [ "*value1", "value2" ] } ]} 过滤计数子网资源实例,action为count,用matches和tags过滤计数。 POST https://{Endpoint}/v2.0/{project_id}/subnets/resource_instances/action{ "action": "count", "tags": [ { "key": "key1", "values": [ "value1", "value2" ] }, { "key": "key2", "values": [ "value1", "value2" ] } ], "matches": [ { "key": "resource_name", "value": "resource1" } ]}
  • 状态码 表1 正常返回值 正常返回码 类型 说明 200 OK GET、PUT、POST操作正常返回 201 Created OpenStack Neutron API、API V3的POST操作正常返回 204 No Content DELETE操作正常返回 表2 异常返回值 返回值 说明 400 Bad Request 服务器未能处理请求。 401 Unauthorized 被请求的页面需要用户名和密码。 403 Forbidden 对被请求页面的访问被禁止。 404 Not Found 服务器无法找到被请求的页面。 405 Method Not Allowed 请求中指定的方法不被允许。 406 Not Acceptable 服务器生成的响应无法被客户端所接受。 407 Proxy Authentication Required 用户必须首先使用代理服务器进行验证,这样请求才会被处理。 408 Request Timeout 请求超出了服务器的等待时间。 409 Conflict 由于冲突,请求无法被完成。 500 Internal Server Error 请求未完成。服务异常。 501 Not Implemented 请求未完成。服务器不支持所请求的功能。 502 Bad Gateway 请求未完成。服务器从上游服务器收到一个无效的响应。 503 Service Unavailable 请求未完成。系统暂时异常。 504 Gateway Timeout 网关超时。 父主题: 附录
  • 响应参数 表2 响应参数 参数名称 类型 说明 tags Array of tag objects tag对象列表,请参见表3。 表3 tag字段数据结构说明 名称 参数类型 说明 key String 键。 不能为空。 长度不超过36个字符。 由英文字母、数字、下划线、中划线、中文字符组成。 values Array of strings 值列表。 长度不超过43个字符。 由英文字母、数字、下划线、点、中划线、中文字符组成。
  • 响应示例 { "tags": [ { "key": "key1", "values": [ "value1", "value2" ] }, { "key": "key2", "values": [ "value1", "value2" ] } ]}
  • 基本概念 帐号 用户注册时的帐号,帐号对其所拥有的资源及云服务具有完全的访问权限,可以重置用户密码、分配用户权限等。由于帐号是付费主体,为了确保帐号安全,建议您不要直接使用帐号进行日常管理工作,而是创建用户并使用用户进行日常管理工作。 用户 由帐号在IAM中创建的用户,是云服务的使用人员,具有身份凭证(密码和访问密钥)。 在我的凭证下,您可以查看帐号ID和IAM用户ID。通常在调用API的鉴权过程中,您需要用到帐号、用户和密码等信息。 区域(Region) 从地理位置和网络时延维度划分,同一个Region内共享弹性计算、块存储、对象存储、VPC网络、弹性公网IP、镜像等公共服务。Region分为通用Region和专属Region,通用Region指面向公共租户提供通用云服务的Region;专属Region指只承载同一类业务或只面向特定租户提供业务服务的专用Region。 详情请参见区域和可用区。 可用区(AZ,Availability Zone) 一个可用区是一个或多个物理数据中心的集合,有独立的风火水电,AZ内逻辑上再将计算、网络、存储等资源划分成多个集群。一个Region中的多个AZ间通过高速光纤相连,以满足用户跨AZ构建高可用性系统的需求。 项目 区域默认对应一个项目,这个项目由系统预置,用来隔离物理区域间的资源(计算资源、存储资源和网络资源),以默认项目为单位进行授权,用户可以访问您帐号中该区域的所有资源。如果您希望进行更加精细的权限控制,可以在区域默认的项目中创建子项目,并在子项目中创建资源,然后以子项目为单位进行授权,使得用户仅能访问特定子项目中的资源,使得资源的权限控制更加精确。 图1 项目隔离模型 同样在我的凭证下,您可以查看项目ID。 企业项目 企业项目是项目的升级版,针对企业不同项目间的资源进行分组和管理,是逻辑隔离。企业项目中可以包含多个区域的资源,且项目中的资源可以迁入迁出。 关于企业项目ID的获取及企业项目特性的详细信息,请参见《企业管理用户指南》。 父主题: 使用前必读
  • 响应示例 action为filter { "resources": [ { "resource_detail": null, "resource_id": "cdfs_cefs_wesas_12_dsad", "resource_name": "resouece1", "tags": [ { "key": "key1", "value": "value1" }, { "key": "key2", "value": "value1" } ] } ], "total_count": 1000} action为count { "total_count": 1000}
  • 响应参数 表5 响应参数 名称 参数类型 说明 resources Array of resource objects resource对象列表,请参见表6。 total_count Integer 总记录数 表6 resource对象 名称 参数类型 说明 resource_id String 资源ID resource_detail Object 资源详情。 资源对象,用于扩展。默认为空 tags Array of tag objects 标签列表,没有标签默认为空数组,参见表7 resource_name String 资源名称,没有默认为空字符串 表7 tag字段数据结构说明 名称 是否必选 参数类型 说明 key 是 String 键。最大长度127个unicode字符。 key不能为空。(搜索时不对此参数做校验) value 是 String 值列表。每个值最大长度255个unicode字符,如果values为空列表,则表示any_value。 value之间为或的关系: 能查到匹配任意一个value的资源,如,资源A有val1的tag,B有val2的tag,用values={val1,val2}能过滤查询到资源A和B。
  • 请求参数 表2 请求参数 参数名称 类型 是否必选 说明 tags Array of tag objects 否 包含标签,最多包含10个key,每个key下面的value最多10个,结构体不能缺失,key不能为空或者空字符串。Key不能重复,同一个key中values不能重复。 limit Integer 否 查询记录数(action为count时无此参数)如果action为filter默认为1000,limit最多为1000,不能为负数,最小值为1 offset Integer 否 (索引位置), 从offset指定的下一条数据开始查询。 查询第一页数据时,不需要传入此参数,查询后续页码数据时,将查询前一页数据时响应体中的值带入此参数(action为count时无此参数)如果action为filter默认为0,必须为数字,不能为负数 action String 是 操作标识(仅限于filter,count):filter(过滤),count(查询总条数) 如果是filter就是分页查询,如果是count只需按照条件将总条数返回即可。 matches Array of match objects 否 搜索字段,key为要匹配的字段,当前仅支持resource_name。value为匹配的值。此字段为固定字典值。 表3 tag字段数据结构说明 名称 是否必选 参数类型 说明 key 是 String 键。最大长度127个unicode字符。 key不能为空。(搜索时不对此参数做校验) values 是 Array of strings 值列表。每个值最大长度255个unicode字符,如果values为空列表,则表示any_value。 value之间为或的关系: 能查到匹配任意一个value的资源,如,资源A有val1的tag,B有val2的tag,用values={val1,val2}能过滤查询到资源A和B。 表4 match字段数据结构说明 名称 是否必选 参数类型 说明 key 是 String 键。当前仅限定为resource_name value 是 String 值。每个值最大长度255个unicode字符。
  • 请求示例 过滤查询VPC资源实例,action为filter,从第1条数据开始查询,单次查询最多返回100条,用matches和tags过滤查询。 POST https://{Endpoint}/v2.0/{project_id}/vpcs/resource_instances/action{ "offset": "0", "limit": "100", "action": "filter", "matches": [ { "key": "resource_name", "value": "resource1" } ], "tags": [ { "key": "key1", "values": [ "*value1", "value2" ] } ]} 过滤计数VPC资源实例,action为count,用matches和tags过滤计数。 POST https://{Endpoint}/v2.0/{project_id}/vpcs/resource_instances/action{ "action": "count", "tags": [ { "key": "key1", "values": [ "value1", "value2" ] }, { "key": "key2", "values": [ "value1", "value2" ] } ], "matches": [ { "key": "resource_name", "value": "resource1" } ]}
  • 示例 举例描述创建网络ACL资源的过程,理解三者之间的关系。 创建网络ACL规则 POST /v2.0/fwaas/firewall_rules 请求体 { "firewall_rule": { "name": "fw-rule-ingress-1", "description": "create a ingress firewall rule ", "protocol": "TCP", "action": "ALLOW", "ip_version": 4, "destination_ip_address": "192.168.22.0/24", "source_ip_address": "0.0.0.0/0", "enabled": true }} 响应体,获取到firewall_rule_id:84d10f4a-9f8b-41b8-bdfa-5a0f18736f12 { "firewall_rule": { "protocol": "tcp", "description": "create a ingress firewall rule ", "source_ip_address": "0.0.0.0/0", "destination_ip_address": "192.168.22.0/24", "source_port": null, "destination_port": null, "id": "84d10f4a-9f8b-41b8-bdfa-5a0f18736f12", "name": "fw-rule-ingress-1", "tenant_id": "5f6387106c2048b589b369d96c2f23a2", "project_id": "5f6387106c2048b589b369d96c2f23a2", "enabled": true, "action": "allow", "ip_version": 4, "public": false }} 创建网络ACL策略 POST /v2.0/fwaas/firewall_policies 请求体,绑定网络ACL规则 { "firewall_policy": { "description": "create a ingress firewall policy", "firewall_rules": [ "84d10f4a-9f8b-41b8-bdfa-5a0f18736f12" ], "name": "fw-policy-ingress" }} 响应体,获取到firewall_policy_id:da037721-b895-4e07-bbcc-f5f6ac2759fb { "firewall_policy": { "id": "da037721-b895-4e07-bbcc-f5f6ac2759fb", "name": "fw-policy-ingress", "project_id": "5f6387106c2048b589b369d96c2f23a2", "tenant_id": "5f6387106c2048b589b369d96c2f23a2", "description": "create a ingress firewall policy", "firewall_rules": [ "84d10f4a-9f8b-41b8-bdfa-5a0f18736f12" ], "audited": false, "public": false }} 创建网络ACL组 POST /v2.0/fwaas/firewall_groups 请求体,绑定入方向网络ACL策略 { "firewall_group": { "name": "fw-group-example", "description": "create a firewall group", "ingress_firewall_policy_id": "da037721-b895-4e07-bbcc-f5f6ac2759fb", "admin_state_up": true }} 响应体,获取到firewall_group_id:102493e8-fc6d-4f0d-b57f-55c5be86f5c0 { "firewall_group": { "id": "102493e8-fc6d-4f0d-b57f-55c5be86f5c0", "name": "fw-group-example", "project_id": "5f6387106c2048b589b369d96c2f23a2", "tenant_id": "5f6387106c2048b589b369d96c2f23a2", "admin_state_up": true, "egress_firewall_policy_id": null, "ingress_firewall_policy_id": "da037721-b895-4e07-bbcc-f5f6ac2759fb", "description": "create a firewall group", "created_at": "2023-03-09T08:54:40", "updated_at": "2023-03-09T08:54:40", "status": "INACTIVE", "ports": [], "public": false }} 登录网络控制台,可以查看到创建的网络ACL资源。
  • 概述 欢迎使用虚拟私有云服务(Virtual Private Cloud,以下简称VPC)。VPC为弹性云服务器构建隔离的、用户自主配置和管理的虚拟网络环境,提升用户云上资源的安全性,简化用户的网络部署。 您可以使用本文档提供的API对VPC进行相关操作,如创建、查询、删除、更新等。支持的全部操作请参见API概览。 在调用VPC服务的API之前,请确保已经充分了解VPC服务相关概念,详细信息请参见《虚拟私有云用户指南》的“产品介绍”。 父主题: 使用前必读
  • 操作步骤 通过子网ID或IP地址过滤查询端口。 发送“GET https://VPC的Endpoint/v1/{project_id}/ports?fixed_ips=ip_address={ip_address}&fixed_ips=subnet_id={subnet_id}”, project_id为项目ID,ip_address为端口资源的IP地址,subnet_id为端口资源所在子网的ID(IPV4/IPV6子网ID,不是网络ID)。 过滤信息格式举例 fixed_ips=ip_address=192.168.27.75,fixed_ips=subnet_id=f60f887b-60e1-4647-a762-b5c6925909cd 在Request Header中增加“X-Auth-Token”。 查看请求响应结果。 请求成功时,响应参数如下,id就是port_id,可以看到端口的详细信息。 { "ports": [ { "id": "6026a064-eacc-4c40-a0fd-9dcc456ad495", "name": "", "status": "DOWN", "admin_state_up": true, "fixed_ips": [ { "subnet_id": "f60f887b-60e1-4647-a762-b5c6925909cd", "ip_address": "192.168.27.75" } ], "mac_address": "fa:16:3e:ab:1e:4e", "network_id": "b033c3b8-59ea-4a15-9f86-648119cdc50a", "tenant_id": "5f6387106c2048b589b369d96c2f23a2", "device_id": "", "device_owner": "neutron:VIP_PORT", "security_groups": [], "extra_dhcp_opts": [], "allowed_address_pairs": [], "binding:vnic_type": "normal", "binding:vif_details": {}, "binding:profile": {}, "port_security_enabled": true, "instance_type": "", "instance_id": "", "zone_id": "cn-north-4a" } ]} 请求异常时,错误码请参见错误码。 查询端口详情。 如果已知端口ID,可以通过下面的接口查询端口详情。 发送“GET https://VPC的Endpoint/v1/{project_id}/ports/{port_id}”,project_id为项目ID,port_id为端口ID。 在Request Header中增加“X-Auth-Token”。 查看请求响应结果。 请求成功时,响应参数如下。 { "port": { "id": "6026a064-eacc-4c40-a0fd-9dcc456ad495", "name": "", "status": "DOWN", "admin_state_up": true, "fixed_ips": [ { "subnet_id": "f60f887b-60e1-4647-a762-b5c6925909cd", "ip_address": "192.168.27.75" } ], "mac_address": "fa:16:3e:ab:1e:4e", "network_id": "b033c3b8-59ea-4a15-9f86-648119cdc50a", "tenant_id": "5f6387106c2048b589b369d96c2f23a2", "device_id": "", "device_owner": "neutron:VIP_PORT", "security_groups": [], "extra_dhcp_opts": [], "allowed_address_pairs": [], "binding:vnic_type": "normal", "binding:vif_details": {}, "binding:profile": {}, "port_security_enabled": true, "instance_type": "", "instance_id": "", "zone_id": "cn-north-4a" }} 请求异常时,错误码请参见错误码。
  • 响应示例 { "tags": [ { "key": "key1", "values": [ "value1", "value2" ] }, { "key": "key2", "values": [ "value1", "value2" ] } ]}
  • 响应参数 表2 响应参数 参数名称 类型 说明 tags Array of tag objects 标签列表 表3 tag字段数据结构说明 名称 参数类型 说明 key String 键。 不能为空。 长度不超过36个字符。 由英文字母、数字、下划线、中划线、中文字符组成。 values Array of strings 值列表。 长度不超过43个字符。 由英文字母、数字、下划线、点、中划线、中文字符组成。
  • 响应示例 { "firewall_policies": [ { "description": "", "firewall_rules": [ "6c6803e0-ca8c-4aa9-afb3-4f89275b6c32" ], "tenant_id": "23c8a121505047b6869edf39f3062712", "public": false, "id": "6b70e321-0c21-4b83-bb8a-a886d1414a5f", "audited": false, "name": "fwp1", "project_id": "23c8a121505047b6869edf39f3062712" }, { "description": "", "firewall_rules": [ "6c6803e0-ca8c-4aa9-afb3-4f89275b6c32" ], "tenant_id": "23c8a121505047b6869edf39f3062712", "public": false, "id": "fce92002-5a15-465d-aaca-9b44453bb738", "audited": false, "name": "fwp2", "project_id": "23c8a121505047b6869edf39f3062712" } ], "firewall_policies_links": [ { "rel": "previous", "href": "https://{Endpoint}/v2.0/fwaas/firewall_policies?marker=6b70e321-0c21-4b83-bb8a-a886d1414a5f&page_reverse=True" } ]}
  • URI GET /v2.0/fwaas/firewall_policies 分页查询样例: GET https://{Endpoint}/v2.0/fwaas/firewall_policies?limit=2&marker=6b70e321-0c21-4b83-bb8a-a886d1414a5f&page_reverse=False 参数说明请参见表1 表1 参数说明 名称 是否必选 参数类型 说明 id 否 String 按照网络ACL策略对应的ID过滤查询 name 否 String 按照网络ACL策略的名称过滤查询 description 否 String 按照网络ACL策略的描述过滤查询 tenant_id 否 String 按照网络ACL策略所属的项目ID过滤查询 marker 否 String 分页查询的起始资源ID,表示从指定资源的下一条记录开始查询。 marker需要和limit配合使用: 若不传入marker和limit参数,查询结果返回第一页全部资源记录。 若不传入marker参数,limit为10,查询结果返回第1~10条资源记录。 若marker为第10条记录的资源ID,limit为10,查询结果返回第11~20条资源记录。 若marker为第10条记录的资源ID,不传入limit参数,查询结果返回第11条及之后的所有资源记录。 limit 否 Integer 分页查询每页返回的记录个数,取值范围为0~intmax(2^31-1),默认值2000。 limit需要和marker配合使用,详细规则请见marker的参数说明。
  • 响应参数 表2 响应参数 参数名称 类型 说明 firewall_policies Array of firewall Policy object firewall policy对象列表。请参见表3。 firewall_policies_links Array of firewall_policies_link object firewall_policies_link对象。请参见表4。 只有在使用limit过滤,并且资源个数超过limit或者资源个数超过2000时(limit默认值),该参数的rel和href取值才会显示为next和其对应的link。 表3 firewall_Policy对象 属性 类型 说明 id String 网络ACL策略uuid标识。 name String 网络ACL策略名称。 description String 网络ACL策略描述。 tenant_id String 项目ID firewall_rules Array of strings 策略引用的网络ACL规则链。 audited Boolean 审计标记。 public Boolean 是否支持跨租户共享。 project_id String 项目ID,请参见获取项目ID。 表4 firewall_policies_link对象 名称 参数类型 说明 href String API链接 rel String API链接与该API版本的关系
  • 请求示例 路由器删除接口,路由器id为b625c58c-0cfe-49e0-acc8-f2374f8187ff,子网id为4b910a10-0860-428b-b463-d84dbc5e288e。 PUT https://{Endpoint}/v2.0/routers/b625c58c-0cfe-49e0-acc8-f2374f8187ff/remove_router_interface{"subnet_id": "4b910a10-0860-428b-b463-d84dbc5e288e"}
  • 响应示例 { "subnet_id": "4b910a10-0860-428b-b463-d84dbc5e288e", "tenant_id": "3d72597871904daeb6887f75f848b531", "project_id": "3d72597871904daeb6887f75f848b531", "port_id": "34d7d063-8f40-4958-b420-096db40d4067", "id": "b625c58c-0cfe-49e0-acc8-f2374f8187ff"}
  • 响应示例 { "router": { "id": "f5dbdfe0-86f9-4b0a-9a32-6be143f0a076", "name": "router-220", "status": "ACTIVE", "tenant_id": "bbfe8c41dd034a07bebd592bf03b4b0c", "project_id": "bbfe8c41dd034a07bebd592bf03b4b0c", "admin_state_up": true, "external_gateway_info": { "network_id": "0a2228f2-7f8a-45f1-8e09-9039e1d09975", "enable_snat": false }, "routes": [], "created_at": "2018-09-20T02:06:07", "updated_at": "2018-09-20T02:06:09" }}
  • 请求参数 表1 请求参数 参数名称 是否必选 类型 说明 router 是 router object router对象,参见表2。 更新操作时至少指定一项属性 表2 router对象 属性 是否必选 类型 说明 name 否 String 路由器的名称。 【使用说明】 仅支持数字、字母、_(下划线)、-(中划线)、.(点)。 admin_state_up 否 Boolean 管理状态。 【取值范围】 只支持true。 external_gateway_info 否 external_gateway_info object 扩展属性:外部网关信息,参见external_gateway_info对象 routes 否 Array of route objects 扩展属性:路由信息列表,参见routes对象 表3 external_gateway_info对象 属性 是否必选 类型 说明 network_id 否 String 外部网络的UUID。 外部网络的信息请通过GET /v2.0/networks?router:external=True或neutron net-external-list方式查询。 表4 route对象 属性 是否必选 类型 说明 destination 否 String IP地址段 【使用说明】 前缀不能和直连路由重复 nexthop 否 String 下一跳IP地址,nexthop仅支持是router所关联的子网范围内IP地址
  • 响应参数 表5 响应参数 参数名称 类型 说明 router router object router对象,参见表6。 表6 router对象 属性 类型 说明 id String 路由器的id 【使用说明】在查询路由器列表时非必选 name String 路由器的名称。 仅支持数字、字母、_(下划线)、-(中划线)、.(点)。 admin_state_up Boolean 管理状态。 只支持true。 status String 状态,可以为ACTIVE, DOWN,ERROR。 tenant_id String 项目ID external_gateway_info external_gateway_info object 扩展属性:外部网关信息,参见external_gateway_info对象 routes Array of route objects 扩展属性:路由信息列表,参见routes对象 project_id String 项目ID,请参见获取项目ID。 created_at String 资源创建时间,UTC时间 格式:yyyy-MM-ddTHH:mm:ss updated_at String 资源更新时间,UTC时间 格式:yyyy-MM-ddTHH:mm:ss 表7 external_gateway_info对象 属性 类型 说明 network_id String 外部网络的UUID。 外部网络的信息请通过GET /v2.0/networks?router:external=True或neutron net-external-list方式查询。 enable_snat Boolean 是否启用SNAT。 默认为false。 表8 route对象 属性 类型 说明 destination String IP地址段 nexthop String 下一跳IP地址,nexthop仅支持是router所关联的子网范围内IP地址
  • 响应示例 { "routers": [ { "id": "01ab4be1-4447-45fb-94be-3ee787ed4ebe", "name": "xiaoleizi-tag", "status": "ACTIVE", "tenant_id": "bbfe8c41dd034a07bebd592bf03b4b0c", "project_id": "bbfe8c41dd034a07bebd592bf03b4b0c", "admin_state_up": true, "external_gateway_info": { "network_id": "0a2228f2-7f8a-45f1-8e09-9039e1d09975", "enable_snat": false }, "routes": [ { "destination": "0.0.0.0/0", "nexthop": "172.16.0.124" } ], "created_at": "2018-03-23T09:26:08", "updated_at": "2018-08-24T08:49:53" } ], "routers_links": [ { "rel": "next", "href": "https://{Endpoint}/v2.0/routers?limit=1&marker=01ab4be1-4447-45fb-94be-3ee787ed4ebe" }, { "rel": "previous", "href": "https://{Endpoint}/v2.0/routers?limit=1&marker=01ab4be1-4447-45fb-94be-3ee787ed4ebe&page_reverse=True" } ]}
  • URI GET /v2.0/routers 样例: GET https://{Endpoint}/v2.0/routers?id={id}&name={name}&admin_state_up={admin_state_up}&tenant_id={tenant_id}&status={status} 分页查询样例: GET https://{Endpoint}/v2.0/routers?limit=2&marker=01ab4be1-4447-45fb-94be-3ee787ed4ebe&page_reverse=False
共100000条