更新时间:2024-04-15 GMT+08:00

查询终端节点服务列表

功能介绍

查询当前用户下的终端节点服务的列表。

URI

GET /v1/{project_id}/vpc-endpoint-services?endpoint_service_name={endpoint_service_name}&id={id}&sort_key={sort_key}&sort_dir={sort_dir}&limit={limit}&offset={offset}&status={status}

参数说明如表1所示。
表1 参数说明

参数

是否必选

描述

project_id

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

表2 查询参数

名称

是否必选

参数类型

描述

endpoint_service_name

String

终端节点服务的名称,支持大小写,前后模糊匹配。

id

String

终端节点服务的ID,唯一标识。

status

String

终端节点服务的状态。

  • creating:创建中
  • available:可连接
  • failed:失败
  • deleting:删除中

sort_key

String

查询结果中终端节点服务列表的排序字段,取值为:

  • created_at:终端节点服务的创建时间
  • updated_at:终端节点服务的更新时间

默认值为created_at。

sort_dir

String

查询结果中终端节点服务列表的排序方式,取值为:

  • desc:降序排序
  • asc:升序排序

默认值为desc。

limit

Integer

查询返回的终端节点服务数量限制,即每页返回的终端节点服务的个数。

取值范围:0~1000,取值一般为10,20或者50,默认为10。

offset

Integer

偏移量。

偏移量为一个大于0小于终端节点服务总个数的整数,表示从偏移量后面的终端节点服务开始查询。

请求消息

  • 参数说明

    无。

  • 请求样例
    GET https://{endpoint}/v1/{project_id}/vpc-endpoint-services

响应消息

  • 参数说明
    表3 响应参数

    参数

    参数类型

    描述

    endpoint_services

    Array of objects

    终端节点服务列表,详细内容请参见表4

    total_count

    Integer

    满足查询条件的终端节点服务总条数,不受分页(即limit、offset参数)影响。

    表4 endpoint_service要素说明

    属性

    参数类型

    描述

    id

    String

    终端节点服务的ID,唯一标识。

    port_id

    String

    标识终端节点服务后端资源的ID,格式为通用唯一识别码(Universally Unique Identifier,下文简称UUID)。取值为:

    • LB类型:负载均衡器内网IP对应的端口ID。
    • VM类型:弹性云服务器IP地址对应的网卡ID。
    • VIP类型:虚拟资源所在物理服务器的虚拟IP对应的端口ID。(该字段即将废弃,请优先使用LB类型)

    service_name

    String

    终端节点服务的名称。

    server_type

    String

    资源类型。

    • LB:负载均衡。
    • VM:云服务器。
    • VIP:虚拟IP。(该字段已废弃,请优先使用LB类型)
    • BMS:裸金属服务器。(该字段已废弃,请优先使用LB类型)

    vpc_id

    String

    终端节点服务对应后端资源所在的VPC的ID。

    approval_enabled

    Boolean

    是否需要审批。

    • false:不需要审批,创建的终端节点连接直接为accepted状态。
    • true:需要审批,创建的终端节点连接为pendingAcceptance状态,需要终端节点服务所属用户审核后方可使用。

    status

    String

    终端节点服务的状态。

    • creating:创建中
    • available:可连接
    • failed:失败
    • deleting:删除中

    service_type

    String

    终端节点服务类型。

    终端节点服务类型包括“网关(gateway)型”和“接口(interface)型”:
    • gateway:由运维人员配置。用户无需创建,可直接使用。
    • interface:包括运维人员配置的云服务和用户自己创建的私有服务。其中,运维人员配置的云服务无需创建,用户可直接使用。

    您可以通过创建终端节点创建访问Gateway和Interface类型终端节点服务的终端节点。

    created_at

    String

    终端节点服务的创建时间。

    采用UTC时间格式,格式为:YYYY-MM-DDTHH:MM:SSZ

    updated_at

    String

    终端节点服务的更新时间。

    采用UTC时间格式,格式为:YYYY-MM-DDTHH:MM:SSZ

    project_id

    String

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

    ports

    Array of objects

    服务开放的端口映射列表,详细内容请参见表5

    同一个终端节点服务下,不允许重复的端口映射。若多个终端节点服务共用一个port_id,则终端节点服务之间的所有端口映射的server_port和protocol的组合不能重复。

    connection_count

    Integer

    终端节点服务下连接的状态为“创建中”或“已接受”的终端节点的个数。

    tcp_proxy

    String

    用于控制是否将客户端的源IP、源端口、marker_id等信息携带到服务端。信息携带支持两种方式:

    • TCP TOA:表示将客户端信息插入到tcp option字段中携带至服务端。
      说明:

      仅当后端资源为OBS时,支持TCP TOA类型信息携带方式。

    • Proxy Protocol:表示将客户端相关信息插入到tcp payload字段中携带至服务端。

    仅当服务端支持解析上述字段时,该参数设置才有效。

    参数的取值包括:

    • close:表示关闭代理协议。
    • toa_open:表示开启代理协议“tcp_toa”。
    • proxy_open:表示开启代理协议“proxy_protocol”。
    • open:表示同时开启代理协议“tcp_toa”和“proxy_protocol”。
    • proxy_vni:表示关闭代理协议“tcp_toa”,同时开启proxy和virtual network ID。

    默认值为“close”。

    error

    Array of objects

    错误信息。

    当终端节点服务状态异常,即“status”的值为“failed”时,会返回该字段,详细内容请参见表6

    表5 Port要素说明

    属性

    参数类型

    描述

    client_port

    Integer

    终端节点访问的端口。

    终端节点提供给用户,作为访问终端节点服务的端口,范围1-65535。

    server_port

    Integer

    终端节点服务的端口。

    终端节点服务绑定了后端资源,作为提供服务的端口,范围1-65535。

    protocol

    String

    端口映射协议,支持TCP。

    默认为TCP。

    表6 Error要素说明

    属性

    参数类型

    描述

    error_code

    String

    错误编码。

    error_message

    String

    错误信息。

  • 响应样例
    {
       "endpoint_services":[
             {
               "id":"4189d3c2-8882-4871-a3c2-d380272eed83",
               "port_id":"4189d3c2-8882-4871-a3c2-d380272eed88",
               "vpc_id":"4189d3c2-8882-4871-a3c2-d380272eed80",
               "status":"available",
               "approval_enabled":false,
               "service_name":"test123",
               "server_type":"VM",
               "service_type":"interface",
               "ports":[
                    {
                      "client_port":8080,
                      "server_port":90,
                      "protocol":"TCP"
                    },
                    {
                      "client_port":8081,
                      "server_port":80,
                      "protocol":"TCP"
                    }
                 ],
               "project_id":"6e9dfd51d1124e8d8498dce894923a0d",
               "created_at":"2018-01-30T07:42:01Z",
               "updated_at":"2018-01-30T07:42:01Z"
             }
         ],
       "total_count":1
    }