Creación de un equilibrador de carga de aplicación
Puede crear un IBM Cloud® Application Load Balancer for VPC (ALB) para distribuir el tráfico de entrada entre varias instancias. Puede utilizar el ALB con instancias de servidor virtual, instancias de servidor bare metal y otros dispositivos que tengan direcciones IP accesibles al equilibrador de carga, como instancias de Power Systems™ Virtual Server conectadas a través de IBM Cloud Direct Link.
Creación de un equilibrador de carga de aplicaciones en la consola
Para crear un ALB:
-
Desde tu navegador, abre la consola de IBM Cloud e inicia sesión en tu cuenta.
-
Seleccione el
del menú de Navegación, luego haga clic en el ícono Infraestructura
> Red > Balanceadores de carga.
-
En la página «Equilibradores de carga para VPC», haz clic en « Crear ».
-
En el tipo de equilibrador de carga, selecciona el mosaico « Equilibrador de carga de aplicaciones (ALB) ».
-
En la sección «Ubicación», modifica el siguiente campo si es necesario.
- Región: indica la región en la que desea crear el equilibrador de carga.
-
En la sección Detalles, complete la información siguiente:
-
Nombre: especifique un nombre para el equilibrador de carga, como por ejemplo
my-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. -
Nube privada virtual: seleccione la VPC.
-
Subredes: seleccione las subredes en las que desea crear el equilibrador de carga. Para maximizar la disponibilidad de la aplicación, seleccione subredes de diferentes zonas.
No puede asignar más de 15 subredes por ALB.
-
Tipo: seleccione el tipo de equilibrador de carga.
- Un equilibrador de carga público tiene una dirección IP pública, lo que significa que puede redirigir las solicitudes de los clientes a través de Internet.
- Un equilibrador de carga privado tiene una dirección IP privada, lo que significa que solo pueden acceder a él los clientes internos que se encuentren dentro de la misma región y VPC.
-
Tipo de DNS: Selecciona « Público » o « Privado ». Las zonas DNS privadas solo se pueden resolver en IBM Cloud, y únicamente desde redes autorizadas explícitamente en una cuenta o con acceso entre cuentas.
Sólo para el tipo Privado, haga clic en Enlazar para introducir la instancia DNS y la información de la zona y, a continuación, haga clic en Enlazar.
-
-
En la sección «Grupos de back-end», haz clic en «Crear» e introduce la siguiente información para crear un grupo de back-end. Puede crear una o varias agrupaciones.
- Nombre: especifique un nombre para la agrupación, como por ejemplo
my-pool. - Protocolo del grupo: Selecciona el protocolo para tus instancias de este grupo. El protocolo del pool debe ser compatible con su protocolo de escucha. Para los oyentes de HTTP o HTTPS, utilice HTTP como protocolo de grupo. Para los oyentes de TCP, utilice TCP como protocolo de grupo.
- Retención de sesiones: seleccione si todas las solicitudes durante una sesión de usuario se envían a la misma instancia.
- Protocolo proxy: Selecciona «Desactivado» (valor predeterminado), «Versión 1» o «Versión 2» (versiones del encabezado del protocolo proxy). El protocolo proxy añade un encabezado de protocolo proxy a los paquetes TCP, HTTP y HTTPS que se envían al grupo de servidores back-end. Esta configuración permite a los servidores back-end obtener la dirección IP y el puerto del cliente que el equilibrador de carga establece en el encabezado del protocolo proxy.
- Método: seleccione cómo desea que el equilibrador de carga distribuya el tráfico entre las instancias de la agrupación:
- Menos conexiones: las solicitudes se reenvían a la instancia que en ese momento tiene el menor número de conexiones.
- 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, supongamos que tiene las instancias A, B y C, y sus ponderaciones se establecen en
60,60y30. Las instancias A y B reciben el mismo igual de conexiones y la instancia C recibe la mitad de conexiones.
- Comprobación de estado: configure cómo el equilibrador de carga comprueba el estado de las instancias.
- Vía de acceso de comprobación de estado: la vía de acceso 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 (seg.): Intervalo en segundos entre dos intentos consecutivos de comprobación del estado. De forma predeterminada, se envían comprobaciones de estado cada 5 segundos.
- Tiempo de espera (segundos): tiempo máximo que el sistema espera una respuesta a una solicitud de comprobación de estado. De forma predeterminada, el equilibrador de carga espera 2 segundos para obtener una respuesta.
- 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 se declare que una instancia no está en buen estado. De forma predeterminada, se deja de considerar que una instancia está en buen estado después de dos comprobaciones de estado fallidas.
- Vía de acceso de comprobación de estado: la vía de acceso 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 (
- Nombre: especifique un nombre para la agrupación, como por ejemplo
-
(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 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.
-
-
Pulse Crear para crear la agrupación de fondo.
Puede conectar instancias de servidor tras crear la agrupación de fondo.
-
Para añadir una instancia de servidor a la nueva agrupación, pulse Conectar servidor en la columna Instancias de servidor de la tabla.
-
Para añadir dispositivos VPC a la agrupación como, por ejemplo, instancias de servidor virtual y servidores nativos, seleccione la pestaña Dispositivos VPC. Especifique la información siguiente para cada instancia:
-
Seleccione una o varias subredes desde las que seleccionar una instancia.
-
Seleccione una instancia de . Si una instancia tiene varias interfaces, asegúrese de seleccionar la dirección IP correcta.
-
Especifique el puerto en el que se envía el tráfico a la instancia.
-
Si la agrupación utiliza el método Round robin ponderado, asigne una ponderación a cada instancia.
La asignación de una ponderación de
0a una instancia significa que no se reenvían nuevas conexiones a esa instancia, pero todo el tráfico existente continúa fluyendo mientras la conexión actual esté activa. La utilización de una ponderación de0puede ayudar a desactivar una instancia correctamente y eliminarla de la rotación de servicio. -
Pulse Configurar puerto y ponderación y, a continuación, especifique el puerto en el que se envía el tráfico a la instancia.
-
-
Para conectar otras instancias de servidor a la agrupación de fondo como, por ejemplo, los servidores contenidos en un IBM Power Systems Virtual Server, seleccione la pestaña Otros y, a continuación, pulse Añadir más. Especifique la información siguiente para cada instancia:
-
Especifique una dirección IP privada para el dispositivo.
-
Especifique el puerto en el que se envía el tráfico a la instancia.
-
Si la agrupación utiliza el método Round robin ponderado, asigne una ponderación a cada instancia.
La asignación de una ponderación de
0a una instancia significa que no se reenvían nuevas conexiones a esa instancia, pero todo el tráfico existente continúa fluyendo mientras la conexión actual esté activa. La utilización de una ponderación de0puede ayudar a desactivar una instancia correctamente y eliminarla de la rotación de servicio.
-
-
Pulse Conectar para conectar la instancia de servidor a la agrupación de fondo.
-
-
En la sección Escuchas frontales, pulse Crear escucha y especifique la siguiente información para crear un escucha. Puede crear uno o varios escuchas.
- Protocolo: el protocolo que se debe utilizar para recibir las solicitudes entrantes.
- Protocolo de proxy: Seleccione si desea permitir que el escucha frontal acepte el tráfico de protocolo de proxy.
- Puerto: el puerto de escucha en el que se reciben las solicitudes.
- Agrupación de fondo: la agrupación de fondo predeterminada a la que este escucha reenvía el tráfico.
- Número máximo de conexiones (opcional): número máximo de conexiones simultáneas que permite el escucha.
- Autorización IAM: Si HTTPS es el protocolo seleccionado para este oyente, debe designar su autorización IAM, ya sea por instancia o por su CRN.
- Secrets Manager: Si HTTPS es el protocolo seleccionado para este oyente, debe seleccionar o crear un administrador de secretos.
- Certificado SSL: si el protocolo seleccionado para este escucha es HTTPS, debe seleccionar un certificado SSL. Asegúrese de que el equilibrador de carga tiene autorización para acceder al certificado SSL.
- Tiempo de espera (seg) (opcional): el tiempo de espera máximo después del cual el equilibrador de carga cierra la conexión si no se han enviado o recibido datos en el momento en que transcurre el periodo de tiempo de espera desocupado. Los valores mínimo y máximo del tiempo de espera son 50 segundos y 2 horas. Estos valores son tanto para el cliente como para el servidor. Para aumentar el límite de tiempo de espera a más de 2 horas, cree un caso de soporte proporcionando el requisito de negocio para el valor de tiempo de espera requerido.
-
Pulse Crear para crear el escucha frontal.
-
En la sección Grupos de seguridad, seleccione los grupos de seguridad que desee conectar a su equilibrador de carga o pulse Crear para crear un nuevo grupo de seguridad para conectarlo a su ALB.
Asegúrese de que el grupo de seguridad permita el tráfico del equilibrador de carga (puertos de escucha, de fondo y de comprobación de estado). Si no especifica un grupo de seguridad, se adjunta el grupo de seguridad predeterminado de su VPC.
-
Cuando termine de crear agrupaciones y escuchas, pulse Crear equilibrador de carga.
-
Para ver los detalles de un equilibrador de carga existente, pulse el nombre del equilibrador de carga en la página Equilibradores de carga.
-
Opcionalmente, puede crear una copia de seguridad para cualquiera de sus grupos existentes. Esto permite al grupo de reserva gestionar el tráfico si falla un miembro. Para ello, debe crear una política a prueba de fallos:
-
Sólo los balanceadores de carga de aplicaciones permiten asociar más de un pool a un único listener.
-
Asegúrese de que existe al menos un grupo en el equilibrador de carga.
Un listener es el recurso padre en un balanceador de carga. Puede asociar pools con un listener directamente (estableciéndolo como
default_pool) o indirectamente (haciendo referencia a él a través delfailsafe_policy.targetde otro pool). El pool referenciado indirectamente ya debe estar vinculado al listener. -
Después de que el estado de su balanceador de carga cambie a Activo, seleccione la pestaña Back-end pools (Grupos de servidores back-end).
-
En la página de la lista de grupos, haz clic en «Editar» y, a continuación, introduce la siguiente información:
- Acción: Seleccione reenviar para configurar la política a prueba de fallos. Esto reenvía el tráfico a un grupo de reserva cuando fallan los miembros y hace que la sección de destino esté activa.
- Objetivo: Seleccione un pool de la lista de pools compatibles como pool de copia de seguridad.
-
-
Si desea redirigir el tráfico de un escucha HTTP a un escucha HTTPS, puede crear un escucha HTTP con valores de redirección HTTPS.
Las políticas de equilibrio de carga de capa 7 sobrescriben los valores que define aquí. Además, ten en cuenta que debe existir ya un listener HTTPS antes de crear un nuevo listener HTTP con redirección a HTTPS.
Para ello:
- Una vez que el estado del equilibrador de carga haya cambiado a Activo, pulse la pestaña Escuchas frontales.
- En la página de lista del escucha, pulse Crear y, a continuación, especifique la información siguiente:
- Protocolo: Seleccione HTTP como protocolo.
- Puerto: elija el puerto de escucha en el que se reciben las solicitudes.
- Máximo de conexiones (opcional): defina el número máximo de conexiones simultáneas que permite el escucha.
- Redirección de HTTPS: pulse el botón de conmutador para habilitar la configuración de la redirección HTTPS y, a continuación, especifique los siguientes valores de redirección HTTPS:
- HTTPS listener: El listener HTTPS de destino al que se redirige el tráfico entrante del listener HTTP actual. Ten en cuenta que solo se muestra una lista de los oyentes de « HTTPS » cuyo valor «
accept_proxy_protocol» sea el mismo que el del oyente « HTTP ». - URI de redirección (opcional): URL al que se redirige la solicitud.
- Código de estado: código de estado de la respuesta devuelta por el equilibrador de carga.
- HTTPS listener: El listener HTTPS de destino al que se redirige el tráfico entrante del listener HTTP actual. Ten en cuenta que solo se muestra una lista de los oyentes de « HTTPS » cuyo valor «
-
Si desea redirigir, reenviar o rechazar el tráfico entrante en particular para un escucha frontal HTTP o HTTPS basado en determinados criterios, configure las políticas de la capa 7.
- Cuando el estado del equilibrador de carga cambie a Activo, pulse Escuchas frontales en el área de navegación y pulse el valor en la columna Políticas para el escucha que ha creado.
- En la página Políticas, pulse Añadir política y especifique la información siguiente para crear una política. Puede crear varias políticas.
- Nombre: especifique un nombre para la política, como por ejemplo
my-policy. El nombre debe ser exclusivo dentro del escucha. - Acción: la acción que se debe realizar cuando se cumplen todas las reglas para la política. Puede rechazar una solicitud con una respuesta 403, redirigir la solicitud a un URL configurado y un código de respuesta, redirigir el tráfico de un escucha HTTP a un escucha HTTPS o reenviar la solicitud a una agrupación de fondo específica. Si una solicitud de entrada no coincide con las reglas de las políticas, la solicitud se reenvía a la agrupación de fondo predeterminada del escucha.
- Prioridad: dentro de cada tipo de acción, las políticas se evalúan en orden ascendente de prioridad. Las políticas para rechazar el tráfico siempre se evalúan en primer lugar, independientemente de su prioridad. Después se evalúan las políticas para redirigir el tráfico, seguidas de las políticas para reenviar el tráfico.
- Redirigir: el URL al que se redirige la solicitud, si la acción se ha definido en Redirigir. Debe proporcionar un URI completo ( URL ) o los parámetros de un URI. Cuando se utiliza un URL, todo el
tráfico entrante se redirige a este URL. Cuando se utilizan parámetros URI, los valores de la solicitud de tráfico entrante se pueden conservar utilizando los valores entrantes de los parámetros. Esto incluye el protocolo, el puerto,
el host, la ruta y la consulta. Los valores por defecto de los parámetros URI son iguales a sus valores originales de entrada. Para conservar los valores entrantes, proporciónelos como
{protocol},{port},{host},{path}, y{query}. Por ejemplo, si el host de la solicitud entrante esibm.com, entonces el valor por defecto es{host}igual al valor entranteibm.com. - Código de estado: el código de estado de la respuesta que devuelve el equilibrador de carga, si la acción se ha establecido en Redirigir.
- Reenviar: la agrupación de fondo de instancias de servidor virtual a las que se reenvía la solicitud, si la acción se ha establecido en Reenviar a agrupación.
- Nombre: especifique un nombre para la política, como por ejemplo
- En la página Políticas, también puede crear una política de redirección HTTPS con la configuración siguiente:
- Nombre: especifique un nombre para la política, como por ejemplo
my-policy. El nombre debe ser exclusivo dentro del escucha. - Acción: seleccione la opción Redirigir a HTTPS.
- HTTPS listener: El listener HTTPS de destino al que se redirige el tráfico del listener HTTP actual. Ten en cuenta que solo se muestra una lista de los oyentes de « HTTPS » cuyo valor «
accept_proxy_proxy» sea el mismo que el del oyente « HTTP ». - URI de redirección (opcional): URL al que se redirige la solicitud.
- Código de estado: código de estado de la respuesta devuelta por el equilibrador de carga.
- Nombre: especifique un nombre para la política, como por ejemplo
- En la página Políticas, pulse Añadir regla para la política. Si existen reglas para la política, pulse el valor de la columna Reglas para añadir más reglas.
- En la ventana Reglas, pulse Añadir regla y especifique la información siguiente para crear una regla. Si crea varias reglas para una política, esta solo se aplica cuando se cumplen todas sus reglas.
- Condición: especifica la condición con la que se evalúa una regla.
- Tipo: el tipo de información que debe evaluar la regla: el nombre del host desde el que se ha originado la solicitud, un campo de cabecera HTTP o una vía de acceso en el URL.
- Valor: el valor que se va a comparar.
- Clave: el nombre del campo de cabecera HTTP que se va a evaluar, si el tipo de regla es Cabecera. Por ejemplo, para comparar una cookie en la cabecera HTTP, escriba Cookie para la clave.
Creación de un equilibrador de carga de aplicaciones desde la CLI
El siguiente ejemplo muestra cómo utilizar la interfaz de línea de comandos (CLI) para crear un equilibrio de carga de aplicación ( Application Load Balancer for VPC, ALB). En este ejemplo, está delante de una instancia de servidor virtual de
VPC (id 0716_6acdd058-4607-4463-af08-d4999d983945) ejecutando 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 un equilibrador de carga de aplicaciones desde la CLI, sigue estos pasos:
-
Configure el entorno de la CLI.
-
Utilice el terminal para iniciar sesión en la cuenta utilizando la CLI. Después de especificar la contraseña, el sistema solicita qué cuenta y región desea utilizar:
ibmcloud login --sso -
Cree un equilibrador de carga:
ibmcloud is load-balancer-create alb-test public --subnet 0896-b1f24514-89dc-4afd-b0e2-5489a43cf45c --family applicationSalida de ejemplo:
ibmcloud is load-balancer-create my-lb public --subnet my-subnet Creating load balancer my-lb under account vpcdemo as user test@ibm.com.. ID r026-ec6717fa-aa6c-46c4-94ff-4ccd193ee423 Name my-lb CRN crn:v1:bluemix:public:is:au-syd:a/7f75c7b025e54bc5635f754b2f888665::load-balancer:r026-ec6717fa-aa6c-46c4-94ff-4ccd193ee423 Family application Host name ec6717fa-au-syd.lb.appdomain.cloud Subnets ID Name 02h7-16f74a61-b586-4143-92df-dbc4a047bd5c my-subnet Public IPs Private IPs Provision status create_pending Operating status offline Is public true Is private path false Listeners Pools ID Name Resource group ID Name bdd96715c2a44f2bb60df4ff14a543f5 - Created 2026-05-26T14:47:06+05:30 Availability subnet Instance Group Supported true SourceIP Session Supported true Security groups supported true UDP Supported false Failsafe policy actions fail,drop,forward Access mode public Advanced Health Checks Supported true FQDN Pool Members Supported true -
Cree una agrupación:
ibmcloud is load-balancer-pool-create alb-pool r134-1b3d2967-d395-4023-8705-829454081e23 weighted_round_robin tcp 10 --failsafe-policy-action forward --failsafe-policy-target pool2Salida de ejemplo:
Creating pool alb-pool of load balancer r006-99b5ab45-6357-42db-8b32-5d2c8aa62776 under account IBM Cloud Network Services as user test@ibm.com... ID r006-3b66d605-6aa5-4166-9f66-b16054da3cb0 Name alb-pool Protocol tcp Algorithm weighted_round_robin Instance group ID Name - - Health monitor Type Port Health monitor URL Delay Retries Timeout http 8080 / 10 2 5 Failsafe policy Action Target ID Target name Healthy Member Threshold Count forward r006-815e16e7-8729-4d9e-9203-936a6b615ee1 pool2 0 Session persistence type source_ip Members Provision status active Created 2020-08-27T14:45:42.038-05:00 -
Cree un miembro:
ibmcloud is load-balancer-pool-member-create r006-99b5ab45-6357-42db-8b32-5d2c8aa62776 r006-3b66d605-6aa5-4166-9f66-b16054da3cb0 9090 0716_6acdd058-4607-4463-af08-d4999d983945 --weight 70Salida de ejemplo:
Creating member of pool r006-3b66d605-6aa5-4166-9f66-b16054da3cb0 under account IBM Cloud Network Services as user test@ibm.com... ID r006-61f8b000-a90d-4abe-909e-c507dffec565 Port 9090 Target 0716_6acdd058-4607-4463-af08-d4999d983945 Weight 70 Health unknown Created 2020-08-27T14:59:55.446-05:00 Provision status create_pending -
Cree un escucha:
$ibmcloud is load-balancer-listener-create r006-99b5ab45-6357-42db-8b32-5d2c8aa62776 7070 tcp --default-pool r006-3b66d605-6aa5-4166-9f66-b16054da3cb0 -idle-connection-timeout 30Salida de ejemplo:
$ibmcloud is load-balancer-listener-create r006-99b5ab45-6357-42db-8b32-5d2c8aa62776 7070 tcp --default-pool r006-3b66d605-6aa5-4166-9f66-b16054da3cb0 -idle-connection-timeout 30 Sample output: Creating listener of load balancer r006-99b5ab45-6357-42db-8b32-5d2c8aa62776 under account IBM Cloud Network Services as user test@ibm.com... ID r006-2847a948-f9b6-4fc1-91c6-f1c49dac3eba Certificate instance - Connection limit - Idle connection timeout 30 Port 7070 Protocol tcp Default pool r006-3b66d605-6aa5-4166-9f66-b16054da3cb0 Provision status create_pending Created 2020-08-27T15:16:08.643-05:00Para obtener más opciones, consulte VPC CLI reference for load balancers.
-
Cree una política:
ibmcloud is load-balancer-listener-policy-create 72251a2e-d6c5-42b4-97b0-b5f8e8d1f479 72b27b5c-f4b0-48bb-b954-5becc7c1dcb3 --action redirect --priority 2 --target-http-status-code 301 --target-url "https://{host}:443/{path}"Salida de ejemplo:
Creating policy of load balancer listener 72b27b5c-f4b0-48bb-b954-5becc7c1dcb3 under account IBM Cloud Network Services as user test@ibm.com... ID r006-4847a949-f9b6-4fc1-71c6-d1c49dac3ebc Action redirect Priority 2 Http status code 301 Target Url https://{host}:443/{path} Provision status create_pending Created 2024-04-23T15:16:08.643-05:00 -
Obtenga los detalles sobre el equilibrador de carga:
ibmcloud is load-balancer r006-99b5ab45-6357-42db-8b32-5d2c8aa62776Salida de ejemplo:
Getting load balancer r006-99b5ab45-6357-42db-8b32-5d2c8aa62776 under account IBM Cloud Network Services as user test@ibm.com... ID r006-99b5ab45-6357-42db-8b32-5d2c8aa62776 Name alb-test CRN crn:v1:public:is:us-south-1:a/123456::load-balancer:r006-99b5ab45-6357-42db-8b32-5d2c8aa62776 Family Application Host name 99b5ab45-us-south.lb.test.appdomain.cloud Subnets ID Name 0896-b1f24514-89dc-4afd-b0e2-5489a43cf45c alb-subnet Public IPs 150.238.50.78, 150.238.54.95 Private IPs 10.240.0.58, 10.240.0.59 Provision status active Operating status online Is public true Listeners r006-2847a948-f9b6-4fc1-91c6-f1c49dac3eba Pools ID Name r006-3b66d605-6aa5-4166-9f66-b16054da3cb0 alb-pool Resource group ID Name 3021f90279574ce287dd5fba82c08899 Default Created 2020-08-27T14:34:34.732-05:00
Creación de un equilibrador de carga de aplicaciones mediante la API
El ejemplo siguiente muestra el uso de la API para crear un equilibrador de carga de aplicaciones delante de dos instancias de servidor virtual VPC (192.168.100.5 y 192.168.100.6) que ejecutan una aplicación web que
escucha en el puerto 80. El equilibrador de carga tiene un escucha frontal, que permite el acceso seguro a la aplicación web mediante HTTPS.
El ejemplo omite los pasos de requisito previo para utilizar la API para suministrar una VPC, subredes e instancias.
Para crear un equilibrador de carga de aplicaciones mediante la API, sigue estos pasos:
-
Configure el entorno de la API.
-
Almacene los valores siguientes en variables que se utilizarán en el mandato de la API:
ResourceGroupId: en primer lugar, obtenga el grupo de recursos y luego rellene la variable:
export ResourceGroupId=<your_resourcegroup_id>También puede encontrar el ID de su grupo de recursos utilizando la consola IBM Cloud. Desde tu navegador, abre la consola de IBM Cloud e inicia sesión en tu cuenta. Seleccione Gestionar > Cuenta > Grupos de recursos.
-
Cree un equilibrador de carga con un listener, un pool e instancias de servidor adjuntas (miembros del pool) con el siguiente código de ejemplo:
curl -H "Authorization: Bearer $iam_token" -X POST "$vpc_api_endpoint/v1/load_balancers?version=$api_version&generation=2" \ -d @alb_create_payload.json Where alb_create_payload.json has the following content: '{ "name": "example-balancer", "is_public": true, "listeners": [ { "certificate_instance": { "crn": "crn:v1:bluemix:public:cloudcerts:us-south:a/123456:b8877ea4-b8eg-467e-912a-da1eb7f031cg:certificate:43219c4c97d013fb2a95b21dddde1234" }, "port": 443, "protocol": "https", "idle_connection_timeout" : 80, "default_pool": { "name": "example-pool" } } ], "pools": [ { "algorithm": "round_robin", "health_monitor": { "delay": 5, "max_retries": 2, "timeout": 2, "type": "tcp", "url_path": "/" }, "name": "example-pool", "protocol": "tcp", "session_persistence": { "cookie_name": "string", "type": "source_ip" }, "members": [ { "port": 80, "target": { "address": "192.168.100.5" }, "weight": 50 }, { "port": 80, "target": { "address": "192.168.100.6" }, "weight": 50 } ] } ], "subnets": [ { "id": "7ec87131-1c7e-4990-b4f0-a26f2e61f98e" } ] }'Para obtener más opciones, consulte Referencia de la API de VPC para balanceadores de carga.
Salida de ejemplo:
{ "created_at": "2018-07-12T23:17:07.5985381Z", "crn": "crn:v1:bluemix:public:is:us-south:a/123456::load-balancer:dd754295-e9e0-4c9d-bf6c-58fbc59e5727", "hostname": "ac34687d.lb.appdomain.cloud", "href": "https://us-south.iaas.cloud.ibm.com/v1/load_balancers/dd754295-e9e0-4c9d-bf6c-58fbc59e5727", "id": "0738-dd754295-e9e0-4c9d-bf6c-58fbc59e5727", "is_public": true, "profile": { "name": "network-fixed" }, "listeners": [ { "id": "0738-70294e14-4e61-11e8-bcf4-0242ac110004", "href": "https://us-south.iaas.cloud.ibm.com/v1/load_balancers/dd754295-e9e0-4c9d-bf6c-58fbc59e5727/listeners/70294e14-4e61-11e8-bcf4-0242ac110004" } ], "name": "example-balancer", "operating_status": "offline", "pools": [ { "id": "0738-70294e14-4e61-11e8-bcf4-0242ac110004", "href": "https://us-south.iaas.cloud.ibm.com/v1/load_balancers/dd754295-e9e0-4c9d-bf6c-58fbc59e5727/pools/70294e14-4e61-11e8-bcf4-0242ac110004", "name": "example-pool" } ], "provisioning_status": "create_pending", "resource_group": { "id": "56969d60-43e9-465c-883c-b9f7363e78e8" }, "subnets": [ { "id": "0738-7ec86020-1c6e-4889-b3f0-a15f2e50f87e", "href": "https://us-south.iaas.cloud.ibm.com/v1/subnets/7ec86020-1c6e-4889-b3f0-a15f2e50f87e", "name": "example-subnet" } ] }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 -
Obtenga los detalles sobre el equilibrador de carga
curl -H "Authorization: Bearer $iam_token" -X GET "$vpc_api_endpoint/v1/load_balancers/$lbid?version=$api_version&generation=2"Deje pasar un tiempo para que se complete el suministro. Cuando el equilibrador de carga está listo, se establece en el estado
onlineyactive, tal como se muestra en la siguiente salida de ejemplo:{ "id": "0738-dd754295-e9e0-4c9d-bf6c-58fbc59e5727", "crn": "crn:v1:bluemix:public:is:us-south:a/123456::load-balancer:dd754295-e9e0-4c9d-bf6c-58fbc59e5727", "href": "https://us-south.iaas.cloud.ibm.com/v1/load_balancers/dd754295-e9e0-4c9d-bf6c-58fbc59e5727", "name": "example-balancer", "created_at": "2018-07-13T22:22:24.489Z", "hostname": "dd754295-e9e0-4c9d-bf6c-58fbc59e5727.lb.appdomain.cloud", "is_public": true, "profile": { "name": "network-fixed" }, "listeners": [ { "id": "0738-70294e14-4e61-11e8-bcf4-0242ac110004", "href": "https://us-south.iaas.cloud.ibm.com/v1/load_balancers/dd754295-e9e0-4c9d-bf6c-58fbc59e5727/listeners/70294e14-4e61-11e8-bcf4-0242ac110004" } ], "operating_status": "online", "pools": [ { "id": "0738-70294e14-4e61-11e8-bcf4-0242ac110004", "href": "https://us-south.iaas.cloud.ibm.com/v1/load_balancers/dd754295-e9e0-4c9d-bf6c-58fbc59e5727/pools/70294e14-4e61-11e8-bcf4-0242ac110004", "name": "example-pool" } ], "private_ips": [ { "address": "192.168.10.5" }, { "address": "192.168.10.6" } ], "provisioning_status": "active", "public_ips": [ { "address": "169.11.111.115" }, { "address": "169.11.111.116" } ], "resource_group": { "id": "0738-56969d60-43e9-465c-883c-b9f7363e78e8" }, "subnets": [ { "id": "0738-7ec86020-1c6e-4889-b3f0-a15f2e50f87e", "href": "https://us-south.iaas.cloud.ibm.com/v1/subnets/7ec86020-1c6e-4889-b3f0-a15f2e50f87e", "name": "example-subnet" } ] }