본문 바로가기

CLOUD/AWS

[공부한 것 정리] 다양한 요금제 & 확장성 & Elastic Load Balancing

(작성된 글은 AWS Cloud Practitioner Essentials (Korean) 참고 및 사진들도 영상에서 첨부해 왔습니다.)

 

다양한 요금제


1. 온디멘드

2. Saving plans

3. 예약 인스턴스

4. 스팟 인스턴스

5. 전용 호스트

 

요금에 대해서는 기업이 원하는 방향, 선택지에 따라 다르기 때문에 관심 있을 때 검색해보면 자세한 설명이 존재하므로 종류만 정리해두고 넘어가겠습니다.

 

 

AWS의 또 다른 주요 이점 확장성과 탄력성


온프레미스 Data Center에서는 딜레마가 존재한다. 고객 워크로드는 시간에 따라 다르고 평균량에 따른 하드웨어 개수를 준비해두었다가 피크치에서는 고객에게 서비스를 제대로 전달할 수 없는 현상이 발생하기도 한다. 그렇다고 피크치에 맞는 하드웨어를 준비해두면 올바른 것일까?

 

AWS는 완전히 다르게 매일 매시간의 수요에 맞는 워크로드를 프로비저닝 할 수 있도록 해준다.

수요에 따라 인스턴스를 추가하고 수요가 떨어지면 그에 맞게 필요 없는 인스턴스는 폐기합니다. 이것을 Amazon EC2 Auto Scaling이라고 이해하시면 좋을 것 같습니다. (아래와 같은 그림을 보고 이해하시면 빠릅니다)

 

 

규모 조정 문제는 이렇게 Amazon EC2 Auto Scaling으로 해결할 수 있지만 트래픽 문제가 발생할 수 있습니다.

 

커피숍을 또 예로 들어봅시다.

 

주문을 받는 직원(인스턴스)이 3명 존재합니다. 손님 4명이 직원 한 명 앞에 줄을 서서 기다리고 있다면 남은 직원 2명은 일을 하지 않고 놀게 되는데 이러한 문제를 호스트(직원)가 존재하여 적절하게 손님들을 직원들에게 배치해주고 줄이 짧은 쪽으로 손님들을 인도해준다면 좋은 효과를 볼 수 있겠죠?

 

이와 같은 개념이 AWS 환경에도 적용됩니다.

 

여기서 커피숍 호스트(직원)의 역할을 AWS에서도 무엇인가가 해줄 수 있는데 다음과 같이 로드 밸런싱(Load Balancing) 개념이 등장하며 이것은 곧 트래픽을 적절하게 분산시키기 위함입니다.

고성능, 비용효율성, 고가용성, 자동확장 기능을 제공해준다면 기존 Data Center와는 다르게 파격적일 것입니다.

 


Elastic Load Balancing

이러한 로드 밸런싱을 제공해주는 것이 AWS에서 Elastic Load Balancing입니다.

 

리전 수준 구조에서 제공되는데, 첨부한 사진들을 보면서 이해하는 게 빠릅니다.

 

프런트 엔드와 백엔드 사이의 커뮤니케이션을 예를 들어 봅시다.

 

지금 프런트 엔드에서 인스턴스 개수 5개, 백 엔드에서 인스턴스 개수 4개가 존재하며 ELB(Elastic Load Balancing) 없이 네트워크가 이루어져 있습니다. 지금은 개수가 셀 수 있는 정도이지만 수백개, 수천개의 인스턴스가 존재한다면 효율적인 인스턴스 네트워크를 유지할 수 있을까? 를 생각해야한다. 이것에 대한 해결책이 ELB 입니다.
ELB는 리전구조의 단일 URL로 각 프런트 엔트 인스턴스에서 사용합니다. 알아서 규모를 조정하고 연결된 인스턴스 갯수를 조정하며 필요하면 백 엔드 측 인스턴스 개수를 늘리거나 축소시킬수 있습니다. 이러한 작업을 자동으로 해주는 것입니다. 따라서, 얼마나 효과적인지 이해할수 있습니다.

 

진정한 분리된 아키텍처로써 구축이 가능하고 AWS는 이를 실행시켜줍니다!