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

Configuración de una comprobación de estado

Función

Esta API se utiliza para configurar una comprobación de estado para un grupo de servidores backend para comprobar el estado de los servidores backend. Si el resultado de la comprobación de estado es OFFLINE, los servidores backend se consideran no saludables. Es necesario comprobar la configuración del servidor.

Restricciones

  • Los grupos de seguridad deben tener reglas que permitan el acceso en 100.125.0.0/16.
  • Si se utiliza UDP para la comprobación de estado, el protocolo del grupo de servidores backend debe ser UDP.

URI

POST /v2/{project_id}/elb/healthmonitors

Tabla 1 Descripción del parámetro

Parámetro

Obligatorio

Tipo

Descripción

project_id

String

Especifica el ID del proyecto.

Solicitud

Tabla 2 Descripción del parámetro

Parámetro

Obligatorio

Tipo

Descripción

healthmonitor

Healthmonitor object

Especifica la comprobación de estado. Para más detalles, consulte Tabla 3.

Tabla 3 Descripción de parámetro healthmonitor

Parámetro

Obligatorio

Tipo

Descripción

tenant_id

No

String

Especifica el ID del proyecto en el que se realiza la comprobación de estado.

El valor debe ser el mismo que el valor de project_id en el token.

El valor contiene un máximo de 255 caracteres.

name

No

String

Especifica el nombre de la comprobación de estado.

El valor contiene un máximo de 255 caracteres.

delay

Integer

Especifica el tiempo máximo entre comprobaciones de estado en la unidad de segundo. El valor varía de 1 a 50.

max_retries

Integer

Especifica el número máximo de reintentos. El valor varía de 1 a 10.

pool_id

String

Especifica el ID del grupo de servidores backend.

Solo se puede configurar una comprobación de estado para cada grupo de servidores backend.

admin_state_up

No

Boolean

Especifica el estado administrativo de la comprobación de estado.

Este parámetro está reservado y el valor predeterminado es true.

timeout

Integer

Especifica la duración del tiempo de espera de comprobación de estado en la unidad de segundo. El valor varía de 1 a 50.

NOTA:

Se recomienda establecer el valor menor que el de parámetro delay.

type

String

Especifica el protocolo de comprobación de estado.

El valor puede ser TCP, UDP_CONNECT o HTTP.

monitor_port

No

Integer

Especifica el puerto de comprobación de estado. El número de puerto se encuentra dentro del rango de 1 a 65535.

El valor se deja en blanco de forma predeterminada, lo que indica que el puerto del servidor backend se utiliza como puerto de comprobación de estado.

domain_name

No

String

Especifica el nombre de dominio de las solicitudes HTTP durante la comprobación de estado.

Este parámetro solo tiene efecto cuando el valor de type se establece en HTTP.

El valor se deja en blanco de forma predeterminada, lo que indica que la dirección IP privada del balanceador de carga se utiliza como la dirección de destino de las solicitudes HTTP.

El valor puede contener solo dígitos, letras, guiones (-) y puntos (.) y debe comenzar con un dígito o letra, por ejemplo, www.test.com.

El valor contiene un máximo de 100 caracteres.

url_path

No

String

Especifica la ruta de solicitud HTTP para la comprobación de estado. El valor predeterminado es /.

El valor comienza con una barra (/).

Este parámetro solo tiene efecto cuando el valor de type se establece en HTTP.

Un valor de ejemplo es /test.

El valor contiene un máximo de 255 caracteres.

expected_codes

No

String

Especifica el código de estado HTTP esperado. Las siguientes opciones están disponibles:

Un valor único, como 200

Una lista de valores, como 200,202

Un rango de valores, como 200–204

Este parámetro solo tiene efecto cuando el valor de type se establece en HTTP.

El valor incluye un máximo de 64 caracteres.

NOTA:

Este parámetro está reservado.

http_method

No

String

Especifica el método de solicitud HTTP. El valor predeterminado es GET.

El valor puede ser GET, HEAD, POST, PUT, DELETE, TRACE, OPTIONS, CONNECT, o PATCH.

Este parámetro solo tiene efecto cuando el valor de type se establece en HTTP.

NOTA:

Este parámetro está reservado.

Respuesta

Tabla 4 Descripción del parámetro

Parámetro

Tipo

Descripción

healthmonitor

Healthmonitor object

Especifica la comprobación de estado. Para más detalles, consulte Tabla 5.

Tabla 5 Descripción de parámetro healthmonitor

Parámetro

Tipo

Descripción

id

String

Especifica el ID de comprobación de estado.

tenant_id

String

Especifica el ID del proyecto en el que se realiza la comprobación de estado.

project_id

String

Especifica el ID del proyecto al que pertenece la comprobación de estado. Este parámetro tiene el mismo significado que tenant_id.

name

String

Especifica el nombre de la comprobación de estado.

delay

Integer

Especifica el tiempo máximo entre comprobaciones de estado en la unidad de segundo. El valor varía de 1 a 50.

max_retries

Integer

Especifica el número de comprobaciones de estado consecutivas cuando el resultado de la comprobación de estado de un servidor backend cambia de OFFLINE a ONLINE. El valor varía de 1 a 10.

pools

Array of Pools objects

Muestra los ID de los grupos de servidores backend asociados a la comprobación de estado. Para más detalles, consulte Tabla 6.

admin_state_up

Boolean

Especifica el estado administrativo de la comprobación de estado.

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

  • true: habilitar
  • false: deshabilitar

timeout

Integer

Especifica la duración del tiempo de espera de comprobación de estado en la unidad de segundo. El valor varía de 1 a 50.

NOTA:

Se recomienda establecer el valor menor que el de parámetro delay.

type

String

Especifica el protocolo de comprobación de estado.

El valor puede ser TCP, UDP_CONNECT o HTTP.

monitor_port

Integer

Especifica el puerto de comprobación de estado. El número de puerto se encuentra dentro del rango de 1 a 65535.

El valor se deja en blanco de forma predeterminada, lo que indica que el puerto del servidor backend se utiliza como puerto de comprobación de estado.

expected_codes

String

Especifica el código de estado HTTP esperado. Las siguientes opciones están disponibles:

Un valor único, como 200

Una lista de valores, como 200,202

Un rango de valores, como 200–204

Este parámetro solo tiene efecto cuando el valor de type se establece en HTTP.

Actualmente, este parámetro no es compatible y se fija en 200.

domain_name

String

Especifica el nombre de dominio de las solicitudes HTTP durante la comprobación de estado.

Este parámetro solo tiene efecto cuando el valor de type se establece en HTTP.

El valor se deja en blanco de forma predeterminada, lo que indica que la dirección IP privada del balanceador de carga se utiliza como la dirección de destino de las solicitudes HTTP.

El valor puede contener solo dígitos, letras, guiones (-) y puntos (.) y debe comenzar con un dígito o letra, por ejemplo:www.test.com.

url_path

String

Especifica la ruta de solicitud HTTP para la comprobación de estado. El valor predeterminado es /.

El valor comienza con una barra (/).

Este parámetro solo tiene efecto cuando el valor de type se establece en HTTP.

Un valor de ejemplo es /test.

http_method

String

Especifica el método de solicitud HTTP. El valor predeterminado es GET.

El valor puede ser GET, HEAD, POST, PUT, DELETE, TRACE, OPTIONS, CONNECT, o PATCH.

Este parámetro solo tiene efecto cuando el valor de type se establece en HTTP.

NOTA:

Este parámetro está reservado.

Tabla 6 Descripción del parámetro pools

Parámetro

Obligatorio

Tipo

Descripción

id

String

Especifica el ID del grupo de servidores backend.

Ejemplo de la solicitud

  • Ejemplo de solicitud: Configuración de una comprobación de estado
    POST https://{Endpoint}/v2/145483a5107745e9b3d80f956713e6a3/elb/healthmonitors
    
    {
      "healthmonitor": {
        "admin_state_up": true,
        "pool_id": "bb44bffb-05d9-412c-9d9c-b189d9e14193",
        "domain_name": "www.test.com",
        "delay": 10,
        "max_retries": 10,
        "timeout": 10,
        "type": "HTTP"
      }
    }

Ejemplo de la respuesta

  • Ejemplo de respuesta 1
    {
      "healthmonitor": {
        "name": "",
        "admin_state_up": true,
        "tenant_id": "145483a5107745e9b3d80f956713e6a3",
        "project_id": "145483a5107745e9b3d80f956713e6a3",
        "domain_name": "www.test.com",
        "delay": 10,
        "expected_codes": "200",
        "max_retries": 10,
        "http_method": "GET",
        "timeout": 10,
        "pools": [
          {
            "id": "bb44bffb-05d9-412c-9d9c-b189d9e14193"
          }
        ],
        "url_path": "/",
        "type": "HTTP",
        "id": "2dca3867-98c5-4cde-8f2c-b89ae6bd7e36",
        "monitor_port": 112
      }
    }

Código de estado

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