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.
Centro de ayuda/ Elastic Load Balance/ Referencia de la API/ Ejemplos/ Consultar el ID de un ECS utilizado como servidor backend
Actualización más reciente 2022-11-17 GMT+08:00

Consultar el ID de un ECS utilizado como servidor backend

Escenarios

Llame a las API para obtener el ID de un ECS utilizado como servidor backend de un balanceador de carga.

Prerrequisitos

Ha creado un balanceador de carga, un grupo de servidores backend y un servidor backend.

Procedimiento

  1. Obtenga la dirección IP y el ID de subred del servidor backend con su ID.
    1. Envíe GET https://{elb_endpoint}/v3/{project_id}/elb/pools/{pool_id}/members/{member_id}. project_id indica el ID del proyecto, pool_id indica el ID del grupo del servidor backend y member_id indica el ID del servidor backend.
    2. Agregue X-Auth-Token al encabezado de solicitud.
    3. Compruebe la respuesta y obtenga la dirección IP y el ID de subred.
      • La solicitud se realiza correctamente si se muestra la siguiente respuesta:
        {
            "member": {
                "name": "My member",
                "weight": 10,
                "admin_state_up": false,
                "subnet_cidr_id": "c09f620e-3492-4429-ac15-445d5dd9ca74", //Subnet ID
                "project_id": "99a3fff0d03c428eac3678da6a7d0f24",
                "address": "120.10.10.16", //IP address
                "protocol_port": 89,
                "id": "1923923e-fe8a-484f-bdbc-e11559b1f48f",
                "operating_status": "NO_MONITOR",
                "ip_version": "v4"
            },
            "request_id": "45688823-45f1-40cd-9d24-e51a9574a45b"
        }
      • Si la solicitud es anormal, localice el fallo haciendo referencia a Códigos de error.
  2. Consulte el puerto de VPC basado en la dirección IP y el ID de subred del servidor backend.
    1. Envíe GET https://{vpc_endpoint}/v1/{project_id}/ports?fixed_ips=ip_address={ip_address}. project_id indica el ID del proyecto y ip_address indica la dirección IP obtenida en el paso 1.c.
      • La solicitud se realiza correctamente si se muestra la siguiente respuesta:
        {
            "ports": [
                {
                    "id": "d00f9c13-412f-4855-8af3-de5d8c24cd60",
                    "name": "test",
                    "status": "DOWN",
                    "admin_state_up": "true",
                    "fixed_ips": [
                        {
                            "subnet_id": "70f2e74b-e660-410a-b754-0ca46744348a",
                            "ip_address": "10.128.1.10"
                        }
                    ],
                    "dns_name": "",
                    "mac_address": "fa:16:3e:d7:f2:6c",
                    "network_id": "5b808927-13c9-4e60-a4f4-ed6ffe225167",
                    "tenant_id": "43f2d1cca56a40729dcb17212482f34d",
                    "device_id": "50f2e74b-e660-410a-b754-0ca43988348a",
                    "device_owner": "ELB",
                    "security_groups": [
                        "02b4e8ee-74fa-4a31-802e-5490df11245e"
                    ],
                    "extra_dhcp_opts": [],
                    "allowed_address_pairs": [],
                    "binding:vnic_type": "normal"
            ]
        }
    2. Recorra la lista de puertos obtenida y compruebe si fixed_ips contenidos en cada parámetro ports contienen subnet_id y si el valor de subnet_id es consistente con el ID de subred obtenido en el paso 1.c. Si se cumple este requisito, el puerto es el que se va a consultar, y el valor de device_id es el ID del ECS utilizado como servidor backend.