자습서: 지역 간 Azure Load Balancer 만들기
이 문서의 내용
지역 간 부하 분산 장치는 여러 Azure 지역에서 서비스를 전역적으로 사용할 수 있도록 합니다. 한 지역이 실패하는 경우 트래픽이 다음의 가장 가까운 정상적인 지역 부하 분산 장치로 라우팅됩니다.
이 자습서에서는 다음을 하는 방법을 알아볼 수 있습니다.
지역 간 부하 분산 장치 만들기
두 개의 지역 부하 분산 장치를 포함하는 백 엔드 풀 만들기
부하 분산 장치를 만듭니다.
부하 분산 장치 테스트
Azure Portal, Azure CLI 또는 Azure PowerShell을 사용하여 이 자습서를 완료할 수 있습니다.
필수 조건
Azure 구독 Azure 구독이 아직 없는 경우 시작하기 전에 무료 계정 을 만듭니다.
두 개의 서로 다른 Azure 지역에 배포된 백 엔드 풀을 사용하는 두 개의 표준 SKU Azure Load Balancer
Azure 구독 Azure 구독이 아직 없는 경우 시작하기 전에 무료 계정 을 만듭니다.
두 개의 서로 다른 Azure 지역에 배포된 백 엔드 풀을 사용하는 두 개의 표준 SKU Azure Load Balancer
로컬로 설치된 Azure CLI 또는 Azure Cloud Shell.
로컬로 CLI를 설치하여 사용하려는 경우 이 빠른 시작을 진행하려면 Azure CLI 버전 2.0.28 이상이 필요합니다. 버전을 확인하려면 az --version
을 실행합니다. 설치 또는 업그레이드가 필요한 경우, Azure CLI 설치 를 참조하세요. Azure CLI를 로컬로 실행하는 경우 Azure와의 연결을 만들려면 az login
(으)로 로그인해야 합니다.
Azure 구독 Azure 구독이 아직 없는 경우 시작하기 전에 무료 계정 을 만듭니다.
두 개의 서로 다른 Azure 지역에 배포된 백 엔드 풀을 사용하는 두 개의 표준 SKU Azure Load Balancer
로컬로 설치된 Azure PowerShell 또는 Azure Cloud Shell.
PowerShell을 로컬로 설치하고 사용하도록 선택하는 경우 이 문서에는 Azure PowerShell 모듈 버전 5.4.1 이상이 필요합니다. 설치되어 있는 버전을 확인하려면 Get-Module -ListAvailable Az
을 실행합니다. 업그레이드해야 하는 경우 Azure PowerShell 모듈 설치 를 참조하세요. 또한 PowerShell을 로컬로 실행하는 경우 Connect-AzAccount
를 실행하여 Azure와 연결해야 합니다.
지역 간 부하 분산 장치 만들기
이 섹션에서는 공용 IP 주소, 프런트 엔드 IP 구성, 지역 부하 분산 장치가 추가된 백 엔드 풀 및 부하 분산 장치 규칙을 사용하여 지역 간 부하 분산 장치를 만듭니다.
부하 분산 장치 리소스 및 기타 리소스 만들기
Azure Portal에 로그인 합니다.
포털 맨 위에 있는 검색 상자에 부하 분산 장치 를 입력합니다. 검색 결과에서 부하 분산 장치 를 선택합니다.
부하 분산 장치 페이지에서 만들기 를 선택합니다.
부하 분산 장치 만들기 페이지의 기본 사항 탭에서 다음 정보를 입력하거나 선택합니다.
설정
값
프로젝트 세부 정보
Subscription
구독을 선택합니다.
Resource group
새로 만들기 를 선택하고 텍스트 상자에 CreateCRLBTutorial-rg 를 입력합니다.
인스턴스 세부 정보
이름
myLoadBalancer-cr 을 입력합니다.
지역
(미국) 미국 동부 를 선택합니다.
Type
퍼블릭 을 선택합니다.
SKU
기본값인 표준 을 그대로 둡니다.
계층
글로벌 을 선택합니다.
페이지 하단에서 다음: 프런트 엔드 IP 구성 을 선택합니다.
프런트 엔드 IP 구성 에서 + 프런트 엔드 IP 추가 를 선택합니다.
프런트 엔드 IP 주소 추가 의 이름 에 LoadBalancerFrontend 를 입력합니다.
IP 버전 에 대해 IPv4 또는 IPv6 을 선택합니다.
공용 IP 주소 에서 새로 만들기 를 선택합니다. 이름 에 myPublicIP-cr 을 입력합니다. 공용 IP 주소 추가 대화 상자에 대해 저장 을 선택합니다.
저장 을 선택합니다.
페이지 하단에서 다음: 백 엔드 풀 을 선택합니다.
백 엔드 풀 에서 + 백 엔드 풀 추가 를 선택합니다.
백 엔드 풀 추가 의 이름 에 myBackendPool-cr 을 입력합니다.
부하 분산 장치 에서 myLoadBalancer-r1 을 선택하거나 부하 분산 장치 풀다운 상자에서 첫 번째 지역 부하 분산 장치를 선택합니다. 프런트 엔드 IP 구성 및 IP 주소 가 myLoadBalancer-r1 에 해당하는지 확인합니다.
myLoadBalancer-r2 또는 부하 분산 장치 풀다운 상자에서 두 번째 지역 부하 분산 장치를 선택합니다. 프런트 엔드 IP 구성 및 IP 주소 가 myLoadBalancer-r2 에 해당하는지 확인합니다.
추가 를 선택합니다.
페이지 하단에서 다음: 수신 규칙 을 선택합니다.
인바운드 규칙 에서 + 부하 분산 규칙 추가 를 선택합니다.
부하 분산 규칙 추가 에서 다음 정보를 입력하거나 선택합니다.
설정
값
속성
myHTTPRule-cr 을 입력합니다.
IP 버전
IP 버전 에 대해 IPv4 또는 IPv6 을 선택합니다.
프런트 엔드 IP 주소
LoadBalancerFrontend 를 선택합니다.
프로토콜
TCP 를 선택합니다.
포트
80 을 입력합니다.
백 엔드 풀
myBackendPool-cr 을 선택합니다.
세션 지속성
없음 을 선택합니다.
유휴 제한 시간(분)
슬라이더를 입력하거나 15 로 이동합니다.
TCP 재설정
사용 을 선택합니다.
부동 IP
사용 안 함 (기본값)을 그대로 둡니다.
추가 를 선택합니다.
페이지 아래쪽에서 검토 + 만들기 를 선택합니다.
검토 + 만들기 탭에서 만들기 를 선택합니다.
참고 항목
지역 간 부하 분산 장치 배포는 특정 홈 Azure 지역에 나열됩니다. 현재 목록은 지역 간 부하 분산 장치에 대한 Azure의 홈 지역 을 참조하세요.
리소스 그룹 만들기
Azure 리소스 그룹은 Azure 리소스가 배포 및 관리되는 논리적 컨테이너입니다.
az group create 를 사용하여 리소스 그룹을 만듭니다.
이름을 myResourceGroupLB-CR 로 지정합니다.
westus 위치에 있습니다.
az group create \
--name myResourceGroupLB-CR \
--location westus
영역 간 부하 분산 장치 리소스 만들기
az network cross-region-lb create 를 사용하여 지역 간 부하 분산 장치를 만듭니다.
이름을 myLoadBalancer-CR 로 지정합니다.
myFrontEnd-CR 이라는 프런트 엔드 풀.
myBackEndPool-CR 이라는 백 엔드 풀.
az network cross-region-lb create \
--name myLoadBalancer-CR \
--resource-group myResourceGroupLB-CR \
--frontend-ip-name myFrontEnd-CR \
--backend-pool-name myBackEndPool-CR
부하 분산 장치 규칙 만들기
다음과 같은 부하 분산 장치 규칙을 정의합니다.
들어오는 트래픽에 대한 프런트 엔드 IP 구성
트래픽을 수신할 백 엔드 IP 풀
필요한 원본 및 대상 포트
az network cross-region-lb rule create 를 사용하여 부하 분산 장치 규칙을 만듭니다.
이름을 myHTTPRule-CR 로 지정합니다.
프런트 엔드 풀 myFrontEnd-CR 의 포트 80 에서 수신 대기합니다.
포트 80 을 사용하여 백 엔드 주소 풀 myBackEndPool-CR 에 부하 분산된 네트워크 트래픽을 전송합니다.
프로토콜: TCP
az network cross-region-lb rule create \
--backend-port 80 \
--frontend-port 80 \
--lb-name myLoadBalancer-CR \
--name myHTTPRule-CR \
--protocol tcp \
--resource-group myResourceGroupLB-CR \
--backend-pool-name myBackEndPool-CR \
--frontend-ip-name myFrontEnd-CR
백 엔드 풀 만들기
이 섹션에서는 지역 간 부하 분산 장치의 백 엔드 풀에 두 개의 지역 표준 부하 분산 장치를 추가합니다.
부하 분산 장치에 지역 프런트 엔드 추가
이 섹션에서는 두 지역 부하 분산 장치 프런트 엔드의 리소스 ID를 변수에 배치한 다음 변수를 사용하여 지역 간 부하 분산 장치의 백 엔드 주소 풀에 프런트 엔드를 추가합니다.
az network lb frontend-ip show 를 사용하여 리소스 ID를 검색합니다.
az network cross-region-lb address-pool address add 를 사용하여 지역 간 부하 분산 장치의 백 엔드 풀에 있는 변수에 배치된 프런트 엔드를 추가합니다.
region1id=$(az network lb frontend-ip show \
--lb-name myLoadBalancer-R1 \
--name myFrontEnd-R1 \
--resource-group CreatePubLBQS-rg-r1 \
--query id \
--output tsv)
az network cross-region-lb address-pool address add \
--frontend-ip-address $region1id \
--lb-name myLoadBalancer-CR \
--name myFrontEnd-R1 \
--pool-name myBackEndPool-CR \
--resource-group myResourceGroupLB-CR
region2id=$(az network lb frontend-ip show \
--lb-name myLoadBalancer-R2 \
--name myFrontEnd-R2 \
--resource-group CreatePubLBQS-rg-r2 \
--query id \
--output tsv)
az network cross-region-lb address-pool address add \
--frontend-ip-address $region2id \
--lb-name myLoadBalancer-CR \
--name myFrontEnd-R2 \
--pool-name myBackEndPool-CR \
--resource-group myResourceGroupLB-CR
리소스 그룹 만들기
Azure 리소스 그룹은 Azure 리소스가 배포 및 관리되는 논리적 컨테이너입니다.
New-AzResourceGroup 을 사용하여 리소스 그룹을 만듭니다.
$rg = @{
Name = 'MyResourceGroupLB-CR'
Location = 'westus'
}
New-AzResourceGroup @rg
영역 간 부하 분산 장치 리소스 만들기
이 섹션에서는 지역 간 부하 분산 장치에 필요한 리소스를 만듭니다.
지역간 부하 분산 장치의 프런트 엔드에는 글로벌 표준 sku 공용 IP가 사용됩니다.
`## Create global IP address for load balancer ##
$ip = @{
Name = 'myPublicIP-CR'
ResourceGroupName = 'MyResourceGroupLB-CR'
Location = 'westus'
Sku = 'Standard'
Tier = 'Global'
AllocationMethod = 'Static'
}
$publicIP = New-AzPublicIpAddress @ip
## Create frontend configuration ##
$fe = @{
Name = 'myFrontEnd-CR'
PublicIpAddress = $publicIP
}
$feip = New-AzLoadBalancerFrontendIpConfig @fe
## Create backend address pool ##
$be = @{
Name = 'myBackEndPool-CR'
}
$bepool = New-AzLoadBalancerBackendAddressPoolConfig @be
## Create the load balancer rule ##
$rul = @{
Name = 'myHTTPRule-CR'
Protocol = 'tcp'
FrontendPort = '80'
BackendPort = '80'
FrontendIpConfiguration = $feip
BackendAddressPool = $bepool
}
$rule = New-AzLoadBalancerRuleConfig @rul
## Create cross-region load balancer resource ##
$lbp = @{
ResourceGroupName = 'myResourceGroupLB-CR'
Name = 'myLoadBalancer-CR'
Location = 'westus'
Sku = 'Standard'
Tier = 'Global'
FrontendIpConfiguration = $feip
BackendAddressPool = $bepool
LoadBalancingRule = $rule
}
$lb = New-AzLoadBalancer @lbp`
이 섹션에서는 지역 간 부하 분산 장치의 백 엔드 풀에 두 개의 지역 표준 부하 분산 장치를 추가합니다.
## Place the region one load balancer configuration in a variable ##
$region1 = @{
Name = 'myLoadBalancer-R1'
ResourceGroupName = 'CreatePubLBQS-rg-r1'
}
$R1 = Get-AzLoadBalancer @region1
## Place the region two load balancer configuration in a variable ##
$region2 = @{
Name = 'myLoadBalancer-R2'
ResourceGroupName = 'CreatePubLBQS-rg-r2'
}
$R2 = Get-AzLoadBalancer @region2
## Place the region one load balancer frontend configuration in a variable ##
$region1fe = @{
Name = 'MyFrontEnd-R1'
LoadBalancer = $R1
}
$R1FE = Get-AzLoadBalancerFrontendIpConfig @region1fe
## Place the region two load balancer frontend configuration in a variable ##
$region2fe = @{
Name = 'MyFrontEnd-R2'
LoadBalancer = $R2
}
$R2FE = Get-AzLoadBalancerFrontendIpConfig @region2fe
## Create the cross-region backend address pool configuration for region 1 ##
$region1ap = @{
Name = 'MyBackendPoolConfig-R1'
LoadBalancerFrontendIPConfigurationId = $R1FE.Id
}
$beaddressconfigR1 = New-AzLoadBalancerBackendAddressConfig @region1ap
## Create the cross-region backend address pool configuration for region 2 ##
$region2ap = @{
Name = 'MyBackendPoolConfig-R2'
LoadBalancerFrontendIPConfigurationId = $R2FE.Id
}
$beaddressconfigR2 = New-AzLoadBalancerBackendAddressConfig @region2ap
## Apply the backend address pool configuration for the cross-region load balancer ##
$bepoolcr = @{
ResourceGroupName = 'myResourceGroupLB-CR'
LoadBalancerName = 'myLoadBalancer-CR'
Name = 'myBackEndPool-CR'
LoadBalancerBackendAddress = $beaddressconfigR1,$beaddressconfigR2
}
Set-AzLoadBalancerBackendAddressPool @bepoolcr
부하 분산 장치 테스트
이 섹션에서는 지역 간 부하 분산 장치를 테스트합니다. 웹 브라우저에서 공용 IP 주소에 연결합니다. 지역 부하 분산 장치 백 엔드 풀 중 하나에서 가상 머신을 중지하고 장애 조치(failover)를 관찰합니다.
개요 화면에서 부하 분산 장치의 공용 IP 주소를 찾습니다. 왼쪽 메뉴에서 모든 서비스 를 선택하고 모든 리소스 를 선택한 다음, myPublicIP-cr 을 선택합니다.
공용 IP 주소를 복사하여 브라우저의 주소 표시줄에 붙여넣습니다. IIS 웹 서버의 기본 페이지가 브라우저에 표시됩니다.
지역 부하 분산 장치 중 하나의 백 엔드 풀에서 가상 머신을 중지합니다.
웹 브라우저를 새로 고치고 다른 지역 부하 분산 장치에 대한 연결의 장애 조치(failover)를 관찰합니다.
이 섹션에서는 지역 간 부하 분산 장치를 테스트합니다. 웹 브라우저에서 공용 IP 주소에 연결합니다. 지역 부하 분산 장치 백 엔드 풀 중 하나에서 가상 머신을 중지하고 장애 조치(failover)를 관찰합니다.
부하 분산 장치의 공용 IP 주소를 가져오려면 az network public-ip show 를 사용합니다.
az network public-ip show \
--resource-group myResourceGroupLB-CR \
--name PublicIPmyLoadBalancer-CR \
--query ipAddress \
--output tsv
공용 IP 주소를 복사하여 브라우저의 주소 표시줄에 붙여넣습니다. IIS 웹 서버의 기본 페이지가 브라우저에 표시됩니다.
지역 부하 분산 장치 중 하나의 백 엔드 풀에서 가상 머신을 중지합니다.
웹 브라우저를 새로 고치고 다른 지역 부하 분산 장치에 대한 연결의 장애 조치(failover)를 관찰합니다.
이 섹션에서는 지역 간 부하 분산 장치를 테스트합니다. 웹 브라우저에서 공용 IP 주소에 연결합니다. 지역 부하 분산 장치 백 엔드 풀 중 하나에서 가상 머신을 중지하고 장애 조치(failover)를 관찰합니다.
Get-AzPublicIpAddress 를 사용하여 부하 분산 장치의 공용 IP 주소를 가져옵니다.
$ip = @{
Name = 'myPublicIP-CR'
ResourceGroupName = 'myResourceGroupLB-CR'
}
Get-AzPublicIPAddress @ip | select IpAddress
공용 IP 주소를 복사하여 브라우저의 주소 표시줄에 붙여넣습니다. IIS 웹 서버의 기본 페이지가 브라우저에 표시됩니다.
지역 부하 분산 장치 중 하나의 백 엔드 풀에서 가상 머신을 중지합니다.
웹 브라우저를 새로 고치고 다른 지역 부하 분산 장치에 대한 연결의 장애 조치(failover)를 관찰합니다.
리소스 정리
더 이상 필요하지 않으면 리소스 그룹, 부하 분산 장치 및 모든 관련 리소스를 삭제합니다.
이렇게 하려면 리소스가 포함된 CreateCRLBTutorial-rg 리소스 그룹을 선택한 다음, 삭제 를 선택합니다.
더 이상 필요하지 않은 경우 az group delete 명령을 사용하여 리소스 그룹, 부하 분산 장치 및 모든 관련 리소스를 제거합니다.
az group delete \
--name myResourceGroupLB-CR
더 이상 필요하지 않은 경우 Remove-AzResourceGroup 명령을 사용하여 리소스 그룹, 부하 분산 장치 및 나머지 리소스를 제거할 수 있습니다.
Remove-AzResourceGroup -Name 'myResourceGroupLB-CR'
다음 단계
이 자습서에서는 다음을 수행합니다.
지역 간 부하 분산 장치 만들기
지역 간 부하 분산 장치의 백 엔드 풀에 지역 부하 분산 장치 추가
부하 분산 규칙 만들기
부하 분산 장치를 테스트했습니다.
지역 간 부하 분산 장치에 대한 자세한 내용은 다음을 참조하세요.