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

Adición de un servidor backend

Función

Esta API se utiliza para agregar un servidor backend.

Restricciones

Cuando agregue servidores backend, tenga en cuenta lo siguiente:+ Dos servidores backend en el mismo grupo de servidores backend deben tener diferentes direcciones IP y puertos. + Si no se especifican subredes durante la creación del servidor en la nube, se pueden agregar servidores backend entre VPC. En este caso, address debe establecerse en una dirección IPv4, el protocolo del grupo de servidores backend debe ser TCP, HTTP o HTTPS, y el backend cross-VPC debe haber sido habilitado para el balanceador de carga. + Si se especifica una subred durante la creación del servidor en la nube, la subred debe estar en la misma VPC que aquella en la que reside el balanceador de carga.+ Si el grupo de servidores backend admite la doble pila IPv4/IPv6, address puede ser una dirección IPv4 o una dirección IPv6. Si el grupo de servidores backend solo admite IPv4, laddress solo puede ser una dirección IPv4. + IPv6 no es compatible.

URI

POST /v3/{project_id}/elb/pools/{pool_id}/members

Tabla 1 Parámetros de ruta

Parámetro

Obligatorio

Tipo

Descripción

pool_id

String

Especifica el ID del grupo de servidores backend.

project_id

String

Especifica el ID del proyecto.

Parámetros de solicitud

Tabla 2 Parámetros de cabecera de solicitud

Parámetro

Obligatorio

Tipo

Descripción

X-Auth-Token

String

Especifica el token utilizado para la autenticación IAM.

Tabla 3 Parámetros del cuerpo de solicitud

Parámetro

Obligatorio

Tipo

Descripción

member

CreateMemberOption object

Especifica el servidor backend.

Tabla 4 CreateMemberOption

Parámetro

Obligatorio

Tipo

Descripción

address

String

Especifica la dirección IP privada enlazada al servidor backend.

  • Si subnet_cidr_id se deja en blanco, el backend cross-VPC está habilitado. En este caso, la dirección IP debe ser una dirección IPv4.
  • Si subnet_cidr_id no se deja en blanco, la dirección IP puede ser IPv4 o IPv6. Debe estar en la subred especificada por subnet_cidr_id y solo puede estar enlazada a la NIC principal del servidor backend.

IPv6 no es compatible. No introduzca una dirección IPv6.

Mínimo: 1

Máximo: 64

admin_state_up

No

Boolean

Especifica el estado administrativo del servidor backend. El valor puede ser true o false.

Aunque este parámetro se puede utilizar en las API para crear y actualizar servidores backend, su valor real depende de si existen servidores en la nube. Si existen servidores en la nube, el valor es true. De lo contrario, el valor es false.

name

No

String

Especifica el nombre del servidor backend.

Mínimo: 0

Máximo: 255

project_id

No

String

Especifica el ID del proyecto.

Mínimo: 1

Máximo: 32

protocol_port

Integer

Especifica el puerto utilizado por el servidor backend para recibir solicitudes.

Mínimo: 1

Máximo: 65535

subnet_cidr_id

No

String

Especifica el ID de la subred IPv4 o IPv6 donde reside el servidor backend.

Nota:

  • La subred IPv4 o IPv6 debe estar en la misma VPC que la subred del balanceador de carga.
  • Si no se pasa este parámetro, se ha habilitado el backend cross-VPC para el balanceador de carga. En este caso, los servidores backend de VPC entre sí deben usar direcciones IPv4 privadas, y el protocolo del grupo de servidores backend debe ser TCP, HTTP o HTTPS.

IPv6 no es compatible. No establezca el valor en el ID de una subred IPv6.

Mínimo: 1

Máximo: 36

weight

No

Integer

Especifica el peso del servidor backend. Las solicitudes se enrutan a los servidores backend en el mismo grupo de servidores backend según sus pesos.

El valor varía de 0 a 100, y el valor predeterminado es 1. Cuanto mayor sea el peso, mayor será la proporción de solicitudes que recibe el servidor backend. Si el peso se establece en 0, el servidor backend no aceptará nuevas solicitudes.

Si lb_algorithm se establece en SOURCE_IP, este parámetro no tendrá efecto.

Parámetros de respuesta

Código de estado: 201

Tabla 5 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

request_id

String

Especifica el ID de la solicitud. El valor se genera automáticamente.

member

Member object

Especifica el servidor backend.

Tabla 6 Member

Parámetro

Tipo

Descripción

id

String

Especifica el ID del servidor backend.

Nota:

El valor de este parámetro no es el ID del servidor, sino un ID generado automáticamente para el servidor backend que ya se ha asociado con el balanceador de carga.

name

String

Especifica el nombre del servidor backend.

project_id

String

Especifica el ID del proyecto del servidor backend.

pool_id

String

Especifica el ID del grupo de servidores backend al que pertenece el servidor backend.

Este parámetro solo se muestra en la API para consultar todos los servidores backend (GET /v3/{project_id}/elb/members).

Este parámetro no es compatible. Por favor, no lo use.

admin_state_up

Boolean

Especifica el estado administrativo del servidor backend. El valor puede ser true o false.

Aunque este parámetro se puede utilizar en las API para crear y actualizar servidores backend, su valor real depende de si existen servidores en la nube. Si existen servidores en la nube, el valor es true. De lo contrario, el valor es false.

subnet_cidr_id

String

Especifica el ID de la subred IPv4 o IPv6 donde reside el servidor backend.

Este parámetro puede dejarse en blanco, lo que indica que el backend cruzado de VPC ha sido habilitado para el balanceador de carga. En este caso, las direcciones IP de estos servidores deben ser direcciones IPv4, y el protocolo del grupo de servidores backend debe ser TCP, HTTP o HTTPS.

La subred IPv4 o IPv6 debe estar en la misma VPC que la subred del balanceador de carga.

IPv6 no es compatible. No establezca el valor en el ID de una subred IPv6.

protocol_port

Integer

Especifica el puerto utilizado por el servidor backend para recibir solicitudes.

Mínimo: 1

Máximo: 65535

weight

Integer

Especifica el peso del servidor backend. Las solicitudes se enrutan a los servidores backend en el mismo grupo de servidores backend según sus pesos.

El valor varía de 0 a 100, y el valor predeterminado es 1. Cuanto mayor sea el peso, mayor será la proporción de solicitudes que recibe el servidor backend. Si el peso se establece en 0, el servidor backend no aceptará nuevas solicitudes.

Si lb_algorithm se establece en SOURCE_IP, este parámetro no tendrá efecto.

Mínimo: 0

Máximo: 100

address

String

Especifica la dirección IP privada enlazada al servidor backend.

  • Si subnet_cidr_id se deja en blanco, el backend cross-VPC está habilitado. En este caso, la dirección IP debe ser una dirección IPv4.
  • Si subnet_cidr_id no se deja en blanco, la dirección IP puede ser IPv4 o IPv6. Debe estar en la subred especificada por subnet_cidr_id y solo puede estar enlazada a la NIC principal del servidor backend.

IPv6 no es compatible. No introduzca una dirección IPv6.

ip_version

String

Especifica la versión IP admitida por el servidor backend. El valor puede ser v4 (IPv4) o v6 (IPv6), dependiendo del valor de address devuelto por el sistema.

device_owner

String

Especifica si el servidor backend está asociado a un ECS.

  • Si este parámetro se deja en blanco, el servidor backend no está asociado con un ECS.
  • Si el valor es compute:{az_name}, el servidor backend está asociado con un ECS. {az_name} indica la AZ donde reside el ECS.

Este parámetro no es compatible. Por favor, no lo use.

device_id

String

Especifica el ID del ECS al que está asociado el servidor backend. Si este parámetro se deja en blanco, el servidor backend no está asociado con un ECS.

Este parámetro no es compatible. Por favor, no lo use.

operating_status

String

Especifica el estado de salud del servidor backend si listener_id bajo status no se especifica. El valor puede ser uno de los siguientes:

  • ONLINE: El servidor backend se está ejecutando normalmente.
  • NO_MONITOR: No se configura ninguna comprobación de estado para el grupo de servidores backend al que pertenece el servidor backend.
  • OFFLINE: El servidor en la nube utilizado como servidor backend se detiene o no existe.

status

Array of MemberStatus objects

Especifica el estado de salud del servidor backend si se especifica listener_id.

loadbalancer_id

String

Especifica el ID del balanceador de carga al que está asociado el servidor backend.

Este parámetro no es compatible. Por favor, no lo use.

loadbalancers

Array of ResourceID objects

Especifica los ID de los balanceadores de carga asociados con el servidor backend.

Este parámetro no es compatible. Por favor, no lo use.

created_at

String

Especifica la hora en que se agregó un servidor backend. El formato es yyyy-MM-dd'T'HH:mm:ss'Z' (hora UTC).

Este es un campo nuevo en esta versión, y no se devolverá para los recursos asociados con balanceadores de carga dedicados existentes y para los recursos asociados con balanceadores de carga compartidos existentes y nuevos.

updated_at

String

Especifica la hora en que se actualizó un servidor backend. El formato es yyyy-MM-dd'T'HH:mm:ss'Z' (hora UTC).

Este es un campo nuevo en esta versión, y no se devolverá para los recursos asociados con balanceadores de carga dedicados existentes y para los recursos asociados con balanceadores de carga compartidos existentes y nuevos.

member_type

String

Especifica el tipo del servidor backend. Valores:

  • ip: servidores backend entre las VPC
  • instance: ECS utilizados como servidores backend

instance_id

String

Especifica el ID del ECS utilizado como servidor backend. Si este parámetro se deja en blanco, el servidor backend no es un ECS. Por ejemplo, puede ser una dirección IP.

Tabla 7 MemberStatus

Parámetro

Tipo

Descripción

listener_id

String

Especifica el ID de oyente.

operating_status

String

Especifica el estado de mantenimiento del servidor backend. El valor puede ser uno de los siguientes:

  • ONLINE: El servidor backend se está ejecutando normalmente.
  • NO_MONITOR: No se configura ninguna comprobación de estado para el grupo de servidores backend al que pertenece el servidor backend.
  • OFFLINE: El servidor en la nube utilizado como servidor backend se detiene o no existe.
Tabla 8 ResourceID

Parámetro

Tipo

Descripción

id

String

Especifica el ID del recurso.

Ejemplo de las solicitudes

  • Ejemplo 1: Adición de un servidor backend
    POST https://{ELB_Endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/pools/36ce7086-a496-4666-9064-5ba0e6840c75/members
    
    {
      "member" : {
        "subnet_cidr_id" : "c09f620e-3492-4429-ac15-445d5dd9ca74",
        "protocol_port" : 89,
        "name" : "My member",
        "address" : "120.10.10.16"
      }
    }
  • Ejemplo 2: Adición de un servidor backend entre VPC
    POST https://{ELB_Endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/pools/36ce7086-a496-4666-9064-5ba0e6840c75/members
    
    {
      "member" : {
        "protocol_port" : 89,
        "name" : "My member",
        "address" : "120.10.10.16"
      }
    }

Ejemplo de las respuestas

Código de estado: 201

Respuesta normal a las solicitudes POST.

{
  "member" : {
    "name" : "My member",
    "weight" : 1,
    "admin_state_up" : false,
    "subnet_cidr_id" : "c09f620e-3492-4429-ac15-445d5dd9ca74",
    "project_id" : "99a3fff0d03c428eac3678da6a7d0f24",
    "address" : "120.10.10.16",
    "protocol_port" : 89,
    "id" : "1923923e-fe8a-484f-bdbc-e11559b1f48f",
    "operating_status" : "NO_MONITOR",
    "status" : [ {
      "listener_id" : "427eee03-b569-4d6c-b1f1-712032f7ec2d",
      "operating_status" : "NO_MONITOR"
    } ],
    "ip_version" : "v4"
  },
  "request_id" : "f354090d-41db-41e0-89c6-7a943ec50792"
}

Códigos de estado

Código de estado

Descripción

201

Respuesta normal a las solicitudes POST.

Códigos de error

Consulte Códigos de error.