부하분산장치란 무엇인가?
로드밸런서 혹은 부하분산은 둘 혹은 셋 이상의 중앙처리장치나 저장장치 같은 컴퓨터 자원들에게 작업을 나누는 것을 의미한다. 이를 통해 가용성이나 응답시간을 최적화 할 수 있다. 이 기술은 보통 내부 네트워크를 이용한 병렬처리에 사용한다.
Azure에는 부하분산 장치가 총 3가지가 존재한다.
L4 기반인 부하분산장치
L7 기반인 어플리케이션 게이트웨이
도메인 기반인 트래픽 매니저
이렇게 총 3가지가 존재한다.
우리가 만들어 볼 것은 이 중에서 L4 기반인 부하 분산 장치이다.
부하분산장치 생성하기
가장 먼저 Azure 포탈에 들어간 후 부하분산을 검색한다.
부하분산을 검색하면 위에서 언급한 3가지의 부하분산장치가 나오게 된다. 여기서 우리는 부하 분산 장치를 클릭한 후 만들기를 누른다.
그 후 내가 가지고 있는 구독을 선택한다.
그 후 리소스 그룹을 선택한다.
Azure의 경우 리소스 그룹이라는 것을 통해서 그룹별로 리소스들을 관리할 수 있다.
Azure 로드밸런서에는 3가지의 SKU가 존재한다. SKU는 특정 시나리오에 맞게 조정되며 규모와 기능 및 가격적인 부분에서 차이를 가진다.
이를 비교하기 위해서는
https://learn.microsoft.com/ko-kr/azure/load-balancer/skus
위 사이트를 들어가면 확인이 가능하다.
그 다음 선택하는 것은 형식이다. 형식은 외부로 공개할 external LB 일지 internal LB일지 선택하는 것으로 internal LB의 경우 공인이 없으므로 공개로 선택한다.
그 다음 계층은 지역(서울리전)에만 할 것인지 아니면 전역(전 리전)을 다 선택할 것인지에 대한 것이다. 우리는 지역으로 할 것이다.
그 다음은 공인 IP를 만들어 줘야 한다. 이는 LB에 붙일 IP이다.
프런트앤드 IP 구성 추가를 클릭한다. 그러면 오른쪽에 구성 추가 버튼이 나온다. 거기서 이름을 지어준 후 IP는 IPv4로 설정한 후 IP 유형을 IP주소로 선택한다.
우리는 생성한 공용 IP가 없기에 새로만들기를 누른 후 공용 IP를 만들어 준다. 여기서 영역중복은 가용성 영역 1,2,3에 모두 사용 가능한 공인 IP라고 생각해 주면 된다. 확인을 누른 후 추가를 누른다.
그 다음 만들어 줄 것은 백앤드 풀이다.
백앤드풀은 로드밸런서를 통해 접속 할 서버라고 생각해주면 된다.
여기서 백앤드 추가를 누른다.
이름을 지어준 후 백엔드 풀에 대한 네트워크를 설정해 준다. 나는 기존에 만들어 둔 VNET을 선택 했다.
VNET을 선택한 후 백엔드 풀을 NIC로 할 것인지 IP 주소로 선택할 지를 고른다. 나는 NIC를 선택하여 추가를 눌러주니 내가 기존에 테스트를 위해 만든 서버가 뜨는 것을 확인할 수 있었고 선택해준다.
선택을 하고나면 이런식으로 백엔드풀에 리소스가 추가된다. 저장을 눌러준다.
이제 다음은 부하분산 규칙과 NAT 설정을 해 주는 것이다. 여기서 부하 분산 규칙은 특정 IP와 포트를 통해서 서버를 지정하며, 상태규칙을 통해 서버의 안정성을 확인 후 상태가 정상이라면 분산을 해주는 것이다.
우리는 NAT 설정은 따로 해주지 않는다. NAT 설정은 주로 DNAT 설정이라고 생각해주면 된다.
우리는 부하분산 규칙만 만들것이므로 부하분산규칙 추가를 누른다.
가장 먼저 이름을 지어준 후 프런트앤드 IP와 백엔드풀은 우리가 위에서 생성해 주었던 것들을 넣어준다.
그리고 프로토콜은 TCP로 지정해준다. 포트는 내가 어떤 포트로 들어올건지를 선택해주고 백 엔드 포트는 내부 서버에서는 어떤 포트로 받을 것인지에 대해 설정하는 부분이다.
상태 프로브는 내 백엔드 풀에 대한 상태가 정상인지 아니면 Fail인지를 비교하기 위해서 만드는 것이다.
이름을 지어준 후 프로토콜을 HTTP로 지정했다. 그리고 경로를 /로 지정했다.
이 의미는 http://example.com/ 이라고 할 때 이 경로의 80으로 5초 간격으로 상태를 체크한다는 뜻이다. 아파치가 죽어있거나 /에 대한 명확한 코드가 없을 시 실패라고 뜰 것이다. 그리고 저장을 누르고 저장을 눌러준다.
그리고 이제 검토 후 만들기를 누르면 완성이 된다.
'[Azure]' 카테고리의 다른 글
[Azure] Storage Account란 무엇인가? (24) | 2023.10.04 |
---|---|
[Azure] 가용성 집합이란 무엇인가? (0) | 2023.02.14 |
[Azure] VM 만들기 (0) | 2023.02.13 |
[Azure] VNET 만들기 (0) | 2023.02.09 |
[Azure] Azure 리소스 그룹 생성 (0) | 2023.02.09 |