이중 스택 Azure 게이트웨이 부하 분산 장치 배포
이 자습서에서는 기존 IPv4로 구성된 Azure 게이트웨이 부하 분산 장치에 IPv6 구성을 배포합니다.
이 문서에서 학습할 내용은 다음과 같습니다.
- 기존 서브넷에 IPv6 주소 범위를 추가합니다.
- 게이트웨이 부하 분산 장치에 IPv6 프런트 엔드를 추가합니다.
- 게이트웨이 부하 분산 장치에 IPv6 백 엔드 풀을 추가합니다.
- 네트워크 인터페이스에 IPv6 구성을 추가합니다.
- IPv6 트래픽에 대한 부하 분산 규칙을 추가합니다.
- IPv6 부하 분산 장치 프런트 엔드를 게이트웨이 부하 분산 장치에 연결합니다.
이 시나리오에는 게이트웨이 부하 분산 장치와 함께 이미 배포된 다음과 같은 리소스가 포함됩니다.
- 이중 스택 가상 네트워크 및 서브넷.
- 이중(IPv4 + IPv6) 프런트 엔드 구성이 있는 표준 Load Balancer입니다.
- IPv4만 사용하는 게이트웨이 부하 분산 장치.
- 이중 스택 IP 구성, 연결된 네트워크 보안 그룹 및 공용 IPv4 및 IPv6 주소가 있는 네트워크 인터페이스.
필수 조건
- 활성 구독이 있는 Azure 계정. 체험 계정을 만듭니다.
- 기존 이중 스택 부하 분산 장치. 이중 스택 부하 분산 장치를 만드는 방법에 대한 자세한 내용은 IPv6 이중 스택 애플리케이션 배포 - 표준 Load Balancer를 참조하세요.
- 기존 IPv4 게이트웨이 분산 장치. 게이트웨이 부하 분산 장치를 만드는 방법에 대한 자세한 내용은 게이트웨이 부하 분산 장치 만들기를 참조하세요.
기존 서브넷에 IPv6 주소 범위 추가
이 문서에서는 해당 가상 네트워크 및 서브넷을 사용하여 IPv4 트래픽에 대해 구성된 게이트웨이 Load Balancer가 이미 있다고 가정합니다. 이 단계에서는 게이트웨이 Load Balancer의 가상 네트워크 및 서브넷에 IPv6 범위를 추가합니다. 이 범위는 이 서브넷/가상 네트워크의 개인 IP 주소를 사용하여 게이트웨이 Load Balancer에 대한 IPv6 프런트 엔드 구성을 만들 때 필요합니다.
#Add IPv6 ranges to the virtual network and subnet
#Retrieve the virtual network object
$rg = Get-AzResourceGroup -ResourceGroupName "myResourceGroup"
$vnet = Get-AzVirtualNetwork -ResourceGroupName $rg.ResourceGroupName -Name "myVNet"
#Add IPv6 prefix to the virtual network
$vnet.addressspace.addressprefixes.add("fd00:db8:deca::/48")
#Update the running virtual network
$vnet | Set-AzVirtualNetwork
#Retrieve the subnet object from the local copy of the virtual network
$subnet= $vnet.subnets[0]
#Add IPv6 prefix to the subnet
$subnet.addressprefix.add("fd00:db8:deca::/64")
#Update the running virtual network with the new subnet configuration
$vnet | Set-AzVirtualNetwork
게이트웨이 부하 분산 장치에 IPv6 프런트 엔드 추가
이제 게이트웨이 Load Balancer의 서브넷 및 가상 네트워크에 IPv6 접두사 범위를 추가했으므로 서브넷 범위의 IPv6 주소를 사용하여 게이트웨이 Load Balancer에 새 IPv6 프런트 엔드 구성을 만들 수 있습니다.
# Retrieve the load balancer configuration
$gwlb = Get-AzLoadBalancer -ResourceGroupName "myResourceGroup"-Name "myGatewayLoadBalancer"
# Add IPv6 frontend configuration to the local copy of the load balancer configuration
$gwlb | Add-AzLoadBalancerFrontendIpConfig `
-Name "myGatewayFrontEndv6" `
-PrivateIpAddressVersion "IPv6" `
-Subnet $subnet
#Update the running load balancer with the new frontend
$gwlb | Set-AzLoadBalancer
게이트웨이 부하 분산 장치에 IPv6 백 엔드 풀 추가
IPv6 트래픽을 분산하려면 IPv6 주소가 있는 인스턴스를 포함하는 백 엔드 풀이 필요합니다. 먼저 게이트웨이 부하 분산 장치에 백 엔드 풀을 만듭니다. 다음 단계에서는 IPv4 트래픽에 대한 기존 백 엔드 NIC에 IPv6 구성을 만들고 이 백 엔드 풀에 연결합니다.
## Create IPv6 tunnel interfaces
$int1 = @{
Type = 'Internal'
Protocol = 'Vxlan'
Identifier = '866'
Port = '2666'
}
$tunnelInterface1 = New-AzLoadBalancerBackendAddressPoolTunnelInterfaceConfig @int1
$int2 = @{
Type = 'External'
Protocol = 'Vxlan'
Identifier = '867'
Port = '2667'
}
$tunnelInterface2 = New-AzLoadBalancerBackendAddressPoolTunnelInterfaceConfig @int2
# Create the IPv6 backend pool
$pool = @{
Name = 'myGatewayBackendPoolv6'
TunnelInterface = $tunnelInterface1,$tunnelInterface2
}
# Add the backend pool to the load balancer
$gwlb | Add-AzLoadBalancerBackendAddressPoolConfig @pool
# Update the load balancer
$gwlb | Set-AzLoadBalancer
네트워크 인터페이스에 IPv6 구성 추가
#Retrieve the NIC object
$NIC_1 = Get-AzNetworkInterface -Name "myNic1" -ResourceGroupName $rg.ResourceGroupName
$backendPoolv6 = Get-AzLoadBalancerBackendAddressPoolConfig -Name "myGatewayBackendPoolv6" -LoadBalancer $gwlb
#Add an IPv6 IPconfig to NIC_1 and update the NIC on the running VM
$NIC_1 | Add-AzNetworkInterfaceIpConfig -Name myIPv6Config -Subnet $vnet.Subnets[0] -PrivateIpAddressVersion IPv6 -LoadBalancerBackendAddressPool $backendPoolv6
$NIC_1 | Set-AzNetworkInterface
IPv6 트래픽에 대한 부하 분산 규칙 추가
부하 분산 규칙은 트래픽이 백 엔드 인스턴스로 라우팅되는 방법을 결정합니다. 게이트웨이 부하 분산 장치의 경우 모든 포트에 도착하는 모든 프로토콜의 트래픽을 검사할 수 있도록 HA 포트를 사용하도록 설정된 부하 분산 규칙을 만듭니다.
# Retrieve the updated (live) versions of the frontend and backend pool, and existing health probe
$frontendIPv6 = Get-AzLoadBalancerFrontendIpConfig -Name "myGatewayFrontEndv6" -LoadBalancer $gwlb
$backendPoolv6 = Get-AzLoadBalancerBackendAddressPoolConfig -Name "myGatewayBackendPoolv6" -LoadBalancer $gwlb
$healthProbe = Get-AzLoadBalancerProbeConfig -Name "myHealthProbe" -LoadBalancer $gwlb
# Create new LB rule with the frontend and backend
$gwlb | Add-AzLoadBalancerRuleConfig `
-Name "myRulev6" `
-FrontendIpConfiguration $frontendIPv6 `
-BackendAddressPool $backendPoolv6 `
-Protocol All `
-FrontendPort 0 `
-BackendPort 0 `
-Probe $healthProbe
#Finalize all the load balancer updates on the running load balancer
$gwlb | Set-AzLoadBalancer
IPv6 부하 분산 장치 프런트 엔드를 게이트웨이 부하 분산 장치에 연결
이 마지막 단계에서는 기존 표준 Load Balancer의 IPv6 프런트 엔드를 게이트웨이 부하 분산 장치의 IPv6 프런트 엔드에 연결합니다. 이제 표준 Load Balancer의 프런트 엔드로 향하는 모든 IPv6 트래픽이 애플리케이션에 도달하기 전에 구성된 NVA에서 검사를 위해 게이트웨이 부하 분산 장치로 전달됩니다.
## Place the existing Standard load balancer into a variable. ##
$par1 = @{
ResourceGroupName = 'myResourceGroup'
Name = 'myLoadBalancer'
}
$lb = Get-AzLoadBalancer @par1
## Place the public frontend IP of the Standard load balancer into a variable.
$par3 = @{
ResourceGroupName = 'myResourceGroup'
Name = 'myIPv6PublicIP'
}
$publicIP = Get-AzPublicIPAddress @par3
## Chain the Gateway load balancer to your existing Standard load balancer frontend. ##
# $feip = Get-AzLoadBalancerFrontendIpConfig -Name "myGatewayFrontEndv6" -LoadBalancer $gwlb
$par4 = @{
Name = 'myIPv6FrontEnd'
PublicIPAddress = $publicIP
LoadBalancer = $lb
GatewayLoadBalancerId = $feip.id
}
$config = Set-AzLoadBalancerFrontendIpConfig @par4
$config | Set-AzLoadBalancer
제한 사항
- 게이트웨이 부하 분산 장치는 64/46을 지원하지 않습니다.
- 체인을 구현할 때 표준 및 게이트웨이 부하 분산 장치 프런트 엔드 구성의 IP 주소 버전이 일치해야 합니다.
다음 단계
- 네트워크 가상 어플라이언스를 배포하기 위한 Azure 게이트웨이 부하 분산 장치 파트너에 대해 자세히 알아봅니다.