2022. 10. 1. 03:05ㆍSK 쉴더스 루키즈
로드 밸런싱(Load Balancing)
- 서버가 처리해야 할 일을 여러 대의 서버로 나눠서 처리
- 한대의 서버로 부하가 집중되지 않아 원활한 서비스 제공 가능
- 하나의 서버에 문제가 발생해도 다른 서버들이 응답
- Health Check 기능으로 서버 문제 발생 여부 확인 가능
종류
1. ALB(Application Load Balancer) : 7계층 로드 밸런서
- URL와 HTTP 헤더 등을 보고 부하를 분산
- NLB보다 먼저 출시, round robin 지원
2. NLB(Network Load Balancer) : 4계층 로드 밸런서
- IP 주소와 Port 번호 등을 보고 부하를 분산
- ALB보다 나중 출시, Hash Function 지원
- EIP 부여 가능
EIP(Elastic IP Address) : 고정 IP를 의미하며 IP 주소가 바뀌지 않고 계속 같은 IP 주소를 사용 가능 하게 해주는 서비스
용도 : 도메인 주소에 IP 주소를 고정할 때 사용
ALB : DNS 경로를 통해서 접속
NLB : 탄력적IP주소(EIP) 또는 DNS 경로를 통해서 접속
둘중 하나로만 접속 할 수 있으며 EIP가 우선 적용됨
기법
1. 라운드 로빈 방식(Round Robin Method)
- 클라이언트로부터 받은 요청을 로드밸런싱 대상 서버에 순서대로 할당하는 방식
- 4개의 서버가 존재 할 경우 1 - 2 - 3 - 4 - 1 - 2 - 3 - 4 순으로 돌아가면서 할당
- 서버들의 스펙이 모두 동일할 경우
2. 가중 라운드로빈 방식(Weighted Round Robing)
- 각각의 서버에 가중치를 부여한뒤 가중치가 높은 서버에 더 많은 클라이언트의 요청을 할당하는 방식
2개의 서버가 존재하며 A에는 3의 가중치가 B에는 1의 가중치가 부여되었다면 A는 3번의 요청을 B에는 1번의 요청을 할당
- 서버들의 스펙이 다를 경우
3. 최소 응답 시간(Least Response Time)
- 평소 서버들의 응답 시간 측정 후 가장 빠른 응답 시간을 보내는 서버로 요청을 우선 할당하는 방식
4. 최소 연결(Least Connection Method)
- 클라이언트로부터 요청이 들어오면 가장 연결이 적은 서버에 할당하는 방식
- A 서버에 4개의 클라이언트 요청이 할당되었고 B 서버에 2개의 요청이 할당되었다면 연결이 가장 적은 B에 우선 할당
5.해시 함수(Hash Function)
- 출발지 IP, 출발지 Port, 목적지 IP, 목적지 Port 등 에 해당하는 특정 요청들을 특정 서버로만 할당 시키는 방식
- IP나 Port를 해싱한 뒤에 일치하는 서버에 할당하기 때문에 항상 고정된 서버에 할당
- Sticky Session (세션이 고정됨)
*해싱(IP나 Port 값을 해시 함수에 넣어 고정된 해시값을 생성하는 행위)
'SK 쉴더스 루키즈' 카테고리의 다른 글
로드 밸런싱 - ALB (0) | 2022.10.02 |
---|---|
로드 밸런싱 - NLB (0) | 2022.10.02 |
Vmware(Ubuntu) - workbench (0) | 2022.09.30 |
IaaS - EC2 & RDS(gnuboard) (0) | 2022.09.30 |
IaaS - DB(RDS_workbench) (0) | 2022.09.29 |