[Amazon Web Services] AWS란 무엇인가?
(글쓴날 : 2020.03.25)
* 이 글은 AWS(Amazon Web Services)에 대한 단순 소개 글입니다.
AWS(Amazon Web Services)란?
1) AWS(Amazon Web Services) 소개
AWS란 Amazon Web Services의 약자로 아마존의 클라우드 컴퓨팅 사업부입니다.
2006년 출시된 이후 현재 클라우드 컴퓨팅 업계에서 세계 1위의 점유율을 차지하고 있으며, 이미 시장의 대표로 자리매김한 누구나 한 번쯤 들어봤을 서비스입니다.
클라우드 컴퓨팅이란 종량 요금제 방식으로 클라우드 서비스 플랫폼을 통해 컴퓨팅 파워, DB스토리지, 기타 IT 리소스를 온디맨드로 제공하는 서비스를 의미하며, 기존 하드웨어에 의존해 서버를 구축하던 방식에 비해 막대한 사전투자를 할 필요가 없고, 하드웨어의 유지 보수에 신경을 쓰지 않게 됨으로써 오로지 서비스를 제공하는 것에만 신경을 집중할 수 있는 엄청난 장점이 있습니다.
특히, 스타트업처럼 아직 서비스가 안정화되지 않은 경우, AWS로 백엔드 인프라를 구축한다면 보다 유연하고 저렴하게 여러 가지 문제들을 해결할 수 있습니다.
좀 더 자세히 알아보면, 클라우드 컴퓨팅의 유형으로는,
크게 IaaS, PaaS, SaaS의 3가지 유형이 있습니다.
(1) IaaS
서비스로서의 인프라를 의미하며, 하드웨어 및 각종 리소스에 대한 제어와 관리를 사용자가 직접 하는 형태입니다.
대표적으로 AWS, Microsoft Azure 등이 있습니다.
(2) PaaS
서비스로서의 플랫폼을 의미하며, 하드웨어, OS 등의 관리를 서비스 제공자가 대신함으로써 사용자는 제공된 미들웨어를 통해 애플리케이션 개발과 관리만 하는 형태입니다.
대표적으로 Heroku가 있습니다.
(3) SaaS
서비스로서의 소프트웨어를 의미하며, 서비스 제공자가 직접 운영하고 관리하는 완제품의 형태입니다. 이경우 사용자는 어떻게 서비스를 활용할 것인지만 생각하면 됩니다.
대표적으로 Dropbox, Google Drive, Naver Cloud, Web Mail 등이 있습니다.
AWS는 Gartner가 IaaS 분야 Magic Quadrant에서 9년 연속 리더로 선정했으며, 약 190여 국가에서 서비스를 제공하고 있습니다. (물론 AWS는 IaaS뿐만이 아닌 각종 PaaS와 SaaS 도 제공합니다.)
* 2019년 7월 Gartner, Magic Quadrant for Cloud IaaS(Infrastructure as a Service)
* 글 쓴 날 기준 AWS 리전 현황
* AWS를 사용 중인 기업 (이외에도 여러 기업 및 스타트업, 공공 부문에서 사용되고 있습니다.)
2) AWS(Amazon Web Services)의 주요 서비스
AWS가 제공하는 서비스의 종류는 정말 많기에, 주요 서비스만 가볍게 살펴보도록 하겠습니다.
(1) EC2
EC2란 Elastic Compute Cloud의 약자로 AWS의 대표적인 서비스입니다.
실제 클라우드 컴퓨터를 인스턴스화하여 대여하는 서비스이고, 기본적으로 켜놓은 시간을 기준으로 요금이 발생합니다.
거의 모든 작업이 API화가 되어있어 특히, 트래픽에 부하가 걸리면 인스턴스를 자동으로 늘리고 감소하면 줄이는 Auto Scaling 서비스를 이용할 수 있습니다.
micro, small, large, xlarge 등으로 인스턴스의 성능이 세분화되어 있으며 당연히 성능이 좋을수록 요금이 비싸지는 구조입니다.
인스턴스의 방식 또한 사용한 시간만큼 과금되는 온디맨드 인스턴스 방식과, 사용되고 있지 않은 EC2 자원을 경매로 싸게 사용할 수 있는 스팟 인스턴스 방식, 사용할 기간과 사용량을 미리 예약해 요금을 선납하여 사용료를 할인받을 수 있는 예약 인스턴스 방식이 있으므로 EC2 서비스를 사용하는 환경에 맞추어 적절히 선택해야 보다 효율적으로 이용하실 수 있습니다.
(2) Lambda
Lambda란 요즘 떠오르고 있는 Serverless Architecture를 구축할 때 사용되는 서비스입니다.
기본적으로 JavaScript, Python, Go, Java, Ruby 등의 언어를 지원하며, 함수화된 서비스를 Lambda에 올려 해당 함수의 실행 시간과 용량을 기준으로 요금이 발생하는 방식이므로 만약 트래픽이 낮은 서비스라면 EC2에 비해 요금 부담이 훨씬 덜하게 됩니다.
다만, EC2처럼 항시 대기하는 서버가 아니므로 요청이 발생했을 때 Cold start되어 응답하는 데까지의 시간이 EC2에 비해 조금 더 걸리게 됩니다.
따라서, 운영할 서비스의 종류와 목적에 따라 EC2와 Lambda 중 적절히 선택해야 합니다.
(3) S3
S3란 Simple Storage Service의 약자로 업계 최고의 성능과 확장성, 가용성, 내구성을 가지고 있다고 자랑하는 AWS의 핵심 스토리지 서비스입니다.
무제한 용량을 제공하며 사용한 만큼만 비용을 지불하는 것이 원칙입니다.
Bucket이라는 영역을 생성해 데이터를 Key-value의 객체 형식으로 저장하며,
특히, 99.999999999%의 내구성을 제공한다고 합니다. (0.000000001%는 훼손되는 건가?)
(4) RDS
RDS란 AWS의 관계형 데이터베이스 PaaS입니다.
MySQL, MariaDB, Oracle 등 주요 데이터베이스를 모두 선택하실 수 있으며, 찾아본 결과 항상 켜져 있어야 하는 데이터베이스 특성상 요금이 많이 나오기 때문에 기업들이 주로 사용을 한다고 합니다.
EC2 인스턴스에 데이터베이스를 직접 설치하면 요금 면에선 확실히 저렴하지만 기업에서는 요금 이상의 잠재적 기회비용과 시간을 절약할 수 있다고 합니다.
(5) DynamoDB
DynamoDB란 AWS 또 다른 데이터베이스 PaaS입니다.
AWS의 데이터베이스 분야를 대표하는 서비스이며, RDS와 달리 NoSQL 기반의 데이터베이스로 MongoDB와 비슷하다 생각하시면 되겠습니다.
또한, RDS에 비해 가격이 매우 저렴하고 무료 용량도 제공할 뿐만 아니라 AWS에서 직접 관리하기 때문에 별도의 EC2를 필요로 하지 않으므로 사용량에 따라 요금이 부과됩니다.
(6) CloudFront
CloudFront란 CDN(Content Delivery Network) 서비스입니다.
전 세계 여러 곳에 리전을 두고 있는 AWS답게, CDN 서비스도 제공을 하고 있으며 특히, Signed URL, Signed Cookie와 같은 보안 기능을 적용해 인증된 사용자에게만 콘텐츠를 제공할 수 있어 유료 콘텐츠 서비스를 운영할 때 유용하게 쓰인다고 합니다.
(7) Route 53
Route 53이란 AWS의 DNS 서비스입니다.
AWS 인프라의 각종 네트워크를 제어할 수 있으며, 도메인 등록, DNS 라우팅, 상태 확인과 같은 주요 기능들을 손쉽게 사용하실 수 있습니다.
굳이 Route 53을 이용하지 않으셔도 상관없지만, AWS 내의 다른 서비스들과 호환성이 좋아 연동이 잘 된다는 점이 큰 매력으로 작용하는 것 같습니다.
여기까지, 대세로 떠오른 클라우드 컴퓨팅의 대표주자 AWS(Amazon Web Services)에 대해 알아보았습니다.
요새, AWS Educate를 통해 AWS를 배워나가는 중인데 어서 빨리 클라우드 세상에 서버를 구축할 수 있는 실력이 되었으면 좋겠습니다.
만약, AWS에 대해 더 자세히 알고 싶으시거나 궁금하신 분들이 계시다면...
* Amazon Web Services 공식 홈페이지 : Amazon Web Services 공식 홈페이지
위의 Amazon Web Services 공식 홈페이지를 참조하시면 되겠습니다.
감사합니다.
'Deprecated' 카테고리의 다른 글
[Baekjoon Online Judge] 백준 14889번 스타트와 링크(Python) (0) | 2020.03.27 |
---|---|
[Baekjoon Online Judge] 백준 1182번 부분수열의 합(Python) (0) | 2020.03.25 |
[Baekjoon Online Judge] 백준 6603번 로또(Python) (0) | 2020.03.24 |
[Algorithm] 에라토스테네스의 체 (0) | 2020.03.23 |
[Algorithm] 유클리드 호제법 (0) | 2020.03.23 |