[TIL] AWS 클라우드 (4): Elastic Load Balancer

hanbyul.choi·2023년 8월 3일
0

[TIL]

목록 보기
33/39

1. Scalability vs Availability

ScalabilityAvailability는 모두 분산 시스템에서 중요한
개념이지만 서로 다른 개념이다.

Scalability

  • Scalability는 시스템이 커지거나 작아질 수 있는 능력을 의미한다.
  • 이는 사용자 수, 데이터 양, 처리량 등이 증가할 때 시스템의 성능과 처리 능력을 유지하거나 향상시키는 것을 말한다.
  • 이를 위해서는 확장성 있는 시스템 디자인과 구현이 필요합니다.

Availability

  • Availability는 시스템이 정상적으로 작동하고 사용 가능한 상태를 유지하는 능력을 의미한다.
  • 즉, 사용자가 요청하는 서비스를 항상 이용 가능한 상태로 유지하는 것이다.
  • 이를 위해서는 시스템의 안정성을 높이고 장애 대응 능력을 강화하는 것이 중요하다.

따라서, Scalability는 시스템의 성능과 처리 능력을 유지하거나 향상시키는 능력을 의미하고 Availability는 시스템의 안정성과 사용 가능한 상태를 유지하는 능력을 의미한다. 둘 다 중요한 개념이며, 분산 시스템을 설계하고 구현할 때 모두 고려해야한다.

2. ELB 살펴보기

Elastic Load Balancer는 AWS에서 제공하는 로드 밸런싱 서비스로, 다수의 EC2 인스턴스를 사용하여 트래픽을 분산시킨다.

다양한 유형의 로드 밸런서가 있으며 각각의 특징은 아래와 같다.

1. Application Load Balancer: OSI 모델 7계층에서 동작하며, HTTP/HTTPS 트래픽을 처리한다. 또한, 컨테이너화된 애플리케이션과 연동하여 사용할 수 있다.
2. Network Load Balancer: OSI 모델 4계층에서 동작하며, TCP/UDP 트래픽을 처리한다. 높은 처리량을 필요로 하는 애플리케이션에 적합하다.
3. Classic Load Balancer: OSI 모델 4~7계층에서 동작하며, HTTP/HTTPS, TCP/UDP 트래픽을 처리한다. 가장 오래된 형태의 로드 밸런서이며, 대부분의 경우 Application Load Balancer나 Network Load Balancer를 사용하는 것이 좋다.

각각의 로드 밸런서는 다양한 기능과 구성을 제공하며, 선택적으로 사용할 수 있다. 예를 들어 Application Load Balancer는 URL 경로 라우팅, 호스트 기반 라우팅 등 다양한 라우팅 정책을 제공한다. 이러한 로드 밸런서는 고가용성과 확장성을 제공하므로, 인스턴스의 장애와 부하 분산에 대한 대응을 용이하게 해준다.

3. SSL과 HTTPS

SSL 이란 ? Secure Sockets Layer

인터넷 상에서 정보를 안전하게 전송하기 위한 프로토콜이다. SSL은 클라이언트와 서버 사이에 안전한 접속을 만들어주며, 전송되는 데이터를 암호화하여 정보의 안전성을 보장한다.

TLS란? Transport Layer Security

SSL을 보완한 기술로 현재는 사실 SSL이 아니라 TLS 기술이다.

그러나 모두가 아직까지 SSL이라고 부르고 있다

0개의 댓글