Route 53와 Elastic Load Balancer는 아마존 웹 서비스(AWS)의 서비스 중 일부입니다.

각각 DNS 서비스와 로드 밸런싱 서비스를 제공합니다.

 

Route 53

Amazon Route 53은 AWS에서 제공하는 확장 가능한 도메인 이름 시스템 (DNS) 웹 서비스입니다. Route 53은 사용자가 웹사이트나 웹 애플리케이션을 실행하는데 필요한 세 가지 기본 기능을 제공합니다.

도메인 등록 : 사용자가 도메인 이름을 등록할 수 있게 해줍니다.

DNS 라우팅 : 사용자가 DNS 트래픽을 Amazon EC2 인스턴스, Elastic Load Balancers 또는 Amazon S3 버킷과 같은 AWS 리소스로 라우팅할 수 있게 해줍니다.

건강 검사 : 애플리케이션이 원활하게 작동하는지 검사하고, 문제가 있는 경우 사용자에게 알릴 수 있습니다.

  • Route 53은 AWS의 관리형 DNS(Domain Name System) 서비스입니다. DNS는 도메인 이름과 IP 주소 간의 매핑을 관리하는 시스템으로, 사용자가 도메인 이름을 입력하면 해당 도메인 이름에 대응하는 IP 주소를 반환해줍니다.
  • Route 53은 고가용성과 확장성을 제공하며, 전 세계의 DNS 서버에 분산하여 사용자에게 신속하고 안정적인 DNS 조회를 제공합니다.
  • Route 53은 DNS 레코드를 관리하는 기능을 제공하며, 도메인 등록, DNS 쿼리 로깅, 트래픽 라우팅, 상태 검사 등 다양한 기능을 제공합니다.
더보기

DNS 쿼리 로깅(DNS Query Logging) : 

  • DNS 쿼리 로깅은 DNS 서버에서 받는 모든 DNS 요청에 대한 기록입니다. 기록을 통해 어떤 클라이언트가 어떤 DNS 쿼리를 수행했는지, 그리고 요청이 어떻게 처리되었는지를 있습니다. DNS 쿼리 로깅은 보안 이슈를 감지하거나 네트워크 행동을 분석하는 유용할 있습니다.
    Amazon Route 53 DNS 쿼리 로깅을 지원합니다. 이를 통해 Route 53 DNS 쿼리에 응답하는 방식을 추적하고, 로깅 데이터를 CloudWatch Logs 저장하거나, Amazon S3 버킷이나 Amazon Kinesis Data Firehose 통해 로그 데이터를 전송할 있습니다.

트래픽 라우팅(Traffic Routing) : 

  • 트래픽 라우팅은 네트워크 트래픽이 도달하는 목적지를 결정하는 과정입니다. 이는 IP 주소를 기반으로 하며, 어느 서버에서 다른 서버로 데이터 패킷이 어떻게 이동하는지를 정의합니다.
    Amazon Route 53
    경우, 여러 가지 트래픽 라우팅 정책을 제공합니다. 예를 들어, 라운드 로빈, 지리적, 레이턴시 기반, 헬스 체크 기반 라우팅 등이 있습니다. 정책은 애플리케이션의 요구 사항에 따라 다양한 상황에 유연하게 대응할 있도록 합니다. 예를 들어, 지리적 라우팅을 사용하면 사용자의 지리적 위치에 따라 다른 엔드포인트로 트래픽을 라우팅할 있습니다. 레이턴시 기반 라우팅은 트래픽을 가장 빠른 응답 시간을 가진 엔드포인트로 라우팅하는 사용됩니다.

라운드 로빈(Round Robin) : 

컴퓨터 과학에서 널리 사용되는 용어로, 특히 프로세스 스케줄링, 네트워크 로드 밸런싱, DNS 쿼리에 응답 등 다양한 분야에서 사용됩니다.

라운드 로빈은 공정한 순환 접근 방식을 나타내며, 이것은 모든 작업이 동등하게 처리되는 순서대로 차례로 처리된다는 것을 의미합니다. 간단한 예를 들어, 5개의 요청이 있고 각 요청을 순서대로 처리하는 경우, 첫 번째 요청이 먼저 처리되고, 다음에는 두 번째 요청, 그리고 세 번째 요청, 네 번째 요청, 다섯 번째 요청이 순서대로 처리됩니다. 모든 요청이 한 번씩 처리된 후에는 다시 첫 번째 요청으로 돌아가서 순환을 반복합니다.

네트워크 로드 밸런싱에서 라운드 로빈 알고리즘은 들어오는 요청을 순차적으로 서버에 분배하는 방식을 의미합니다. 예를 들어, 개의 서버가 있고 라운드 로빈 방식을 사용하는 경우, 번째 요청은 번째 서버에, 번째 요청은 번째 서버에, 그리고 번째 요청은 번째 서버에 전달됩니다. 그리고 번째 요청은 다시 번째 서버로 돌아갑니다. 방식은 모든 서버가 대략적으로 동일한 양의 로드를 갖도록 해주어서, 모든 서버의 리소스를 공정하게 이용할 있게 합니다.

 

 

Elastic Load Balancing (ELB)

ELB는 AWS에서 제공하는 로드 밸런서 서비스로, EC2 인스턴스로 들어오는 애플리케이션 또는 네트워크 트래픽을 자동으로 분산시킵니다. 이 서비스는 단일 EC2 인스턴스가 다운되거나 과부하 상태가 되는 것을 방지하며, 애플리케이션의 가용성과 내결함성을 증가시킵니다. ELB는 세 가지 유형의 로드 밸런서를 제공합니다: Classic Load Balancer, Network Load Balancer, Application Load Balancer.

Classic Load Balancer는 요청을 여러 EC2 인스턴스로 분산시키는데, 이는 프로토콜 레벨에서 동작합니다.

Network Load Balancer는 초당 수백만 개의 요청을 처리할 수 있으며, TCP, UDP 및 TLS (전송 계층 보안) 연결에서 최고 성능을 제공합니다.

Application Load Balancer는 HTTP 및 HTTPS 트래픽에 최적화되어 있으며, 요청 수준에서 (7 계층) 라우팅하는 능력이 있습니다.

이러한 서비스는 AWS의 클라우드 인프라에서 고 가용성과 확장 가능한 웹 애플리케이션을 구축하는데 중요한 역할을 합니다.

  • Elastic Load Balancer는 클라우드 환경에서 트래픽을 여러 대의 EC2 인스턴스 또는 컨테이너 인스턴스로 분산하는 로드 밸런서 서비스입니다.
  • ELB는 여러 개의 가용 영역에서 인스턴스를 로드 밸런싱하여 고가용성을 제공합니다. 고객의 요청을 여러 인스턴스로 분산시켜 부하를 분담하고, 장애 발생 시 다른 인스턴스로 트래픽을 자동으로 전환하여 서비스의 지속성을 보장합니다.
  • ELB는 클라이언트의 요청을 받아 인스턴스 그룹으로 트래픽을 분산하는 기능을 수행하며, 사용자 정의 세션 설정, SSL/TLS 종료, 상태 검사 등 다양한 기능을 제공합니다.
  • ELB Application Load Balancer(ALB), Network Load Balancer(NLB), Classic Load Balancer(CLB) 구분됩니다. 각각의 유형은 서비스 제공 요구사항에 맞게 선택하여 사용할 있습니다.

'Infra' 카테고리의 다른 글

TCP/IP stack (4 Layers)  (0) 2023.06.15
OSI model (7 Layers)  (0) 2023.06.14
S3(Simple Storage Service), CloudFront  (0) 2023.05.24
EC2, CodeDeploy pt.2  (0) 2023.05.24
EC2, CodeDeploy pt.1  (0) 2023.05.24