Creación de un equilibrador de carga de red de Private Path
Solo puede utilizar un equilibrador de carga de red de vía de acceso privada (NLB) con un servicio de vía de acceso privada. Cree el NLB de Private Path desde la página Balanceadores de carga para VPC o como parte del proceso de aprovisionamiento de servicios de Private Path. Puede crear un equilibrador de carga de red Private Path mediante la consola, CLI, API o Terraform.
Private Path permite a los proveedores de servicios habilitar y gestionar la conectividad privada para los consumidores de su servicio alojado. El servicio Private Path requiere un NLB Private Path para establecer una conexión segura con la pasarela Virtual Private Endpoint (VPE) de cada consumidor. Para obtener más información, consulte Acerca de los servicios de vía de acceso privada.
Los NLB de ruta privada admiten la función de intervalo de puertos. Actualmente, todos los VPEs conectados a un NLB de Private Path pueden conectarse a cualquier puerto del rango. Para obtener más información, consulte Configuración de rangos de puertos del equilibrador de carga de red pública.
Antes de empezar
Revisa los siguientes requisitos para asegurarte de que tu NLB de ruta privada está correctamente configurado:
- Si no dispones de una VPC, crea una en la misma región en la que quieras crear tu NLB de ruta privada. Utilice la misma región de VPC para el NLB de vía de acceso privada y el servicio de vía de acceso privada.
- Cree sus instancias de servidor virtual antes de crear un NLB de ruta privada. Así se garantiza su pleno funcionamiento.
- Asegúrate de que tienes al menos una subred en la VPC seleccionada.
Puede crear un equilibrador de carga de red Private Path mediante la consola, CLI, API o Terraform.
Creación de un balanceador de carga de red Private Path en la consola
Para crear y configurar un « Network Load Balancer for VPC » en la consola de « IBM Cloud », sigue estos pasos:
-
Desde el navegador, abra la consola de IBM Cloud e inicie sesión en su cuenta.
-
Seleccione el
del menú de Navegación, luego haga clic en el ícono Infraestructura
> Red > Balanceadores de carga.
-
Pulse Crear en la parte superior derecha de la página.
-
Para el tipo de equilibrador de carga, seleccione el mosaico Equilibrador de carga de red (NLB).
-
En la sección Ubicación, edite los campos siguientes, si es necesario.
- Geografía: la geografía en la que desea crear el equilibrador de carga.
- Región: la región en la que desea crear el equilibrador de carga.
-
En la sección Detalles, complete la información siguiente:
- Nombre: Introduce un nombre para el equilibrador de carga, como por ejemplo
private-path-load-balancer. - Grupo de recursos: seleccione un grupo de recursos para el equilibrador de carga.
- Etiquetas: (Opcional) Añade etiquetas para organizarte mejor y encontrar tus recursos. Puede añadir más etiquetas posteriormente. Para obtener más información, consulte Cómo trabajar con etiquetas.
- Etiquetas de gestión de acceso: (Opcional) Añada etiquetas de gestión de acceso a los recursos para ayudar a organizar las relaciones de control de acceso. El único formato admitido para las etiquetas de gestión de accesos
es
key:value. Para obtener más información, consulte Control del acceso a los recursos mediante etiquetas. - Cloud privado virtual: seleccione la VPC en la que desea desplegar el equilibrador de carga.
- Subred: Selecciona una subred.
- Tipo: Seleccione Ruta privada.
- Nombre: Introduce un nombre para el equilibrador de carga, como por ejemplo
-
En la sección Grupos de backend, haga clic en Crear grupo, especifique la siguiente información y, a continuación, haga clic en Crear. Puede crear una o varias agrupaciones.
-
Escribe un nombre único para el grupo, como «
private-path-pool». -
Seleccione un protocolo para las instancias de esta agrupación. El protocolo de la agrupación debe coincidir con el protocolo del escucha asociado. Por ejemplo, si el escucha es TCP, el protocolo de la agrupación debe ser TCP.
-
Seleccione el método, que es el algoritmo de equilibrio de carga, en las opciones siguientes.
- Round robin: las solicitudes se envían a cada instancia en turnos. Todas las instancias reciben aproximadamente un mismo número de conexiones de cliente.
- Round robin ponderado: las solicitudes se envían a cada instancia en proporción a su ponderación asignada. Por ejemplo, si tiene las instancias A, B y C, y sus ponderaciones se han establecido en 60, 60 y 30, las instancias A y B reciben el mismo igual de conexiones y la instancia C recibe la mitad de conexiones.
-
Elija la permanencia en la sesión y seleccione Ninguna.
-
Especifique las siguientes opciones de comprobación de estado:
-
Ruta de comprobación de estado: la ruta de comprobación de estado solo es aplicable si se selecciona « HTTP » como protocolo de comprobación de estado. La vía de acceso de comprobación de estado especifica el URL que utiliza el equilibrador de carga para enviar las solicitudes de comprobación de estado HTTP a las instancias de la agrupación. De forma predeterminada, las comprobaciones de estado se envían a la vía de acceso raíz (
/). -
Protocolo de estado: el protocolo que utiliza el equilibrador de carga para enviar mensajes de comprobación de estado a las instancias de la agrupación.
-
Puerto de estado (opcional): el puerto al que se envían las solicitudes de comprobación de estado. De forma predeterminada, las comprobaciones de estado se envían en el mismo puerto en el que se envía el tráfico a la instancia.
-
Intervalo (segundos): el intervalo, expresado en segundos, entre dos intentos consecutivos de comprobación del estado.
-
Tiempo de espera (segundos): el tiempo máximo que el sistema espera una respuesta a una solicitud de comprobación de estado.
-
Número máximo de reintentos: el número máximo de intentos de comprobación de estado que realiza el equilibrador de carga antes de que una instancia se declare en mal estado. De forma predeterminada, se deja de considerar que una instancia está en buen estado después de dos comprobaciones de estado fallidas.
Aunque el equilibrador de carga deja de enviar conexiones a las instancias que no están en buen estado, el equilibrador de carga sigue supervisando el estado de estas instancias y reanuda su uso si se detecta que vuelven a estar en buen estado (es decir, si pasan correctamente dos intentos de comprobación de estado consecutivos).
Si las instancias del grupo no están en buen estado y crees que tu aplicación funciona correctamente, comprueba de nuevo los valores del protocolo de estado y de la ruta de estado. Compruebe también los grupos de seguridad conectados a las instancias para asegurarse de que las reglas permiten el tráfico entre el equilibrador de carga y las instancias.
-
-
-
(Opcional) Selecciona «Configuración de la solicitud» para personalizar los valores de la solicitud de comprobación de estado. Si no se especifican valores, se utilizan los ajustes predeterminados.
- Método de solicitud: Elige una de las siguientes opciones:
GEToPOST. Puedes personalizar los encabezados de la solicitud para ambos métodos. Si lo deseas, puedes personalizar el cuerpo de la solicitud al utilizar el métodoPOST. - Cuerpo de la solicitud: Incluye el cuerpo de la solicitud « HTTP » que se utilizará para las comprobaciones de estado. Si no se especifica lo contrario, las solicitudes de comprobación de estado no tendrán cuerpo de solicitud.
- Encabezado de host: Incluye el encabezado de host para garantizar que la solicitud utilice el protocolo HTTP/1.1. De lo contrario, el sistema utilizará por defecto HTTP/1.0.
- Añadir otros encabezados de solicitud: Añade uno o varios encabezados de solicitud adicionales.
- Nombre del encabezado: Para el método de solicitud «
GET», elige uno de los siguientes: «content-type», «accept», «authorization», «cookie», «origin», «referrer» o «user-agent». Para el método de solicitud «POST», elige una de las siguientes opciones: «content-type», «content-length», «application-json» o «accept-encoding». - Valor: Introduce el valor que corresponde al nombre de encabezado especificado.
En el caso de los equilibradores de carga de red de ruta privada (PPNLB), existe un problema conocido por el que los campos de solicitud y respuesta del monitor de estado no se devuelven en la respuesta de la API GET.
- Método de solicitud: Elige una de las siguientes opciones:
-
(Opcional) Selecciona «Configuración de respuesta» para personalizar los valores de respuesta de la comprobación de estado. Si no se especifican valores, se utilizan los ajustes predeterminados.
-
Cuerpo de la respuesta: Introduce el texto del cuerpo de la respuesta.
-
Código de respuesta: Puedes especificar varios valores separados por comas dentro del intervalo de 100 a 599. Para especificar un intervalo, utiliza XX. Por ejemplo, « 2XX » para el rango de 200-299.
HTTP envía datos en texto sin cifrar, que pueden ser interceptados, por lo que se considera inseguro. Se recomienda utilizar
httpsen lugar dehttpcomo protocolo. Para obtener más información, consulta « ¿Por qué HTTP no es seguro? ».Aunque el equilibrador de carga deja de enviar conexiones a las instancias que no están en buen estado, el equilibrador de carga sigue supervisando el estado de estas instancias y reanuda su uso si se detecta que vuelven a estar en buen estado (es decir, si pasan correctamente dos intentos de comprobación de estado consecutivos).
Si las instancias de la agrupación no están en buen estado y cree que la aplicación se está ejecutando correctamente, vuelva a comprobar los valores de protocolo de estado y de vía de acceso de estado. Compruebe también los grupos de seguridad conectados a las instancias para asegurarse de que las reglas permiten el tráfico entre el equilibrador de carga y las instancias.
-
-
Puede adjuntar miembros a su pool back-end ahora, o después de crear su NLB Private Path. Haga clic en Adjuntar en la fila de la tabla de su pool de back-end. Introduce la siguiente información y, a continuación, haz clic en « Adjuntar ».
-
Tipo de miembro: Añada instancias de servidor virtual, IP reservadas o un equilibrador de carga de aplicaciones como miembro. Para instancias de servidor virtual, adjunte cada tipo individualmente. Un miembro IP reservado puede estar vinculado a un servidor bare metal, a una interfaz primaria o secundaria de una instancia de servidor virtual o a una interfaz de red virtual.
Si adjunta un ALB como destino miembro a un pool NLB de ruta privada, no se podrán añadir otros miembros a dicho pool.
-
Subred: elija una subred.
-
En la lista de servidores, seleccione los servidores que desea conectar a la agrupación de fondo. Asegúrese de especificar valores válidos para cada puerto de servidor.
El equilibrador de carga de «Your Private Path» ofrece disponibilidad regional y es resistente a los fallos de zona, incluso si se selecciona una sola subred.
No es necesario crear varios balanceadores de carga Private Path ni especificar más de una subred para garantizar la resiliencia ante fallos de zona. La selección de subred sólo afecta a las direcciones IP asociadas al equilibrador de carga. Para obtener más información sobre cuántas instancias de servidor virtual puede adjuntar a un grupo back-end, consulte Cuotas y límites de servicio para balanceadores de carga de red Private Path.
Puede editar los miembros adjuntos haciendo clic en
en la fila del miembro que desea editar en la tabla de grupos de back-end. También puede eliminar miembros adjuntos seleccionando el icono
menos en la fila del miembro que desea eliminar. -
-
En la sección Front-end listeners (Oyentes front-end), haga clic en Create (Crear), especifique la siguiente información y, a continuación, haga clic en Create (Crear). Puede crear uno o varios escuchas.
- Grupo de servidores back-end predeterminado: el grupo de servidores back-end predeterminado al que este listener reenvía el tráfico.
- Protocolo de escucha: el protocolo que se debe utilizar para recibir las solicitudes entrantes ( TCP ).
- Puerto de escucha: el puerto en el que se reciben las solicitudes.
-
Revisa el resumen del pedido y, a continuación, haz clic en «Crear» para finalizar tu pedido.
Creación de un equilibrador de carga de red Private Path desde la CLI
El siguiente ejemplo muestra la creación de un NLB de ruta privada desde la CLI. En este ejemplo, el NLB de ruta privada está situado delante de una instancia de servidor virtual de VPC (ID 0716_6acdd058-4607-4463-af08-d4999d983945)
en la que se ejecuta un servidor TCP que escucha en el puerto 9090. El equilibrador de carga tiene un escucha frontal, que permite el acceso seguro al servidor TCP.
Para crear una ruta privada NLB mediante la CLI, siga estos pasos:
-
Configure el entorno de la CLI.
-
Inicia sesión en tu cuenta a través de la CLI. Una vez introducida la contraseña, el sistema te pedirá que elijas la cuenta y la región que deseas utilizar:
ibmcloud login --sso -
Crear un NLB de ruta privada:
ibmcloud is load-balancer-create ppnlb-test private-path --subnet cli-subnet-1 --family networkSalida de ejemplo:
Creating load balancer ppnlb-test in resource group under account IBM Cloud Network Services as user test@ibm.com... ID Name ppnlb-test CRN Family Network Host name Subnets ID Name cli-subnet-2 Public IPs Reserved IPs ID Address Subnet Provision status create_pending Operating status offline Is public false Is private path true Listeners Pools ID Name my-pool Resource group ID Name Default Created 2025-01-10T15:07:53+05:30 Availability region Instance Group Supported false SourceIP Session Supported false Security groups supported false UDP Supported false Access mode private_path -
Cree una agrupación:
ibmcloud is load-balancer-pool-create my-pool pp-nlb-test round_robin tcp 20 2 5 httpSalida de ejemplo:
Creating pool my-pool of load balancer my-pool under account IBM Cloud Network Services as user test@ibm.com... ID Name my-pool Protocol tcp Algorithm round_robin Instance group ID Name - - Proxy protocol disabled Health monitor Type Port Health monitor URL Delay Retries Timeout http - / 20 2 5 Session persistence type Type Cookie name - - Members Provision status create_pending Created 2025-01-10T20:44:57+05:30 -
Cree un miembro:
ibmcloud is load-balancer-pool-member-create test-ppnlb-1 test 3000 my-targetUn usuario puede crear un NLB de ruta privada dirigido a una instancia de servidor virtual, IP reservada o un balanceador de carga de aplicaciones (ALB). Cree un miembro con
my-targetcomomy-instanceomy-alb.Salida de ejemplo:
Creating member of pool test under account IBM Cloud Network Services as user test@ibm.com... ID test Port 3000 Target 10.240.66.14 Weight 50 Health unknown Created 0001-01-01T05:53:28+05:53 Provision status create_pending -
Cree un escucha:
ibmcloud is load-balancer-listener-create ppnlb-test --port-min 443 --protocol tcpSalida de ejemplo:
Creating listener of load balancer ppnlb-test under account IBM Cloud Network Services as user test@ibm.com... ID Certificate instance - Connection limit - Ports 443 Idle connection timeout - Protocol tcp Default pool - Accept proxy protocol false Provision status create_pending Created 2025-01-10T21:02:37+05:30 -
Obtenga los detalles sobre el equilibrador de carga:
ibmcloud is load-balancer ppnlb-testSalida de ejemplo:
Getting load balancer ppnlb-test under account IBM Cloud Network Services as user test@ibm.com... ID Name ppnlb-test CRN Family Network Host name Subnets ID Name nlb Public IPs Reserved IPs ID Address Subnet Provision status active Operating status online Is public false Is private path true Listeners Pools ID Name my-pool Resource group ID Name Default Created 2025-01-10T15:07:53+05:30 Availability region Instance Group Supported false SourceIP Session Supported false Security groups supported false UDP Supported false Access mode private_path
Creación de un equilibrador de carga de red mediante la API
El siguiente ejemplo ilustra la creación de un NLB de ruta privada con la API. El NLB detallado aquí está delante de dos instancias de servidor virtual de VPC (192.168.100.5 y 192.168.100.6) que ejecutan una aplicación
web que escucha en el puerto 80. Cuenta con un listener de front-end, que permite el acceso seguro a la aplicación web a través de HTTPS.
En este ejemplo se omiten los pasos previos necesarios para utilizar la API con el fin de aprovisionar una VPC, subredes e instancias.
Para crear un NLB de ruta privada con la API, siga estos pasos:
-
Configure el entorno de la API.
-
Almacene los valores siguientes en variables que se utilizarán en el mandato de la API:
subnetId-En primer lugar, obtenga la subred y, a continuación, llene la variable:
export subnetId=<your_subnet_id>targetId- En segundo lugar, obtenga la instancia de servidor virtual, la IP reservada o el equilibrador de carga de aplicaciones (ALB) que se encuentra en la misma VPC que la de la subred:
export targetId=<your_target_id> -
Crea un NLB de ruta privada con un listener, un grupo y instancias de servidor asociadas (miembros del grupo):
curl -H "Authorization: Bearer $iam_token" -X POST "$vpc_api_endpoint/v1/load_balancers?version=$api_version&generation=2" \ -d '{ "is_public": false, "is_private_path": true, "name": "my-load-balancer", "listeners": [ { "default_pool": { "name": "my-pool" }, "port_min": 80, "port_max": 80, "protocol": "tcp" } ], "subnets": [ { "id" : "$subnetId" } ], "pools": [ { "algorithm": "round_robin", "health_monitor": { "delay": 2, "max_retries": 1, "timeout": 1, "port": 80, "type": "tcp" }, "name": my-pool", "protocol": "tcp", "members" : [ { "port" : 80, "target" : {"id" : "$targetId"} } ] } ], "profile": { "name": "network-private-path" } }'Salida de ejemplo:
{ "availability": "region", "created_at": "2023-09-22T21:49:26.000Z", "crn": "crn:v1:bluemix:public:is:au-syd:a/b21af5a9874242b7851e780943d595a9::load-balancer:r026-d-86b51a9e-a058-4317-beed-8ee581a1f413", "hostname": ".invalid", "href": "https://au-syd.iaas.cloud.ibm.com/v1/load_balancers/r026-d-86b51a9e-a058-4317-beed-8ee581a1f413", "id": "r026-d-86b51a9e-a058-4317-beed-8ee581a1f413", "instance_groups_supported": false, "is_private_path": true, "is_public": false, "listeners": [ { "href": "https://au-syd.iaas.cloud.ibm.com/v1/load_balancers/r026-d-86b51a9e-a058-4317-beed-8ee581a1f413/listeners/r026-00b18a00-d860-4f4d-bb84-e29ffc2d8e47", "id": "r026-00b18a00-d860-4f4d-bb84-e29ffc2d8e47" } ], "logging": { "datapath": { "active": false } }, "name": "my-load-balancer", "operating_status": "offline", "pools": [ { "href": "https://au-syd.iaas.cloud.ibm.com/v1/load_balancers/r026-d-86b51a9e-a058-4317-beed-8ee581a1f413/pools/r026-f25e3f26-3aa6-4aef-9108-1587d3ac6679", "id": "r026-f25e3f26-3aa6-4aef-9108-1587d3ac6679", "name": "my-pool" } ], "private_ips": [ { "address": "10.245.0.4", "href": "https://au-syd.iaas.cloud.ibm.com/v1/subnets/02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02/reserved_ips/02h7-e21d477e-3e71-47fc-aec4-9703766cf652", "id": "02h7-e21d477e-3e71-47fc-aec4-9703766cf652", "name": "nugget-ounce-stability-vocation", "resource_type": "subnet_reserved_ip" }, { "address": "10.245.0.5", "href": "https://au-syd.iaas.cloud.ibm.com/v1/subnets/02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02/reserved_ips/02h7-1910c529-dadd-4960-aba5-3c4604f99f56", "id": "02h7-1910c529-dadd-4960-aba5-3c4604f99f56", "name": "impostors-synopses-uncivic-livable", "resource_type": "subnet_reserved_ip" }, { "address": "10.245.0.6", "href": "https://au-syd.iaas.cloud.ibm.com/v1/subnets/02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02/reserved_ips/02h7-a7e55150-5b02-426f-b1dc-aa136effc6ce", "id": "02h7-a7e55150-5b02-426f-b1dc-aa136effc6ce", "name": "unmade-garnish-preview-defame", "resource_type": "subnet_reserved_ip" }, { "address": "10.245.0.7", "href": "https://au-syd.iaas.cloud.ibm.com/v1/subnets/02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02/reserved_ips/02h7-ae009701-8301-420c-862e-a9ec1f79214c", "id": "02h7-ae009701-8301-420c-862e-a9ec1f79214c", "name": "slacking-scuttle-stonework-reptile", "resource_type": "subnet_reserved_ip" } ], "profile": { "family": "network", "href": "https://au-syd.iaas.cloud.ibm.com/v1/load_balancer/profiles/network-private-path", "name": "network-private-path" }, "provisioning_status": "create_pending", "public_ips": [], "resource_group": { "href": "https://resource-controller.cloud.ibm.com/v2/resource_groups/297468d87ca047c5be28368e52b055ce", "id": "297468d87ca047c5be28368e52b055ce", "name": "Default" }, "resource_type": "load_balancer", "route_mode": false, "security_groups": [], "security_groups_supported": false, "source_ip_session_persistence_supported": false, "subnets": [ { "crn": "crn:v1:bluemix:public:is:au-syd-1:a/b21af5a9874242b7851e780943d595a9::subnet:02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02", "href": "https://au-syd.iaas.cloud.ibm.com/v1/subnets/02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02", "id": "02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02", "name": "my-subnet", "resource_type": "subnet" } ], "udp_supported": false }Guarde el ID del equilibrador de carga que se va a utilizar en los pasos siguientes. Por ejemplo, guárdelo en la variable
lbid.lbid=0738-dd754295-e9e0-4c9d-bf6c-58fbc59e5727 -
Consulta los detalles sobre el equilibrador de carga de Private Path:
curl -H "Authorization: Bearer $iam_token" -X GET "$vpc_api_endpoint/v1/load_balancers/$lbid?version=$api_version&generation=2"Deje tiempo para el aprovisionamiento. Cuando el equilibrador de carga está listo, se establece en el estado
onlineyactive, tal como se muestra en la siguiente salida de ejemplo:{ "availability": "region", "created_at": "2023-09-22T21:49:26.000Z", "crn": "crn:v1:bluemix:public:is:au-syd:a/b21af5a9874242b7851e780943d595a9::load-balancer:r026-d-86b51a9e-a058-4317-beed-8ee581a1f413", "hostname": ".invalid", "href": "https://au-syd.iaas.cloud.ibm.com/v1/load_balancers/r026-d-86b51a9e-a058-4317-beed-8ee581a1f413", "id": "r026-d-86b51a9e-a058-4317-beed-8ee581a1f413", "instance_groups_supported": false, "is_private_path": true, "is_public": false, "listeners": [ { "href": "https://au-syd.iaas.cloud.ibm.com/v1/load_balancers/r026-d-86b51a9e-a058-4317-beed-8ee581a1f413/listeners/r026-00b18a00-d860-4f4d-bb84-e29ffc2d8e47", "id": "r026-00b18a00-d860-4f4d-bb84-e29ffc2d8e47" } ], "logging": { "datapath": { "active": false } }, "name": "my-load-balancer", "operating_status": "only", "pools": [ { "href": "https://au-syd.iaas.cloud.ibm.com/v1/load_balancers/r026-d-86b51a9e-a058-4317-beed-8ee581a1f413/pools/r026-f25e3f26-3aa6-4aef-9108-1587d3ac6679", "id": "r026-f25e3f26-3aa6-4aef-9108-1587d3ac6679", "name": "my-pool" } ], "private_ips": [ { "address": "10.245.0.4", "href": "https://au-syd.iaas.cloud.ibm.com/v1/subnets/02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02/reserved_ips/02h7-e21d477e-3e71-47fc-aec4-9703766cf652", "id": "02h7-e21d477e-3e71-47fc-aec4-9703766cf652", "name": "nugget-ounce-stability-vocation", "resource_type": "subnet_reserved_ip" }, { "address": "10.245.0.5", "href": "https://au-syd.iaas.cloud.ibm.com/v1/subnets/02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02/reserved_ips/02h7-1910c529-dadd-4960-aba5-3c4604f99f56", "id": "02h7-1910c529-dadd-4960-aba5-3c4604f99f56", "name": "impostors-synopses-uncivic-livable", "resource_type": "subnet_reserved_ip" }, { "address": "10.245.0.6", "href": "https://au-syd.iaas.cloud.ibm.com/v1/subnets/02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02/reserved_ips/02h7-a7e55150-5b02-426f-b1dc-aa136effc6ce", "id": "02h7-a7e55150-5b02-426f-b1dc-aa136effc6ce", "name": "unmade-garnish-preview-defame", "resource_type": "subnet_reserved_ip" }, { "address": "10.245.0.7", "href": "https://au-syd.iaas.cloud.ibm.com/v1/subnets/02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02/reserved_ips/02h7-ae009701-8301-420c-862e-a9ec1f79214c", "id": "02h7-ae009701-8301-420c-862e-a9ec1f79214c", "name": "slacking-scuttle-stonework-reptile", "resource_type": "subnet_reserved_ip" } ], "profile": { "family": "network", "href": "https://au-syd.iaas.cloud.ibm.com/v1/load_balancer/profiles/network-private-path", "name": "network-private-path" }, "provisioning_status": "active", "public_ips": [], "resource_group": { "href": "https://resource-controller.cloud.ibm.com/v2/resource_groups/297468d87ca047c5be28368e52b055ce", "id": "297468d87ca047c5be28368e52b055ce", "name": "Default" }, "resource_type": "load_balancer", "route_mode": false, "security_groups": [], "security_groups_supported": false, "source_ip_session_persistence_supported": false, "subnets": [ { "crn": "crn:v1:bluemix:public:is:au-syd-1:a/b21af5a9874242b7851e780943d595a9::subnet:02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02", "href": "https://au-syd.iaas.cloud.ibm.com/v1/subnets/02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02", "id": "02h7-ee9114e7-28d4-4416-bbfa-f274dbd49f02", "name": "my-subnet", "resource_type": "subnet" } ], "udp_supported": false }
Creación de un equilibrador de carga de red Private Path con Terraform
El siguiente ejemplo crea un balanceador de carga de red Private Path con Terraform:
-
Crear un NLB de ruta privada:
resource "ibm_is_lb" "example_ppnlb" { name = "example-ppnlb" subnets = [ibm_is_subnet.example_subnet.id] profile = "network-private-path" type = "private_path" } -
Opcionalmente, cree un pool para su Private Path NLB:
resource "ibm_is_lb_pool" "example_pool" { name = "example-pool" lb = [ibm_is_lb.example_ppnlb.id] algorithm = "round_robin" protocol = "tcp" health_delay = 2 health_retries = 2 health_timeout = 1 health_type = "tcp" } -
Opcionalmente, seleccione un ALB o un ID de instancia de servidor virtual como miembro del pool para su NLB de ruta privada:
resource "ibm_is_lb" "example_alb" { name = "example-alb" subnets = [ibm_is_subnet.example_subnet.id] }resource "ibm_is_lb_pool_member" "example_member" { lb = [ibm_is_lb.example_ppnlb.id] pool = element(split("/", ibm_is_lb_pool.example_pool.id), 1) port = 8080 weight = 20 target_id = [ibm_is_lb.example_alb.id] } -
Opcionalmente, seleccione una IP reservada como miembro del grupo para su NLB de ruta privada:
resource "ibm_is_subnet_reserved_ip" "example" { subnet = ibm_is_subnet.example.id }resource "ibm_is_lb_pool_member" "example" { lb = ibm_is_lb.example_ppnlb.id pool = element(split("/", ibm_is_lb_pool.example.id), 1) port = 8080 weight = 20 target_id = ibm_is_subnet_reserved_ip.example.id }
Para obtener documentación sobre los recursos de Terraform, consulta el Registro de Terraform.