Back-End-Pool-Verwaltung
Der Back-End-Pool ist eine kritische Komponente des Lastenausgleichs. Der Back-End-Pool definiert die Gruppe der Ressourcen, die den Datenverkehr für eine bestimmte Lastenausgleichsregel verarbeiten.
Es gibt zwei Möglichkeiten, einen Back-End-Pool zu konfigurieren:
Netzwerkschnittstellenkarte (NIC)
IP-Adresse
Um vorab einen Back-End-Pool mit einem IP-Adressbereich zuzuweisen, der später virtuelle Computer und VM-Skalierungsgruppen enthält, können Sie den Pool anhand der IP-Adresse und der VNet-ID konfigurieren. Dieser Artikel befasst sich mit der Konfiguration von Back-End-Pools anhand von IP-Adressen.
Konfigurieren des Back-End-Pools anhand von IP-Adresse und virtuellem Netzwerk
Verwenden Sie in Szenarien mit vorab aufgefüllten Back-End-Pool die IP-Adresse und das virtuelle Netzwerk.
Sie konfigurieren die Verwaltung des Back-End-Pools für das Back-End-Poolobjekt, wie in den folgenden Beispielen dargestellt.
PowerShell
Erstellen Sie einen neuen Back-End-Pool:
$be = @{
ResourceGroupName = 'myResourceGroup'
LoadBalancerName = 'myLoadBalancer'
Name = 'myBackendPool'
}
$backendPool = New-AzLoadBalancerBackendAddressPool @be
Aktualisieren Sie den Back-End-Pool mit einer neuen IP aus einem vorhandenen virtuellen Netzwerk:
$vnet = @{
Name = 'myVnet'
ResourceGroupName = 'myResourceGroup'
}
$virtualNetwork = Get-AzVirtualNetwork @vnet
$add1 = @{
IpAddress = '10.0.0.5'
Name = 'TestVNetRef'
VirtualNetworkId = $virtualNetwork.Id
}
$ip1 = New-AzLoadBalancerBackendAddressConfig @add1
$backendPool.LoadBalancerBackendAddresses.Add($ip1)
Set-AzLoadBalancerBackendAddressPool -InputObject $backendPool
Rufen Sie die Back-End-Poolinformationen für den Lastenausgleich ab, um zu bestätigen, dass die Back-End-Adressen dem Back-End-Pool hinzugefügt wurden:
$pool = @{
ResourceGroupName = 'myResourceGroup'
LoadBalancerName = 'myLoadBalancer'
Name = 'myBackendPool'
}
Get-AzLoadBalancerBackendAddressPool @pool
Erstellen Sie eine Netzwerkschnittstelle, und fügen Sie sie dem Back-End-Pool hinzu. Legen Sie die IP-Adresse auf eine der Back-End-Adressen fest:
$net = @{
Name = 'myNic'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus'
PrivateIpAddress = '10.0.0.5'
Subnet = $virtualNetwork.Subnets[0]
}
$nic = New-AzNetworkInterface @net
Erstellen Sie eine VM, und fügen Sie die NIC mit einer IP-Adresse im Back-End-Pool an:
# Create a username and password for the virtual machine
$cred = Get-Credential
# Create a virtual machine configuration
$net = @{
Name = 'myNic'
ResourceGroupName = 'myResourceGroup'
}
$nic = Get-AzNetworkInterface @net
$vmc = @{
VMName = 'myVM1'
VMSize = 'Standard_DS1_v2'
}
$vmos = @{
ComputerName = 'myVM1'
Credential = $cred
}
$vmi = @{
PublisherName = 'MicrosoftWindowsServer'
Offer = 'WindowsServer'
Skus = '2019-Datacenter'
Version = 'latest'
}
$vmConfig =
New-AzVMConfig @vmc | Set-AzVMOperatingSystem -Windows @vmos | Set-AzVMSourceImage @vmi | Add-AzVMNetworkInterface -Id $nic.Id
# Create a virtual machine using the configuration
$vm = @{
ResourceGroupName = 'myResourceGroup'
Zone = '1'
Location = 'eastus'
VM = $vmConfig
}
$vm1 = New-AzVM @vm
Befehlszeilenschnittstelle (CLI)
Mithilfe der CLI können Sie den Back-End-Pool entweder über Befehlszeilenparameter oder mit einer JSON-Konfigurationsdatei auffüllen.
Erstellen Sie den Back-End-Pool über Befehlszeilenparametern, und füllen Sie ihn auf:
az network lb address-pool create \
--resource-group myResourceGroup \
--lb-name myLB \
--name myBackendPool \
--vnet {VNET resource ID} \
--backend-address name=addr1 ip-address=10.0.0.4 \
--backend-address name=addr2 ip-address=10.0.0.5
Erstellen Sie den Back-End-Pool mit der JSON-Konfigurationsdatei, und füllen Sie ihn auf:
az network lb address-pool create \
--resource-group myResourceGroup \
--lb-name myLB \
--name myBackendPool \
--vnet {VNET resource ID} \
--backend-address-config-file @config_file.json
JSON-Konfigurationsdatei:
[
{
"name": "address1",
"virtualNetwork": "/subscriptions/{subscriptionId}/resourceGroups/{resource-group-name}/providers/Microsoft.Network/virtualNetworks/{vnet-name}",
"ipAddress": "10.0.0.4"
},
{
"name": "address2",
"virtualNetwork": "/subscriptions/{subscriptionId}/resourceGroups/{resource-group-name}/providers/Microsoft.Network/virtualNetworks/{vnet-name}",
"ipAddress": "10.0.0.5"
}
]
Rufen Sie die Back-End-Poolinformationen für den Lastenausgleich ab, um zu bestätigen, dass die Back-End-Adressen dem Back-End-Pool hinzugefügt wurden:
az network lb address-pool show \
--resource-group myResourceGroup \
--lb-name MyLb \
--name MyBackendPool
Erstellen Sie eine Netzwerkschnittstelle, und fügen Sie sie dem Back-End-Pool hinzu. Legen Sie die IP-Adresse auf eine der Back-End-Adressen fest:
az network nic create \
--resource-group myResourceGroup \
--name myNic \
--vnet-name myVnet \
--subnet mySubnet \
--network-security-group myNetworkSecurityGroup \
--lb-name myLB \
--private-ip-address 10.0.0.4
Erstellen Sie eine VM, und fügen Sie die NIC mit einer IP-Adresse im Back-End-Pool an:
az vm create \
--resource-group myResourceGroup \
--name myVM \
--nics myNic \
--image Ubuntu2204 \
--admin-username azureuser \
--generate-ssh-keys
Einschränkungen
- IP-basierte Back-Ends können nur für Load Balancer Standard-Instanzen verwendet werden.
- Die Back-End-Ressourcen müssen sich im selben virtuellen Netzwerk wie der Lastenausgleich für IP-basierte LBs befinden.
- Back-End-Instanzen von IP-basierte Lastenausgleichsmodulen müssen immer noch virtuelle Computer oder Virtual Machine Scale Sets sein. Das Anfügen anderer PaaS-Dienste an den Back-End-Pool eines IP-basierten Lastenausgleichs wird nicht unterstützt.
- Ein Lastenausgleich mit IP-basiertem Back-End-Pool kann nicht als Private Link-Dienst fungieren.
- Private Endpunktressourcen können nicht in einem IP-basierten Back-End-Pool platziert werden
- IP-basierte Lastenausgleichsmodule unterstützen keine ACI-Container.
- Lastenausgleichsmodule oder Dienste wie Application Gateway können nicht im Back-End-Pool des Lastenausgleichsmoduls platziert werden.
- NAT-Regeln für eingehenden Datenverkehr können nicht anhand der IP-Adresse angegeben werden.
- Sie können IP- und NIC-basierte Back-End-Pools für dasselbe Lastenausgleichsmodul konfigurieren. Es ist aber nicht möglich, nur einen Back-End-Pool zu erstellen, in dem für die Netzwerkkarte bestimmte Back-End-Adressen und zusätzlich IP-Adressen gemischt vorkommen.
- Ein virtueller Computer im gleichen virtuellen Netzwerk wie ein interner Lastenausgleich kann nicht gleichzeitig auf das Front-End des internen Lastenausgleichs (ILB) und seine Back-End-VMs zugreifen.
- IP-Präferenzadressen für Internetrouting werden derzeit nicht von IP-basierten Back-End-Pools unterstützt. Alle IP-Präferenzadressen für Internetrouting in IP-basierten Back-End-Pools werden über das globale Standardnetzwerk von Microsoft abgerechnet und weitergeleitet.
- Wenn sich Back-End-Pools ständig ändern (aufgrund des konstanten Hinzufügens oder Entfernens von Back-End-Ressourcen), kann dies dazu führen, dass Zurücksetzungssignale von der Back-End-Ressource an die Quelle zurückgesendet werden. Als Problemumgehung können Sie Wiederholungsvorgänge verwenden.
Wichtig
Wenn ein Back-End-Pool über eine IP-Adresse konfiguriert wird, verhält er sich wie ein Load Balancer im Tarif „Basic“ mit aktivierter Standardeinstellung für ausgehenden Datenverkehr. Konfigurieren Sie den Back-End-Pool nach NIC, um standardmäßig eine sichere Konfiguration zu gewährleisten und Anwendungen mit hohen Anforderungen für ausgehenden Datenverkehr nutzen zu können.
Nächste Schritte
In diesem Artikel haben Sie die Back-End-Pool-Verwaltung von Azure Load Balancer kennen gelernt und wie Sie einen Back-End-Pool anhand von IP-Adresse und virtuellem Netzwerk konfigurieren.
Weitere Informationen zu Azure Load Balancer.
Informationen zur IP-basierten Back-End-Pool-Verwaltung finden Sie im Artikel zur REST-API.