Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2022-11-17 GMT+08:00

Consulta de grupos de servidores backend

Función

Esta API se utiliza para consultar los grupos de servidores backend y mostrarlos en una lista. Se admite la consulta de filtro y la consulta de paginación. A menos que se especifique lo contrario, se aplica una coincidencia exacta.

URI

GET /v2/{project_id}/elb/pools

Tabla 1 Parámetros de ruta

Parámetro

Obligatorio

Tipo

Descripción

project_id

String

Especifica el ID del proyecto.

Tabla 2 Parámetros de consulta

Parámetro

Obligatorio

Tipo

Descripción

marker

No

String

Especifica el ID del grupo de servidores backend desde el que se inicia la consulta de paginación, es decir, el ID del último grupo de servidores backend de la página anterior. Si no se especifica este parámetro, se consultará la primera página.

Este parámetro debe usarse junto con limit.

limit

No

Integer

Especifica el número de grupos de servidores backend de cada página. Si este parámetro no está definido, todos los grupos de servidores backend se consultan de forma predeterminada.

page_reverse

No

Boolean

Especifica la dirección de la página. El valor puede ser true o false, y el valor predeterminado es false. La última página de la lista solicitada con page_reverse establecido en false no contendrá el enlace "next", y la última página de la lista solicitada con page_reverse establecido en true no contendrá el enlace "anterior".

Este parámetro debe usarse junto con limit.

id

No

String

Especifica el ID del grupo de servidores backend.

name

No

String

Especifica el nombre del grupo de servidores backend.

El valor contiene un máximo de 255 caracteres.

description

No

String

Proporciona información adicional sobre el grupo de servidores backend.

El valor contiene un máximo de 255 caracteres.

healthmonitor_id

No

String

Especifica el ID de la comprobación de estado configurada para el grupo de servidores backend.

loadbalancer_id

No

String

Especifica el ID del balanceador de carga asociado al grupo de servidores backend.

protocol

No

String

Especifica el protocolo que utiliza el grupo de servidores backend para recibir solicitudes.

Se admiten TCP, UDP y HTTP.

lb_algorithm

No

String

Especifica el algoritmo de equilibrio de carga del grupo de servidores backend.

El rango de valores varía dependiendo del protocolo del grupo de servidores backend:
  • ROUND_ROBIN: indica el algoritmo round robin ponderado.
  • LEAST_CONNECTIONS: indica el algoritmo de conexiones mínimas ponderadas.
  • SOURCE_IP: indica el algoritmo hash IP de origen.

Cuando el valor es SOURCE_IP, los pesos de los servidores backend del grupo de servidores no son válidos. Para obtener más información sobre el parámetro weight, consulte Respuesta.

member_address

No

String

Muestra los ID de los servidores backend del grupo de servidores backend.

member_device_id

No

String

Especifica el ID del servidor en la nube utilizado como servidor backend en el grupo de servidores backend.

enterprise_project_id

No

String

Especifica el ID del proyecto de empresa. Los proyectos empresariales se utilizan para la autenticación detallada.

  • Si se pasa loadbalancer_id, el ID del proyecto de empresa al que pertenece el balanceador de carga se utiliza para la autenticación.
  • Si loadbalancer_id no se pasa pero healthmonitor_id se pasa, el ID del proyecto de empresa al que pertenece el balanceador de carga se utiliza para la autenticación.
  • Si no se pasa ninguno de los tres parámetros enterprise_project_id, loadbalancer_id o healthmonitor_id, se realiza la autenticación de grano fino. Los permisos elb:loadbalancers:list deben asignarse al grupo de usuarios.

Solicitud

No hay

Respuesta

Tabla 3 Descripción del parámetro

Parámetro

Tipo

Descripción

pools

Array of Pools objects

Especifica el grupo de servidores backend. Para más detalles, consulte Tabla 4.

Tabla 4 Descripción del parámetro pool

Parámetro

Tipo

Descripción

id

String

Especifica el ID del grupo de servidores backend.

tenant_id

String

Especifica el ID del proyecto en el que se utiliza el grupo de servidores backend.

El valor contiene un máximo de 255 caracteres.

project_id

String

Especifica el ID del proyecto al que pertenece el grupo de servidores backend. Este parámetro tiene el mismo significado que tenant_id.

name

String

Especifica el nombre del grupo de servidores backend.

El valor contiene un máximo de 255 caracteres.

description

String

Proporciona información adicional sobre el grupo de servidores backend.

El valor contiene un máximo de 255 caracteres.

protocol

String

Especifica el protocolo que utiliza el grupo de servidores backend para recibir solicitudes.

Se admiten TCP, UDP y HTTP.

Cuando un grupo de servidores backend está asociado con un oyente, las relaciones entre el protocolo utilizado por el oyente y el protocolo del grupo de servidores backend son las siguientes:

  • Cuando el protocolo utilizado por el oyente es UDP, el protocolo del grupo de servidores backend debe ser UDP.
  • Cuando el protocolo utilizado por el oyente es TCP, el protocolo del grupo de servidores backend debe ser TCP.
  • Cuando el protocolo utilizado por el oyente es HTTP o TERMINATED_HTTPS, el protocolo del grupo de servidores backend debe ser HTTP.

lb_algorithm

String

Especifica el algoritmo de equilibrio de carga del grupo de servidores backend.

El rango de valores varía dependiendo del protocolo del grupo de servidores backend:
  • ROUND_ROBIN: indica el algoritmo round robin ponderado.
  • LEAST_CONNECTIONS: indica el algoritmo de conexiones mínimas ponderadas.
  • SOURCE_IP: indica el algoritmo hash IP de origen. Cuando el valor es SOURCE_IP, los pesos de los servidores backend del grupo de servidores no son válidos.

members

Array of Members objects

Muestra los ID de los servidores backend del grupo de servidores backend. Para más detalles, consulte Tabla 7.

healthmonitor_id

String

Especifica el ID de la comprobación de estado configurada para el grupo de servidores backend.

admin_state_up

Boolean

Especifica el estado administrativo del grupo de servidores backend.

Este parámetro está reservado. El valor puede ser true o false.

  • true: habilitar
  • false: deshabilitar

listeners

Array of Listeners objects

Muestra los ID de oyentes asociados con el grupo de servidores backend. Para más detalles, consulte Tabla 8.

loadbalancers

Array of Loadbalancers objects

Muestra los ID de los balanceadores de carga asociados con el grupo de servidores backend. Para más detalles, consulte Tabla 9.

session_persistence

SessionPersistence object

Especifica si se debe habilitar la función de sesión adhesiva. Para más detalles, consulte Tabla 10.

Una vez habilitada la sesión adhesiva, las solicitudes del mismo cliente se envían al mismo servidor backend durante la sesión.

Cuando se deshabilitan las sesiones adhesivas, el valor es null.

Tabla 5 Descripción del parámetro members

Parámetro

Tipo

Descripción

id

String

Especifica el ID del servidor backend asociado.

Tabla 6 Descripción del parámetro listeners

Parámetro

Tipo

Descripción

id

String

Especifica el ID del grupo de servidores backend asociado.

Tabla 7 Descripción de parámetro loadbalancers

Parámetro

Tipo

Descripción

id

String

Especifica el ID del balanceador de carga asociado.

Tabla 8 Descripción de parámetro session_persistence

Parámetro

Obligatorio

Tipo

Descripción

type

String

Especifica el tipo de sesión adhesiva.

El rango de valores varía dependiendo del protocolo del grupo de servidores backend:
  • SOURCE_IP: Las solicitudes se distribuyen en función de la dirección IP del cliente. Las solicitudes desde la misma dirección IP se envían al mismo servidor backend.
  • HTTP_COOKIE: Cuando el cliente envía una solicitud por primera vez, el balanceador de carga genera automáticamente una cookie e inserta la cookie en el mensaje de respuesta. Las solicitudes posteriores se envían al servidor backend que procesa la primera solicitud.
  • APP_COOKIE: Cuando el cliente envía una solicitud por primera vez, el servidor backend que recibe la solicitud genera una cookie e inserta la cookie en el mensaje de respuesta. Las solicitudes posteriores se envían a este servidor backend.

Cuando el protocolo del grupo de servidores backend es TCP, solo SOURCE_IP tiene efecto. Cuando el protocolo del grupo de servidores backend es HTTP, solo tiene efecto HTTP_COOKIE o APP_COOKIE.

cookie_name

No

String

Especifica el nombre de la cookie.

Este parámetro es obligatorio cuando el tipo de sesión sticky es APP_COOKIE.

persistence_timeout

No

Integer

Especifica la duración del tiempo de espera de la sesión adhesiva en minutos.

Este parámetro no es válido cuando type se establece en APP_COOKIE.

El rango de valores varía dependiendo del protocolo del grupo de servidores backend:
  • Cuando el protocolo del grupo de servidores backend es TCP o UDP, el valor varía de 1 a 60.
  • Cuando el protocolo del grupo de servidores backend es HTTP o HTTPS, el valor varía de 1 a 1440.

Ejemplo de la solicitud

  • Ejemplo de solicitud 1: consultando todos los grupos de servidores backend
    GET https://{Endpoint}/v2/1867112d054b427e808cc6096d8193a1/elb/pools
  • Ejemplo de solicitud 2: Consulta de grupos de servidores back-end cuyo algoritmo de equilibrio de carga es SOURCE_IP
    GET https://{Endpoint}/v2/1867112d054b427e808cc6096d8193a1/elb/pools?lb_algorithm=SOURCE_IP

Ejemplo de la respuesta

  • Ejemplo de respuesta 1
    {
        "pools": [
            {
                "lb_algorithm": "SOURCE_IP",
                "protocol": "TCP",
                "description": "",
                "admin_state_up": true,
                "loadbalancers": [
                    {
                        "id": "07d28d4a-4899-40a3-a939-5d09d69019e1"
                    }
                ],
                "tenant_id": "1867112d054b427e808cc6096d8193a1",
                "project_id": "1867112d054b427e808cc6096d8193a1",
                "session_persistence": null,
                "healthmonitor_id": null,
                "listeners": [
                    {
                        "id": "1b421c2d-7e78-4a78-9ee4-c8ccba41f15b"
                    }
                ],
                "members": [
                    {
                        "id": "88f9c079-29cb-435a-b98f-0c5c0b90c2bd"
                    },
                    {
                        "id": "2f4c9644-d5d2-4cf8-a3c0-944239a4f58c"
                    }
                ],
                "id": "3a9f50bb-f041-4eac-a117-82472d8a0007",
                "name": "my-pool"
            }
        ]
    }
  • Ejemplo de respuesta 2
    {
        "pools": [
            {
                "lb_algorithm": "SOURCE_IP",
                "protocol": "TCP",
                "description": "",
                "admin_state_up": true,
                "loadbalancers": [
                    {
                        "id": "07d28d4a-4899-40a3-a939-5d09d69019e1"
                    }
                ],
                "tenant_id": "1867112d054b427e808cc6096d8193a1",
                "project_id": "1867112d054b427e808cc6096d8193a1",
                "session_persistence": null,
                "healthmonitor_id": null,
                "listeners": [
                    {
                        "id": "1b421c2d-7e78-4a78-9ee4-c8ccba41f15b"
                    }
                ],
                "members": [
                    {
                        "id": "88f9c079-29cb-435a-b98f-0c5c0b90c2bd"
                    },
                    {
                        "id": "2f4c9644-d5d2-4cf8-a3c0-944239a4f58c"
                    }
                ],
                "id": "3a9f50bb-f041-4eac-a117-82472d8a0007",
                "name": "my-pool"
            }
        ]
    }

Código de estado

Para más detalles, consulte Códigos de estado.