소소한 IT이야기/클라우드

Azure 클라우드 - Load Balancer

Klaus 2023. 8. 26. 22:49

1. Load Balancer

- 네트워크나 서버 환경에서 트래픽을 분산시켜 여러 대의 서버나 리소스에 균등하게 분배하는 기술이나 전략으로 주로 웹 서버나 애플리케이션 서버와 같이 다수의 클라이언트로부터 요청을 받는 서버 환경에서 사용

- 서버 부하를 분산시켜 단일 서버가 과부하가 걸리지 않도록 하며, 서비스의 가용성과 성능을 향상시킬 수 있는 기술

 

[+] 로드 밸런싱의  두 가지 주요 유형

- 하드웨어 로드 밸런싱: 전용 하드웨어 장치를 사용하여 트래픽을 분산시키는 방식

> 이러한 장치는 로드 밸런서라는 이름으로 알려져 있으며, 고성능 네트워크 컴포넌트를 통해 효과적으로 트래픽 관리 목적으로 사용

- 소프트웨어 로드 밸런싱: 소프트웨어 기반으로 로드 밸런싱을 구현하는 방식

> 대표적으로 리버스 프록시 서버 (예: Nginx, HAProxy)를 이용하여 로드 밸런싱

> 이러한 소프트웨어는 트래픽 분산과 함께 서버 상태 모니터링, 장애 복구 등 다양한 기능을 제공합니다.

 

[+] 주요 장점

- 고가용성: 단일 서버의 장애로부터 보호하고 서비스의 가용성을 향상시킵니다.

- 성능 향상: 트래픽이 균등하게 분산되므로 각 서버의 부하가 낮아져 전체적인 성능이 향상됩니다.

- 확장성: 서버를 추가하거나 제거하여 시스템을 쉽게 확장할 수 있습니다.

- 장애 복구: 하나의 서버에 장애가 발생하면 로드 밸런서가 트래픽을 다른 서버로 리디렉션하여 중단을 최소화합니다. 

 

[+] AZURE 로드밸런싱 구성시 필요한 조건:

VNET생성, Load Balancer 규칙만들기, 두 개의 VM생성 후 로드밸런싱을 위한 공인 IP 설정

 

[+] Load Balancer 구성

- 프런트엔드 IP 구성: 로드 밸런서의 프런트엔드 IP 주소 및 프로토콜을 구성(로드 밸런서로 들어오는 트래픽)

- 백엔드 풀 구성: 로드 밸런서에 연결할 가상 머신 또는 서비스 인스턴스의 백엔드 풀을 구성

- 로드 밸런싱 규칙 설정: 트래픽을 어떻게 분산시킬지를 정의하는 로드 밸런싱 규칙 (프런트엔드 IP, 백엔드 풀, 포트 등을 기반)

- 검사 프로브 구성: 백엔드 인스턴스의 가용성을 확인하기 위해 주기적으로 검사 프로브를 보냅니다.

- 세션 지속성 및 NAT 구성: 필요한 경우 세션 지속성을 구성하거나 네트워크 주소 변환 (NAT) 규칙을 설정하여 트래픽을 관리합니다.

azure portal

 

azure portal

2. VM 만들기

[+] web-load-001 생성

- 부하 분산을 사용할 VM생성 시 네트워킹에서 로드밸런싱을 선택

 

- Load balancing의 경우에는 미리 만들어 놓은 로드 밸런서를 선택하고, Backend Pool은 로드 밸런서에서 연결될 가상 머신의 그룹을 설정하여 여러 가상 머신 사이에서 트래픽을 분산시켜 성능을 향상하고, 가용성을 보장할 수 있게 합니다.

 

[+] web-load-002 생성

- 기존과 시스템 사양은 그대로 지정하여 생성

azure portal