- 부하 분산이란?
- 서비스 규모가 커지면 물리나 가상 서버 한 대로는 모든 서비스를 수용할 수 없게 된다.이런 문제점을 해결하기 위해 L4나 L7 스위치라는 로드 밸런서를 통해 부하를 분산한다.
- 로드밸런서에는 동일한 서비스를 하는 다수의 서버가 등록되고 사용자로부터 서비스 요청이 오면 로드 밸런서가 받아 사용자별로 다수의 서버에 서비스 요청을 분산시켜 부하를 분산한다.
- 로드 밸런서에는 서비스를 위한 가상 IP(VIP)를 하나 제공하고 사용자는 각 서버의 개별 IP 주소가 아닌 동일한 가상 IP를 통해 각 서버로 접근한다.
- 방법
- 로드밸런서도 부하를 다수의 장비에 분산시키기 위해 가상 IP 주소를 갖게 된다.
- 서비스를 제공하는 서버의 IP인 리얼 IP(RIP)와 로드 밸런서에서 서비스를 대표하는 VIP가 있다.
- VIP에는 리얼 IP가 바인딩되어 있고 사용자가 VIP로 서비스를 요청하면 해당 VIP에 연결된 리얼 IP로 해당 요청을 전달한다.
- 서비스를 제공하는 서버의 IP인 리얼 IP(RIP)와 로드 밸런서에서 서비스를 대표하는 VIP가 있다.
- 로드밸런서도 부하를 다수의 장비에 분산시키기 위해 가상 IP 주소를 갖게 된다.
- 헬스 체크
- 로드 밸런서에서는 부하 분산을 하는 각 서버의 서비스를 주기적으로 헬스 체크해 정상적인 서비스 쪽으로만 부하를 분산하고 비정상적인 서버는 서비스 그룹에서 제외해 트래픽을 보내지 않는다.
- 서비스 그룹에서 제외된 후에도 헬스 체크를 계속 수행해 다시 정상으로 확인되면 서비스 그룹에 해당 장비를 다시 넣어 트래픽이 서버 쪽으로 보내지도록 해준다.
- 방식
- ICMP
- TCP 서비스 포트
- TCP 서비스 포트 : Half Open
- HTTP 상태 코드
- 콘텐츠 확인
- 주기와 타이머
- 로드 밸런서에서는 부하 분산을 하는 각 서버의 서비스를 주기적으로 헬스 체크해 정상적인 서비스 쪽으로만 부하를 분산하고 비정상적인 서버는 서비스 그룹에서 제외해 트래픽을 보내지 않는다.
- 부하 분산 알고리즘
- Round Robin
- Least Robin
- Weighted Round Robin
- Weighted Least Connection
- Hash
- 로드 밸런서 구성 방식
- 원암 구성
- 로드 밸런서가 중간 스위치 옆에 연결되는 구성
- 서버로 들어가거나 나오는 트래픽이 로드밸런서를 경유하거나 경유하지 않을 수 있다.
- 인라인 구성
- 서버로 가는 경로 상에 로드 밸런서가 연결되는 구성
- 트래픽이 흐르는 경로에 로드 밸런서가 있어서 서버로 향하는 트래픽이 로드 밸런서의 서비스를 받는지 여부와 상관 없이 로드 밸런서를 모두 통과한다.
- 원암 구성
- 로드 밸런서 동작 모드
- 트랜스패런트 모드
- 로드 밸런서가 OSI 2계층 스위치처럼 동작하는 구성이다.
- VIP 주소와 실제 서버가 동일 네트워크 사용
- 라우티드 모드
- 라우팅 역할 수행
- DSR(Direct Server Return) 모드
- 사용자의 요청이 로드 밸런서를 통해 서버로 유입된 후에 다시 로드 밸런서를 통하지 않고 서버가 사용자에게 직접 응답하는 모드
- 트랜스패런트 모드
- 유의사항
- 원암 구성 동일 네트워크 사용
- 동일 네트워크에서 서비스 IP 호출
- HAProxy 설정
'🍀 Cloud Architect > Network' 카테고리의 다른 글
[IT 엔지니어를 위한 네트워크 입문] 13장 네트워크 디자인, 14장 가상화 기술, 15장 가상화 서버를 위한 네트워크 (0) | 2023.07.09 |
---|---|
[IT 엔지니어를 위한 네트워크 입문] 11장 - 이중화 기술 (0) | 2023.07.09 |
[IT 엔지니어를 위한 네트워크 입문] 10장 - 서버의 방화벽 설정/동작 (0) | 2023.07.09 |
[IT 엔지니어를 위한 네트워크 입문] 9장 - 보안 (0) | 2023.07.09 |
[IT 엔지니어를 위한 네트워크 입문] 8장 - 서버 네트워크 기본 (0) | 2023.07.09 |