Azure Global Load Balancer garantiza que un servicio esté disponible globalmente en múltiples regiones de Azure. Si falla una región, el tráfico se redirige al equilibrador de carga regional en buen estado más cercano.
En este tutorial, aprenderá a:
- Cree un equilibrador de carga global.
- Crear un grupo de backend que contenga dos equilibradores de carga regionales.
- Cree una regla de equilibrador de carga.
- Probar el equilibrador de carga.
Puede usar Azure Portal, la CLI de Azure o Azure PowerShell para completar este tutorial.
Requisitos previos
- Suscripción a Azure. Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
- Dos instancias de Azure Load Balancer con SKU Estándar con grupos de back-end implementados en dos regiones de Azure diferentes.
- Suscripción a Azure. Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
- Dos instancias de Azure Load Balancer con SKU Estándar con grupos de back-end implementados en dos regiones de Azure diferentes.
- Tener la CLI de Azure instalada localmente o usar Azure Cloud Shell.
Si decide instalar y usar la CLI localmente, para esta guía de inicio rápido se necesita la versión 2.0.28 de la CLI de Azure o una versión posterior. Para encontrar la versión, ejecute az --version. Si necesita instalarla o actualizarla, consulte Instalación de la CLI de Azure. Al ejecutar la CLI de Azure localmente, deberá iniciar sesión con az login para crear una conexión con Azure.
- Suscripción a Azure. Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
- Dos instancias de Azure Load Balancer con SKU Estándar con grupos de back-end implementados en dos regiones de Azure diferentes.
- Azure PowerShell instalado localmente o Azure Cloud Shell.
Si decide instalar y usar PowerShell de forma local, para realizar los pasos de este artículo necesita la versión 5.4.1 del módulo de Azure PowerShell o cualquier versión posterior. Ejecute Get-Module -ListAvailable Az para buscar la versión instalada. Si necesita actualizarla, consulte Instalación del módulo de Azure PowerShell. Si PowerShell se ejecuta localmente, también debe ejecutar Connect-AzAccount para crear una conexión con Azure.
Creación de un equilibrador de carga global
En esta sección, va a crear un equilibrador de carga global con una dirección IP pública, una configuración de IP de front-end, un grupo de back-end con equilibradores de carga regionales agregados y una regla de equilibrador de carga.
Creación del recurso del equilibrador de carga y otros recursos
Inicie sesión en Azure Portal.
En el cuadro de búsqueda que aparece en la parte superior del portal, escriba Load Balancer. Seleccione Equilibrador de carga en los resultados de la búsqueda.
En la página Equilibrador de carga, seleccione Crear.
En la pestaña Conceptos básicos de la página Crear equilibrador de carga, escriba o seleccione la siguiente información:
| Configuración |
Valor |
|
Detalles del proyecto |
|
| Suscripción |
Selecciona tu suscripción. |
| Grupo de recursos |
Seleccione Crear nuevo y escriba CreateCRLBTutorial-rg en el cuadro de texto. |
|
Detalles de instancia |
|
| Nombre |
Escriba myLoadBalancer-cr |
| Región |
Seleccione (EE. UU.) Este de EE. UU. . |
| Tipo |
Seleccione Público. |
| SKU |
Deje el valor predeterminado Estándar. |
| Nivel |
Seleccione Global. |
Seleccione Siguiente: Configuración de IP de front-end en la parte inferior de la página.
En Configuración de IP de front-end, seleccione + Agregar una IP de front-end.
Escriba LoadBalancerFrontend en Nombre en Agregar dirección IP de front-end.
Seleccione IPv4 o IPv6 para Versión de IP.
En Dirección IP pública, seleccione Crear nueva. Escriba myPublicIP-cr en Nombre. Seleccione Guardar en el cuadro de diálogo Agregar dirección IP pública.
Seleccione Guardar.
Seleccione Siguiente: Grupos de servidores back-end en la parte inferior de la página.
En Grupos de back-end, seleccione + Agregar un grupo de back-end.
Escriba myBackendPool-cr en el campo Nombre de Agregar grupo de back-end.
En Equilibradores de carga, seleccione myLoadBalancer-r1 o el primer equilibrador de carga regional en el cuadro desplegable Equilibrador de carga. Compruebe que la configuración de IP de front-end y la dirección IP correspondan a myLoadBalancer-r1.
Seleccione myLoadBalancer-r2 o el segundo equilibrador de carga regional en el cuadro desplegable Equilibrador de carga. Compruebe que la configuración de IP de front-end y la dirección IP correspondan a myLoadBalancer-r2.
Seleccione Agregar.
Seleccione Siguiente: Reglas de entrada en la parte inferior de la página.
En Reglas de entrada, seleccione + Agregar una regla de equilibrio de carga.
En Agregar regla de equilibrio de carga, escriba o seleccione la siguiente información:
| Configuración |
Valor |
| Nombre |
Escriba myHTTPRule-cr. |
| Versión de IP |
Seleccione IPv4 o IPv6 para Versión de IP. |
| Dirección IP del front-end |
Seleccione LoadBalancerFrontend. |
| Protocolo |
seleccione TCP. |
| Puerto |
Escriba 80. |
| Grupo de servidores back-end |
Seleccione myBackendPool-cr. |
| Persistencia de la sesión |
Seleccione Ninguno. |
| Tiempo de espera de inactividad (minutos) |
Introduzca o desplace el control deslizante hasta 15. |
| Restablecimiento de TCP |
Seleccione Habilitado. |
| Dirección IP flotante |
Deje el valor predeterminado, Deshabilitado. |
Seleccione Agregar.
En la parte inferior de la página, seleccione Revisar y crear.
En la pestaña Revisar y crear, seleccione Crear.
Nota:
La implementación del equilibrador de carga entre regiones se asigna a regiones de Azure específicas. Para ver la lista actual, consulte Regiones de origen en Azure para el equilibrador de carga entre regiones.
Crear un grupo de recursos
Un grupo de recursos de Azure es un contenedor lógico en el que se implementan y se administran los recursos de Azure.
Cree un grupo de recursos con az group create:
- Con el nombre myResourceGroupLB-CR.
- En la ubicación westus.
az group create \
--name myResourceGroupLB-CR \
--location westus
Creación del recurso del equilibrador de carga global
Cree un equilibrador de carga global con az network cross-region-lb create:
- Denominado myLoadBalancer-CR.
- Un grupo de servidores front-end llamado myFrontEnd-CR.
- Un grupo de servidores back-end llamado myBackEndPool-CR.
- Una dirección IP pública generada llamada PublicIPmyLoadBalancer-CR.
az network cross-region-lb create \
--name myLoadBalancer-CR \
--resource-group myResourceGroupLB-CR \
--frontend-ip-name myFrontEnd-CR \
--backend-pool-name myBackEndPool-CR
Crear la regla del balanceador de carga
Una regla de equilibrador de carga define:
- Configuración IP de frontend del tráfico entrante.
- El grupo de direcciones IP de back-end que recibe el tráfico.
- Los puertos de origen y de destino requeridos.
Cree una regla del equilibrador de carga con az network cross-region-lb rule create:
- Con el nombre myHTTPRule-CR
- Que escuche en el puerto 80 en el grupo de front-end myFrontEnd-CR.
- Enviar tráfico de red con equilibrio de carga al grupo de direcciones del backend myBackEndPool-CR mediante el puerto 80.
- Protocolo TCP.
az network cross-region-lb rule create \
--backend-port 80 \
--frontend-port 80 \
--lb-name myLoadBalancer-CR \
--name myHTTPRule-CR \
--protocol tcp \
--resource-group myResourceGroupLB-CR \
--backend-pool-name myBackEndPool-CR \
--frontend-ip-name myFrontEnd-CR
Creación de un grupo de back-end
En esta sección va a agregar dos equilibradores de carga estándar regionales al grupo de back-end del equilibrador de carga global.
Agregue los frontends regionales al balanceador de carga
En esta sección, se colocan en variables los identificadores de recurso de los frontends de dos equilibradores de carga regionales y, a continuación, se usan esas variables para agregar los frontends al grupo de direcciones de backend del equilibrador de carga global.
Recupere los identificadores de recurso con az network lb frontend-ip show.
Use az network cross-region-lb address-pool address add para agregar los front-ends que colocó en variables en el grupo de back-end del equilibrador de carga global:
region1id=$(az network lb frontend-ip show \
--lb-name myLoadBalancer-R1 \
--name myFrontEnd-R1 \
--resource-group CreatePubLBQS-rg-r1 \
--query id \
--output tsv)
az network cross-region-lb address-pool address add \
--frontend-ip-address $region1id \
--lb-name myLoadBalancer-CR \
--name myFrontEnd-R1 \
--pool-name myBackEndPool-CR \
--resource-group myResourceGroupLB-CR
region2id=$(az network lb frontend-ip show \
--lb-name myLoadBalancer-R2 \
--name myFrontEnd-R2 \
--resource-group CreatePubLBQS-rg-r2 \
--query id \
--output tsv)
az network cross-region-lb address-pool address add \
--frontend-ip-address $region2id \
--lb-name myLoadBalancer-CR \
--name myFrontEnd-R2 \
--pool-name myBackEndPool-CR \
--resource-group myResourceGroupLB-CR
Crear un grupo de recursos
Un grupo de recursos de Azure es un contenedor lógico en el que se implementan y se administran los recursos de Azure.
Cree un grupo de recursos con New-AzResourceGroup.
$rg = @{
Name = 'MyResourceGroupLB-CR'
Location = 'westus'
}
New-AzResourceGroup @rg
Crear recursos de balanceador de carga global
En esta sección creará los recursos necesarios para el equilibrador de carga global.
Utiliza una dirección IP pública de nivel Global Standard SKU para el frontend de Azure Global Load Balancer.
Para crear la dirección IP pública, use New-AzPublicIpAddress.
Cree una configuración IP de front-end con New-AzLoadBalancerFrontendIpConfig.
Cree un grupo de direcciones del backend con New-AzLoadBalancerBackendAddressPoolConfig.
Cree una regla del equilibrador de carga con Add-AzLoadBalancerRuleConfig.
Cree Azure Global Load Balancer con New-AzLoadBalancer.
## Create a Global tier public IP address for the load balancer
$ip = @{
Name = 'myPublicIP-CR'
ResourceGroupName = 'MyResourceGroupLB-CR'
Location = 'westus'
Sku = 'Standard'
Tier = 'Global'
AllocationMethod = 'Static'
}
$publicIP = New-AzPublicIpAddress @ip
## Create the frontend configuration
$fe = @{
Name = 'myFrontEnd-CR'
PublicIpAddress = $publicIP
}
$feip = New-AzLoadBalancerFrontendIpConfig @fe
## Create the backend address pool
$be = @{
Name = 'myBackEndPool-CR'
}
$bepool = New-AzLoadBalancerBackendAddressPoolConfig @be
## Create the load-balancer rule
$rul = @{
Name = 'myHTTPRule-CR'
Protocol = 'tcp'
FrontendPort = '80'
BackendPort = '80'
FrontendIpConfiguration = $feip
BackendAddressPool = $bepool
}
$rule = New-AzLoadBalancerRuleConfig @rul
## Create the Azure Global Load Balancer resource
$lbp = @{
ResourceGroupName = 'myResourceGroupLB-CR'
Name = 'myLoadBalancer-CR'
Location = 'westus'
Sku = 'Standard'
Tier = 'Global'
FrontendIpConfiguration = $feip
BackendAddressPool = $bepool
LoadBalancingRule = $rule
}
$lb = New-AzLoadBalancer @lbp
En esta sección va a agregar dos equilibradores de carga estándar regionales al grupo de back-end del equilibrador de carga global.
## Place the region one load balancer configuration in a variable ##
$region1 = @{
Name = 'myLoadBalancer-R1'
ResourceGroupName = 'CreatePubLBQS-rg-r1'
}
$R1 = Get-AzLoadBalancer @region1
## Place the region two load balancer configuration in a variable ##
$region2 = @{
Name = 'myLoadBalancer-R2'
ResourceGroupName = 'CreatePubLBQS-rg-r2'
}
$R2 = Get-AzLoadBalancer @region2
## Place the region one load balancer frontend configuration in a variable ##
$region1fe = @{
Name = 'MyFrontEnd-R1'
LoadBalancer = $R1
}
$R1FE = Get-AzLoadBalancerFrontendIpConfig @region1fe
## Place the region two load balancer frontend configuration in a variable ##
$region2fe = @{
Name = 'MyFrontEnd-R2'
LoadBalancer = $R2
}
$R2FE = Get-AzLoadBalancerFrontendIpConfig @region2fe
## Create the global backend address pool configuration for region 1 ##
$region1ap = @{
Name = 'MyBackendPoolConfig-R1'
LoadBalancerFrontendIPConfigurationId = $R1FE.Id
}
$beaddressconfigR1 = New-AzLoadBalancerBackendAddressConfig @region1ap
## Create the global backend address pool configuration for region 2 ##
$region2ap = @{
Name = 'MyBackendPoolConfig-R2'
LoadBalancerFrontendIPConfigurationId = $R2FE.Id
}
$beaddressconfigR2 = New-AzLoadBalancerBackendAddressConfig @region2ap
## Apply the backend address pool configuration for the global load balancer ##
$bepoolcr = @{
ResourceGroupName = 'myResourceGroupLB-CR'
LoadBalancerName = 'myLoadBalancer-CR'
Name = 'myBackEndPool-CR'
LoadBalancerBackendAddress = $beaddressconfigR1,$beaddressconfigR2
}
Set-AzLoadBalancerBackendAddressPool @bepoolcr
Prueba del equilibrador de carga
En esta sección va a probar el equilibrador de carga global. Se conectará a la dirección IP pública en un explorador web. Detendrá las máquinas virtuales de uno de los grupos de back-end del equilibrador de carga regional y observará la conmutación por error.
Busque la dirección IP pública de Load Balancer en la pantalla Información general. Seleccione Todos los servicios en el menú de la izquierda, seleccione Todos los recursos y, después, seleccione myPublicIP-cr.
Copie la dirección IP pública y péguela en la barra de direcciones del explorador. La página predeterminada del servidor web de IIS se muestra en el explorador.
Detenga las máquinas virtuales del grupo de back-end de uno de los equilibradores de carga regionales.
Actualice el explorador web y observe la conmutación por error de la conexión al otro equilibrador de carga regional.
En esta sección va a probar el equilibrador de carga global. Se conectará a la dirección IP pública en un explorador web. Detendrá las máquinas virtuales de uno de los grupos de back-end del equilibrador de carga regional y observará la conmutación por error.
Para obtener la dirección IP pública del equilibrador de carga, use az network public-ip show. El comando create generó el nombre de recurso IP público PublicIPmyLoadBalancer-CR a partir del nombre del balanceador de carga:
az network public-ip show \
--resource-group myResourceGroupLB-CR \
--name PublicIPmyLoadBalancer-CR \
--query ipAddress \
--output tsv
Copie la dirección IP pública y péguela en la barra de direcciones del explorador. La página predeterminada del servidor web de IIS se muestra en el explorador.
Detenga las máquinas virtuales del grupo de back-end de uno de los equilibradores de carga regionales.
Actualice el explorador web y observe la conmutación por error de la conexión al otro equilibrador de carga regional.
En esta sección va a probar el equilibrador de carga global. Se conectará a la dirección IP pública en un explorador web. Detendrá las máquinas virtuales de uno de los grupos de back-end del equilibrador de carga regional y observará la conmutación por error.
- Use Get-AzPublicIpAddress para obtener la dirección IP pública del equilibrador de carga:
$ip = @{
Name = 'myPublicIP-CR'
ResourceGroupName = 'myResourceGroupLB-CR'
}
Get-AzPublicIPAddress @ip | select IpAddress
Copie la dirección IP pública y péguela en la barra de direcciones del explorador. La página predeterminada del servidor web de IIS se muestra en el explorador.
Detenga las máquinas virtuales del grupo de back-end de uno de los equilibradores de carga regionales.
Actualice el explorador web y observe la conmutación por error de la conexión al otro equilibrador de carga regional.
Limpieza de recursos
Cuando no los necesite, elimine el grupo de recursos, el equilibrador de carga y todos los recursos relacionados.
Para ello, seleccione el grupo de recursos CreateCRLBTutorial-rg que contiene los recursos y, a continuación, seleccione Eliminar.
Cuando ya no se necesiten, use el comando az group delete para quitar el grupo de recursos, el equilibrador de carga y todos los recursos relacionados.
az group delete \
--name myResourceGroupLB-CR
Cuando ya no los necesite, puede usar el comando Remove-AzResourceGroup para quitar el grupo de recursos, el equilibrador de carga y el resto de los recursos.
Remove-AzResourceGroup -Name 'myResourceGroupLB-CR'
Pasos siguientes
En este tutorial, aprenderás a:
- Creó un equilibrador de carga global.
- Se han agregado equilibradores de carga regionales al grupo de servidores back-end del equilibrador de carga global.
- Se ha creado una regla de equilibrado de carga.
- Probó el equilibrador de carga.
Para más información sobre el equilibrador de carga global, consulte: