서버나 장비의 부하를 분산하기 위해 사용하는 장비를 흔히 로드 밸런서라고 부릅니다.트래픽을 분배해주는 기능 때문인데 4계층 이상에서 동작하면서 IP주소나 4계층 정보, 어플리케이션 정보를 확인, 수정하는 기능이 있습니다. 가장 많이 쓰이는 분야는 웹 서버의 부하 분산입니다. 사용자 천 명의 요청을 동시에 처리해주는 서버보다 사용자 5천 명의 요청을 동시에 처리해주는 서버의 가격은 5배가 아니라 이보다 훨씬 비쌉니다. 내부 부품을 이중화 하거나 용량이 더 큰 부품을 사용하면 가격이 크게 올라가므로 작은 장비 여러 대를 묶어 사용하는 방법을 선호합니다. 이런 시스템 확장 방법을 스케일 아웃이라고 하고 하드웨어 장비가 아닌 CPU의 성능이나 서버의 성능을 올리는 방법의 스케일 업이 있습니다.
작은 시스템 여러 대를 운영하더라도 사용자는 서버 배치와 상관없이 하나의 서비스로 보여야 합니다. 로드 밸런서가 서비스에 사용되는 대표 IP 주소를 서비스 IP로 갖고 그 밑에 시스템이 늘어나면 로드 밸런서가 각 시스템에 실제 IP로 변경해 요청을 보냅니다. 이런 로드 밸런서는 웹 , 어플리케이션뿐만 아니라 FWLB(Firw Wall Load Balancing : 방화벽 부하 분산), SLB(Server Load Balancing : 서버 부하 분산) 등의 종류가 있습니다.
로드 밸런서의 주요 기능
- 부하 분산
- 오토 스케일링 : 조건에 맞춰 필요시 server에 컴퓨터 수를 늘리거나 줄여서 부하 관리가 가능. (Scale out, Scale in)
- Health Check : 해당 포트에 트래픽을 보내 애플리케이션이 올바르게 작동하는지 여부를 판별
- 보안 서비스 WAF, NAT
- Web Application Firewall(WAF) : 웹의 비정상 트래픽을 탐지하고 차단하기 위한 방화벽
- Cloud NAT(Network Address Translation) : 외부 연결에 노출되는 IP를 관리하여 위험 최소화
L4 , L7 로드밸런싱
L4 로드밸런서는 네트워크 계층(IP, IPX)이나 트랜스포트 계층(TCP, UDP)의 정보를 바탕으로 로드를 분산합니다. IP주소나 포트번호, MAC주소, 전송 프로토콜에 따라 트래픽을 나누는 것이 가능합니다.
반면 L7 로드밸런서의 경우 애플리케이션 계층(HTTP, FTP, SMTP)에서 로드를 분산하기 때문에 HTTP 헤더, 쿠키 등과 같은 사용자의 요청을 기준으로 특정 서버에 트래픽을 분산하는 것이 가능합니다. 쉽게 말해 패킷의 내용을 확인하고 그 내용에 따라 로드를 특정 서버에 분배하는 것이 가능한 것입니다. 위 그림과 같이 URL에 따라 부하를 분산시키거나, HTTP 헤더의 쿠키값에 따라 부하를 분산하는 등 클라이언트의 요청을 보다 세분화해 서버에 전달할 수 있습니다. 또한 L7 로드밸런서의 경우 특정한 패턴을 지닌 바이러스를 감지해 네트워크를 보호할 수 있으며, DoS/DDoS와 같은 비정상적인 트래픽을 필터링할 수 있어 네트워크 보안 분야에서도 활용되고 있습니다.
참조
로드밸런서(Load Balancer)의 개념과 특징
[BY 가비아] 현대의 모든 정보는 인터넷을 통해 연결되어있습니다. 인터넷의 발달은 데이터 통신을 보다...
m.post.naver.com
참고 문헌
IT 엔지니어를 위한 네트워크 입문
'네트워크' 카테고리의 다른 글
L4 스위치 개념 정리 (0) | 2024.03.26 |
---|---|
NAT, PAT 개념 정리 (0) | 2024.03.25 |
CDN 이란? (0) | 2024.03.25 |