共用方式為


後端集區管理

後端集區是負載平衡器的重要元件。 後端集區會定義將為指定負載平衡規則提供流量的資源群組。

有兩種方式可以設定後端集區:

  • 網路介面卡 (NIC)

  • IP 位址

若要使用將包含虛擬機器和虛擬機器擴展集的 IP 位址範圍預先配置後端集區,請依 IP 位址和虛擬網路識別碼設定集區。 本文著重於依 IP 位址設定後端集區。

透過 IP 位址和虛擬網路設定後端集區

在預先填入後端集區的案例中,請使用 IP 和虛擬網路。

您可以在後端集區物件上設定後端集區管理,如下列範例所示。

PowerShell

建立新的後端集區:

$be = @{
    ResourceGroupName = 'myResourceGroup'
    LoadBalancerName = 'myLoadBalancer'
    Name = 'myBackendPool'
}
$backendPool = New-AzLoadBalancerBackendAddressPool @be

使用現有虛擬網路中的新 IP 更新後端集區:

$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

取出負載平衡器的後端集區資訊,確認已將後端位址新增至後端集區:

$pool = @{
    ResourceGroupName = 'myResourceGroup'
    LoadBalancerName = 'myLoadBalancer'
    Name = 'myBackendPool'
}
Get-AzLoadBalancerBackendAddressPool @pool

建立網路介面,並將其新增至後端集區。 將 IP 位址設定為其中一個後端位址:

$net = @{
    Name = 'myNic'
    ResourceGroupName = 'myResourceGroup'
    Location = 'eastus'
    PrivateIpAddress = '10.0.0.5'
    Subnet = $virtualNetwork.Subnets[0]
}
$nic = New-AzNetworkInterface @net

建立 VM,並連接 NIC 與後端集區中的 IP 位址:

# 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

CLI

使用 CLI,您可以透過命令列參數或 JSON 設定檔填入後端集區。

透過命令列參數建立和填入後端集區:

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

透過 JSON 設定檔建立和填入後端集區:

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 設定檔:

        [
          {
            "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"
          }
        ]

取出負載平衡器的後端集區資訊,確認已將後端位址新增至後端集區:

az network lb address-pool show \
--resource-group myResourceGroup \
--lb-name MyLb \
--name MyBackendPool

建立網路介面,並將其新增至後端集區。 將 IP 位址設定為其中一個後端位址:

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

建立 VM,並連接 NIC 與後端集區中的 IP 位址:

az vm create \
  --resource-group myResourceGroup \
  --name myVM \
  --nics myNic \
  --image Ubuntu2204 \
  --admin-username azureuser \
  --generate-ssh-keys

限制

  • IP 型後端僅能用於 Standard Load Balancer
  • 後端資源必須位於與 IP 型負載平衡器的負載平衡器相同的虛擬網路
  • 以 IP 為基礎的負載平衡器後端執行個體仍必須是虛擬機器或虛擬機器擴展集。 不支援將其他 PaaS 服務附加至 IP 型 Load Balancer 的後端集區。
  • 以 IP 為基礎後端集區的負載平衡器無法作為 Private Link 服務運作
  • 私人端點資源無法置於 IP 型後端集區中
  • 以 IP 為基礎的負載平衡器不支援 ACI 容器
  • 負載平衡器或應用程式閘道等服務不能放在負載平衡器的後端集區中
  • 無法透過 IP 位址指定輸入 NAT 規則
  • 您可以針對相同的負載平衡器,設定以 IP 為基礎和以 NIC 為基礎的後端集區。 您無法建立單一後端集區,將相同集區內 NIC 和 IP 位址視為目標的後端位址混合在一起。
  • 與內部負載平衡器位於相同虛擬網路中的虛擬機器,無法同時存取 ILB 的前端及其後端 VM。
  • IP 型後端集區目前不支援網際網路路由喜好設定 IP。 IP 型後端集區中的任何網際網路路由喜好設定 IP,都會透過預設的 Microsoft 全域網路計費和路由。
  • 如果後端集區持續變更 (因為持續新增或移除後端資源)。 這可能會導致從後端資源將重設訊號傳回來源。 您可以使用重試作為因應措施。

重要

當後端集區是以 IP 位址設定時,行為會如同預設啟用輸出的基本 Load Balancer。 若為有輸出需求的安全預設設定和應用程式,請以 NIC 設定後端集區。

下一步

在本文中,您已了解 Azure Load Balancer 後端集區管理,以及如何透過 IP 位址和虛擬網路設定後端集區。

深入了解 Azure Load Balancer

檢閱 REST API 以瞭解 IP 型後端集區管理。