Creación de un equilibrador de carga global con back-end entre suscripciones
En este artículo aprenderá a crear un equilibrador de carga global con back-end entre suscripciones.
Un equilibrador de carga entre suscripciones puede hacer referencia a una red virtual que reside en una suscripción diferente a los equilibradores de carga. Esta característica permite implementar un equilibrador de carga en una suscripción y hacer referencia a una red virtual en otra suscripción.
Requisitos previos
- Dos suscripciones de Azure.
- Una cuenta de Azure con suscripciones activas. Cree su cuenta de forma gratuita.
- Una dirección IP pública global implementada en una suscripción de Azure A.
- Un equilibrador de carga regional implementado en una suscripción de Azure B.
- 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.
Importante
Todos los ejemplos de código usarán nombres de ejemplo y marcadores de posición. Asegúrese de reemplazarlos por los valores de su entorno.
Los valores que necesitan reemplazo se incluirán entre corchetes angulares, de la siguiente manera: <example value>
.
Inicio de sesión en Azure
Con Azure PowerShell, inicia sesión en Azure con Connect-AzAccount
y cambia el contexto de la suscripción con Set-AzContext
a una suscripción de Azure A. A continuación, obtenga la información del equilibrador de carga regional con Get-AzLoadBalancer
y `Get-AzLoadBalancerFrontendIpConfig. Necesita el identificador de suscripción de Azure, el nombre del grupo de recursos y el nombre de red virtual del entorno.
# Sign in to Azure
Connect-AzAccount
# Set the subscription context to Azure Subscription A
Set-AzContext -Subscription '<Azure Subscription A>'
# Get the Virtual Network information with Get-AzVirtualNetwork
$rlb= @{
Name = '<regional load balancer name>'
ResourceGroupName = '<Resource Group Subscription A>'
}
$RLB-info = Get-AzLoadBalancer @rlb
$RLBFE = Get-AzLoadBalancerFrontendIpConfig @ RLB-info
Crear un grupo de recursos
En esta sección se crea un grupo de recursos en una Suscripción de Azure B. Este grupo de recursos es para todos los recursos asociados al equilibrador de carga.
Con Azure PowerShell, se cambia el contexto de suscripción con Set-AzContext
y se crea un grupo de recursos con New-AzResourceGroup
.
# Set the subscription context to Azure Subscription B
Set-AzContext -Subscription '<Azure Subscription B>'
# Create a resource group
$rg = @{
Name = 'myResourceGroupLB'
Location = 'westus'
}
New-AzResourceGroup @rg
Nota:
Al crear el grupo de recursos para el equilibrador de carga, use la misma región de Azure que la red virtual en Suscripción de Azure A.
Crear de un equilibrador de carga global
En esta sección se crean los recursos necesarios para el equilibrador de carga entre regiones. Se usa una dirección IP pública de SKU estándar global para el front-end del equilibrador de carga entre regiones.
Con Azure PowerShell puede:
- Usar
New-AzPublicIpAddress
para crear la dirección IP pública. - Crear una configuración de direcciones IP de front-end con
New-AzLoadBalancerFrontendIpConfig
. - Crear un grupo de direcciones de back-end con
New-AzLoadBalancerBackendAddressPoolConfig
. - Crear una regla de equilibrador de carga con
Add-AzLoadBalancerRuleConfig
. - Crear de un equilibrador de carga global con
New-AzLoadBalancer
.
# Create global IP address for load balancer
$ip = @{
Name = 'myPublicIP-CR'
ResourceGroupName = ‘ Resource Group B’
Location = 'eastus2'
Sku = 'Standard'
Tier = 'Global'
AllocationMethod = 'Static'
}
$publicIP = New-AzPublicIpAddress @ip
# Create frontend configuration
$fe = @{
Name = 'myFrontEnd-CR'
PublicIpAddress = $publicIP
}
$feip = New-AzLoadBalancerFrontendIpConfig @fe
# Create 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 cross-region load balancer resource
$lbp = @{
ResourceGroupName = ‘ Resource Group B’
Name = 'myLoadBalancer-CR'
Location = ‘eastus2’
Sku = 'Standard'
Tier = 'Global'
FrontendIpConfiguration = $feip
BackendAddressPool = $bepool
LoadBalancingRule = $rule
}
$lb = New-AzLoadBalancer @lbp
Agregar front-end del equilibrador de carga a un equilibrador de carga entre regiones
En esta sección, agregará una configuración de IP de front-end al equilibrador de carga entre regiones.
Con Azure PowerShell puede:
- Use
Set-AzLoadBalancerFrontendIpConfig
para agregar el front-end del equilibrador de carga regional al grupo de back-end entre regiones. - Use
New-AzLoadBalancerBackendAddressConfig
para crear una configuración de grupo de direcciones de back-end para un equilibrador de carga.
## Create the cross-region backend address pool configuration for region 2 ##
$RLB-BAF = @{
Name = 'MyBackendPoolConfig-RLB'
LoadBalancerFrontendIPConfigurationId = $RLBFE.Id
}
$beaddressconfigRLB = New-AzLoadBalancerBackendAddressConfig @region2ap
## Apply the backend address pool configuration for the cross-region load balancer ##
$bepoolcr = @{
ResourceGroupName = ‘ Resource Group B’
LoadBalancerName = 'myLoadBalancer-CR'
Name = 'myBackEndPool-CR'
LoadBalancerBackendAddress = $beaddressconfigRLB
}
Set-AzLoadBalancerBackendAddressPool @bepoolcr