<예시>
Amazon EC2 Auto Scaling을 사용하여 규모 조정 문제를 해결했습니다. 하지만 약간의 트래픽 문제가 발생했군요.
고객이 커피숍에 오면 현재 계산원은 3가지 방법으로 주문을 받을 수 있습니다. 이상하게도 대부분의 고객은 한 줄로 서기 때문에 각 줄에 고객이 균일하게 분산되지 않습니다.(= 한 인스터스에만 쏠림) 가만히 서서 아무 일도 하지 않는 다른 계산원이 주문을 기다리고 있는데도요. 들어온 고객은 어디에서 주문을 해야 할지 정확하게 알지 못합니다. 이 상황에 호스트를 추가한다면 큰 도움이 될 것입니다.
다른 인스턴스가 쉬고 있는 동안 인스턴스 하나만 백업되게 하면 안 됩니다. 요청 처리를 위해 요청을 인스턴스로 라우팅할 방법이 필요합니다. 이 문제를 해결하려면 로드 밸런싱이 필요합니다.
- 로드 밸런서는 요청을 받은 다음 처리할 인스턴스로 라우팅하는 애플리케이션입니다.
Elastic Load Balancing = 호스트역할
- Elastic Load Balancing은 들어오는 애플리케이션 트래픽을 Amazon EC2 인스턴스와 같은 여러 리소스에 자동으로 분산하는 AWS 서비스입니다.
<같은 프로그램을 실행해서 같은 목적으로 수행하는 EC2 인스턴스가 여러개 있을때, 요청이 들어오면 이 요청이 어떤 EC2 인스턴스로 가야하는지 알려줌 즉, EC2 인스턴스 전체에 균일하게 워크로드 분산>
로드 밸런서는 Auto Scaling 그룹으로 들어오는 모든 웹 트래픽의 단일 접점 역할을 합니다. 즉, 들어오는 트래픽의 양에 맞춰 Amazon EC2 인스턴스를 추가하거나 제거하므로 이러한 요청이 로드 밸런서로 먼저 라우팅됩니다. 그런 다음 요청을 처리할 여러 리소스로 분산됩니다. 예를 들어 Amazon EC2 인스턴스가 여러 개인 경우 Elastic Load Balancing은 워크로드를 여러 인스턴스에 분산하므로 어느 한 인스턴스가 대량으로 워크로드를 처리할 필요가 없습니다.
<Auto scaling과 Elastic Load Balancing>
EC2 인스턴스는 인스턴스 규모를 조정하여 수직으로 확장하거나 새 인스턴스를 시작하여 수평으로 확장할 수 있습니다.
Amazon EC2 Auto Scaling을 사용하면 자동 수평 확장을 설정할 수 있습니다.
EC2를 수평으로 확장한 후에는 수신하는 트래픽을 인스턴스에 분산할 도구가 필요합니다.
여기서 Elastic Load Balancer가 등장합니다.
lastic Load Balancing = 수요 분배
Amazon EC2 Auto Scaling = 필요에 따라 더 많은 리소스를 자동으로 프로비저닝
'AWS > Cloud Practitioner' 카테고리의 다른 글
[AWS]서버리스 AWS Lambda, Container, ECS, EKS, Fargate (0) | 2022.04.23 |
---|---|
[AWS]메시징SNS 및 대기열SQS (0) | 2022.04.23 |
[AWS]EC2 규모 조정, Auto Scaling (0) | 2022.04.23 |
[AWS]AWS 서비스와 상호 작용하는 방법(=프로비저닝) (0) | 2022.04.23 |
[AWS]엣지 로케이션 (0) | 2022.04.23 |
댓글