Freigeben über


Anfügen eines abonnementübergreifenden Front-Ends an einen Azure Load Balancer

In diesem Artikel erfahren Sie, wie Sie einen Lastenausgleich in einem Azure-Abonnement erstellen und eine Front-End-IP-Adresse aus einem anderen Abonnement anfügen. Sie erstellen eine Ressourcengruppe für den Lastenausgleich und erstellen dann einen Lastenausgleich mit einer Front-End-IP-Adresse. Sie erstellen auch einen Back-End-Adresspool, einen Integritätstest und eine Lastenausgleichsregel.

Ein abonnementübergreifender Lastenausgleich kann auf ein virtuelles Netzwerk verweisen, das sich in einem anderen Abonnement als die Lastenausgleichsmodule befindet. Mit diesem Feature können Sie einen Lastenausgleich in einem Abonnement bereitstellen und auf ein virtuelles Netzwerk in einem anderen Abonnement verweisen.

Voraussetzungen

  • Zwei Azure-Abonnements. Ein Abonnement für das virtuelle Netzwerk und ein anderes Abonnement für den Lastenausgleich.
  • Ein Azure-Konto mit aktiven Abonnements. Kostenlos ein Konto erstellen
  • Eine öffentliche IP-Adresse, die in einem der Abonnements bereitgestellt wird. Für dieses Beispiel befindet sich die öffentliche IP-Adresse im Azure-Abonnement A.
  • Ein vorhandenes Virtual Network. in einem der Abonnements bereitgestellt. Für dieses Beispiel befindet sich das virtuelle Netzwerk im Azure-Abonnement B.

Wenn Sie PowerShell lokal installieren und verwenden möchten, müssen Sie für diesen Artikel mindestens Version 5.4.1 des Azure PowerShell-Moduls verwenden. Führen Sie Get-Module -ListAvailable Az aus, um die installierte Version zu ermitteln. Wenn Sie ein Upgrade ausführen müssen, finden Sie unter Installieren des Azure PowerShell-Moduls Informationen dazu. Wenn Sie PowerShell lokal ausführen, müssen Sie auch Connect-AzAccount ausführen, um eine Verbindung mit Azure herzustellen.

Wichtig

Alle Codebeispiele werden Beispielnamen und Platzhalter verwenden. Achten Sie darauf, diese durch die Werte aus Ihrer Umgebung zu ersetzen. Die Werte, die ersetzt werden müssen, werden wie folgt in spitze Klammern eingeschlossen: <example value>.

Anmelden bei Azure

Mit Azure PowerShell melden Sie sich bei Azure mit Connect-AzAccount an und ändern Ihren Abonnementkontext mit Set-AzContext zum Azure-Abonnement A. Rufen Sie dann mit Get-AzPublicIpAddress die Informationen zur öffentlichen IP-Adresse ab. Sie benötigen die Azure-Abonnement-ID, den Ressourcengruppennamen und den Namen des virtuellen Netzwerks aus Ihrer Umgebung.


# Sign in to Azure
Connect-AzAccount

# Set the subscription context to Azure Subscription A
Set-AzContext -Subscription '<Azure Subscription A>'     

# Get the Public IP address information with Get-AzPublicIpAddress
$publicIp = Get-AzPublicIpAddress @pip

Erstellen einer Ressourcengruppe

In diesem Abschnitt erstellen Sie eine Ressourcengruppe im Azure-Abonnement B. Diese Ressourcengruppe ist für alle Ihre Ressourcen, die Ihrem Lastenausgleich zugeordnet sind.

Mit Azure PowerShell wechseln Sie mit Set-AzContext zum Abonnementkontext und erstellen eine Ressourcengruppe mit 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

Hinweis

Wenn Sie die Ressourcengruppe für Ihren Lastenausgleich erstellen, verwenden Sie dieselbe Azure-Region wie das virtuelle Netzwerk im Azure-Abonnement A.

Einrichten eines Lastenausgleichs

In diesem Abschnitt erstellen Sie einen Lastenausgleich im Azure-Abonnement B. Sie erstellen einen Lastenausgleichs mit einer Front-End-IP-Adresse.

Erstellen Sie einen Lastenausgleich mit New-AzLoadBalancer, fügen Sie eine Front-End-IP-Konfiguration hinzu mit Add-AzLoadBalancerFrontendIpConfig, und erstellen Sie dann einen Back-End-Adresspool mit New-AzLoadBalancerBackendAddressPool.

# Create a load balancer

$tags = @{
'IsRemoteFrontend'= 'true'
}

$loadbalancer = @{
    ResourceGroupName = 'myResourceGroupLB'
    Name = 'myLoadBalancer'
    Location = 'westus'
    Sku = 'Standard'
    Tag = $tags
}


$LB = New-AzLoadBalancer @loadbalancer
 
$LBinfo = @{
    ResourceGroupName = 'myResourceGroupLB'
    Name = 'myLoadBalancer'
}


$fip = @{
    Name = 'Frontend Name'
    PublicIpAddress = $publicip
}
$LB = $LB | Add-AzLoadBalancerFrontendIpConfig @fip
$LB = $LB | Set-AzLoadBalancer

## Create backend address pool configuration and place in variable. 
$net = @{
    Name = 'vnet name'
    ResourceGroupName = 'myResourceGroupLB'
}
$vnet = Get-AzVirtualNetwork @net

$be = @{
    ResourceGroupName= "myResourceGroupLB"
    Name= "myBackEndPool"
    LoadBalancerName= "myLoadBalancer"
    VirtualNetwork=$vnet.id
    SyncMode= "Automatic"
}
 
#create the backend pool
$backend = New-AzLoadBalancerBackendAddressPool @be
$LB = Get-AzLoadBalancer @LBinfo

Erstellen eines Integritätstests und einer Lastenausgleichsregel

Erstellen Sie einen Integritätstest, der die Integrität der Back-End-VM-Instanzen bestimmt, und eine Lastenausgleichsregel, welche die Front-End-IP-Konfiguration für den eingehenden Datenverkehr, den Back-End-IP-Adresspool für den Empfang des Datenverkehrs sowie die erforderlichen Quell- und Zielports definiert.

Erstellen Sie mit Azure PowerShell einen Integritätstest mit Add-AzLoadBalancerProbeConfig, der die Integrität der Back-End-VM-Instanzen bestimmt. Erstellen Sie dann eine Lastenausgleichsregel mit Add-AzLoadBalancerRuleConfig, welche die Front-End-IP-Konfiguration für den eingehenden Datenverkehr, den Back-End-IP-Pool für den Empfang des Datenverkehrs und die erforderlichen Quell- und Zielports definiert.

## 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

Bereinigen von Ressourcen

Wenn die Objekte nicht mehr benötigen werden, können Sie den Befehl „Remove-AzResourceGroup“ verwenden, um die von Ihnen erstellte Ressourcengruppe zusammen mit dem Lastenausgleich und alle verbleibenden Ressourcen zu löschen.

Remove-AzResourceGroup -Name 'myResourceGroupLB'

Nächste Schritte