Compartir a través de


Asociación de un back-end entre suscripciones a una instancia de Azure Load Balancer

En este artículo, aprenderá a adjuntar un back-end entre suscripciones a una instancia de Azure Load Balancer mediante la creación de un grupo de back-end entre suscripciones y la conexión de interfaces de red entre suscripciones al grupo de back-end del equilibrador de carga.

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 Red virtual existente. implementada en una de las suscripciones. En este ejemplo, la red virtual se encuentra en la Suscripción de Azure A.
  • 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, inicie sesión en Azure con Connect-AzAccount y cambie el contexto de la suscripción con Set-AzContext a una Suscripción de Azure A. A continuación, obtenga la información de red virtual con Get-AzVirtualNetwork. 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
$net = @{
    Name = '<vnet name>'
    ResourceGroupName = '<Resource Group Subscription A>'
}
$vnet = Get-AzVirtualNetwork @net

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.

Creación de un equilibrador de carga

En esta sección se crea un equilibrador de carga en una Suscripción de Azure B. Se crea un equilibrador de carga con una dirección IP de front-end.

Con Azure PowerShell, podrá:

# Create a load balancer
$loadbalancer = @{
    ResourceGroupName = 'resource group B'
    Name = 'LB Name'
    Location = 'eastus'
    Sku = 'Standard'
}
$LB = New-AzLoadBalancer @loadbalancer

$LBinfo = @{
    ResourceGroupName = 'resource group B'
    Name = 'my-lb'
}

# Create a public IP address
$publicip = @{
    Name = 'IP Address Name'
    ResourceGroupName = 'resource group B'
    Location = 'eastus'
    Sku = 'Standard'
    AllocationMethod = 'static'
    Zone = 1,2,3
}
New-AzPublicIpAddress @publicip


# Place public IP created in previous steps into variable
$pip = @{
    Name = 'IP Address Name'
    ResourceGroupName = 'resource group B'
}
$publicIp = Get-AzPublicIpAddress @pip

## Create load balancer frontend configuration and place in variable
$fip = @{
    Name = 'Frontend Name'
    PublicIpAddress = $publicip
}
$LB = $LB | Add-AzLoadBalancerFrontendIpConfig @fip
$LB = $LB | Set-AzLoadBalancer

# Create backend address pool configuration and place in variable. ##

$be = @{
    ResourceGroupName= "resource group B"
    Name= "myBackEndPool"
    LoadBalancerName= "LB Name"
    VirtualNetwork=$vnet.id
    SyncMode= "Automatic"
}

#Create the backend pool
$backend = New-AzLoadBalancerBackendAddressPool @be
$LB = Get-AzLoadBalancer @LBinfo

Crear una regla de sondeo de estado y equilibrador de carga

Cree un sondeo de estado que determine el estado de instancias de máquina virtual de back-end y una regla de equilibrador de carga que defina la configuración de la dirección IP de front-end para el tráfico entrante y el grupo de direcciones IP de back-end para recibir el tráfico, junto con el puerto de origen y destino requeridos.

Con Azure PowerShell, cree un sondeo de estado con Add-AzLoadBalancerProbeConfig que determine el estado de las instancias de máquina virtual de back-end. Luego cree una regla de equilibrador de carga con Add-AzLoadBalancerRuleConfig que defina la configuración de la dirección IP de front-end para el tráfico entrante, el grupo de direcciones IP de back-end para recibir el tráfico y el puerto de origen y destino requeridos.

## Create the health probe and place in variable. ##
$probe = @{
    Name = 'myHealthProbe2'
    Protocol = 'tcp'
    Port = '80'
    IntervalInSeconds = '360'
    ProbeCount = '5'
}

## Create the load balancer rule and place in variable. ##
$lbrule = @{
    Name = 'myHTTPRule2'
    Protocol = 'tcp'
    FrontendPort = '80'
    BackendPort = '80'
    IdleTimeoutInMinutes = '15'
    FrontendIpConfiguration = $LB.FrontendIpConfigurations[0]
    BackendAddressPool = $backend
}
## Set the load balancer resource. ##
$LB | Add-AzLoadBalancerProbeConfig @probe
$LB | Add-AzLoadBalancerRuleConfig  @lbrule
$LB | Set-AzLoadBalancer

Conectar tarjetas de interfaz de red al equilibrador de carga

En esta sección, asociará la tarjeta de interfaz de red (NIC) en la Suscripción de Azure A al equilibrador de carga en la Suscripción de Azure B. Cree una interfaz de red con New-AzNetworkInterface y, a continuación, cree una configuración IP para la tarjeta de interfaz de red con New-AzNetworkInterfaceIpConfig.

Nota:

La tarjeta de interfaz de red (NIC) debe estar en la misma red virtual que el grupo de back-end del equilibrador de carga.


# Set the subscription context to **Azure Subscription A**
Set-AzContext -Subscription 'Sub A' 

# Create a network interface card
$IP1 = @{
    Name = 'MyIpConfig'
    subnetID= $vnet.subnets[0].Id
    PrivateIpAddressVersion = 'IPv4'
-LoadBalancerBackendAddressPool $lb-be-info
}
$IP1Config = New-AzNetworkInterfaceIpConfig @IP1 -Primary
$nic = @{
    Name = 'MyNic'
    ResourceGroupName = '<Resoure Group Subscription A>'
    Location = 'eastus'
    IpConfiguration = $IP1Config
}
New-AzNetworkInterface @nic

Limpieza de recursos

Cuando ya no los necesite, puede usar el comando Remove-AzResourceGroup para quitar el grupo de recursos que creó junto al equilibrador de carga y el resto de los recursos.

Remove-AzResourceGroup -Name 'myResourceGroupLB'

Pasos siguientes