Wisdom’s Cloud
[AWS] 15. 클라우드 용어 정리(6) 본문
로드 밸런싱(Load Balancing)이란?
- 네트워크 기술의 일종으로, 네트워크 트래픽을 하나 이상의 서버나 장비로 분산하기 위해 사용되는 기술이다.
- 로드 밸런싱을 수행하는 소프트웨어나 하드웨어를 로드 밸런서(Load Balancer)라고 하며, 로드 밸런싱 서비스를 통해 외부에서 발생되는 많은 인터넷 트래픽을 여러 웹 서버나 장비로 부하를 분산하여 처리할 수 있다.
일반적인 웹 트래픽 증가에 대한 처리 방식
- Scale-Up을 통해 CPU, 메모리, 디스크 등의 기능을 업그레이트 하는 방식: 기존보다 높은 성능을 보유한 웹 서버로 시스템을 업그레이드함으로써 문제를 해결하는 방식으로, 필요로 하는 성능이 높아질수록 비용이 기하급수적으로 늘어나는 단점이 있다. 또한 하나의 서버에서 웹 서비스를 제공하여 서버 중지 및 장애로 인한 웹 서비스 가용성에 문제가 발생할 수 있다.
- Scale-Out을 통해 저렴한 노드 여러 개를 하나의 Cluster로 구성하는 방식: Cluster로 구성하는 경우 Cluster 내 하나의 노드에 문제가 발생하여도 웹 서비스가 중단되지 않으므로 가용성이 높은 웹 서비스를 구성할 수 있다. 로드 밸런싱은 Scale-Out 방식의 웹 서비스 구성에 주로 사용되며, 네트워크 트래픽을 서비스의 Port 단위로 제어하고, 트래픽을 분산 처리함으로써 높은 가용성과 부하 분산을 통한 고효율 웹 서비스를 제공한다.
로드 밸런싱의 방식
- Round Robin: Real 서버로의 Session 연결을 순차적으로 맺어주는 방식이다. 연결되어 있는 Session 수에 상관없이 순차적으로 연결시키는 방식으로, Session에 대한 보장을 제공하지 않는다.
- Hash: Hash 알고리즘을 이용한 로드 밸런싱 방식이다. Client와 Server 간에 연결된 Session을 계속 유지해 주는 방식으로, Client가 특정 Server로 연결된 이후 동일 서버로만 연결되는 구조로 Session에 대한 보장을 제공한다.
- Least Connection: Session 수를 고려하여 가장 작은 Session을 보유한 서버로 Session을 맺어주는 연결 방식으로, Session에 대한 보장을 제공하지 않는다.
- Response Time: 서버 간의 Resource와 Connection의 차이가 있는 환경에서 사용되는 방식으로, 응답시간을 고려하여 빠른 응답시간을 제공하는 서버로 Session을 맺어주는 방식이며, Session에 대한 보장을 제공하지 않는다.
'AWS > Beginner' 카테고리의 다른 글
[AWS] 17. 클라우드 용어 정리(7) (0) | 2021.03.05 |
---|---|
[AWS] 16. Amazon ELB (0) | 2021.03.05 |
[AWS] 14. Amazon Route 53 (0) | 2021.02.14 |
[AWS] 13. 클라우드 용어 정리(5) (0) | 2021.02.04 |
[AWS] 12. Amazon RDS (0) | 2021.02.03 |