AWS의 서비스 EC2,RDS, S3, lambda

이찬영·2022년 3월 30일
0

EC2 (컴퓨팅)

Amazon Elastic Compute Cloud

크기를 조정할 수 있는 컴퓨팅 용량(=확장식 컴퓨팅)을 제공하는 웹 서비스.
컴퓨팅 용량이란 말 그대로, 소프트웨어 시스템 구축 및 호스팅에 사용하는 Amazon 데이터 센터의 서버를 의미한다.

Amazon EC2를 통해 원하는 만큼 가상 서버를 구축하고 보안 및 네트워크 구성과 스토리지 관리가 가능하다. 또한 Amazon EC2는 요구 사항이나 갑작스러운 인기 증대 등 변동 사항에 따라 신속하게 규모를 확장하거나 축소할 수 있어 서버 트래픽 예측 필요성이 줄어든다

RDS (데이터베이스)

Amazon Relational Database Service

클라우드에서 관계형 데이터베이스를 더욱 쉽게 설치, 운영 및 확장할 수 있는 웹 서비스.
이 서비스는 산업 표준 관계형 데이터베이스를 위한 경제적이고 크기 조절이 가능한 용량을 제공하고 공통 데이터베이스 관리 작업을 관리한다.

서버를 구입하면 CPU, 메모리, 스토리지 및 IOPS가 모두 한데 묶여 제공되는데 RDS를 이용하면 이들이 따로 분할되어 독립적으로 확장할 수 있게 된다. OS 및 데이터베이스의 설치 및 관리 그리고 업데이트를 따로 할 필요가 없어진다. AWS 콘솔이나 AWS API를 통해 손쉽게 백업이나 복구(recovery)가 가능하다.

Amazoon Aurora, PostgreSQL, MySQL, Oracle Detabase 및 SQL Server를 비롯한 6개의 익숙한 데이터베이스 엔진 중에서 선택하여 사용할 수 있다.

S3 (스토리지)

Amazon Simple Storage Service

인터넷용 스토리지 서비스.
Amazon S3를 사용하여 인터넷을 통해 언제 어디서든 원하는 양의 데이터를 저장하고 검색할 수 있다. 웹 인터페이스인 AWS Management 콘솔을 사용해 작업할 수 있다.

  1. 데이터는 버킷 내에 객체로 저장한다.
  2. 객체는 파일과 해당 파일을 설명하는 메타데이터(옵션)로 구성된다.

버킷
객체의 형태이며 하나 이상의 버킷을 가질 수 있다.
각 버킷에 대해,

  1. 액세스 권한을 제어하고
  2. 버킷과 버킷의 객체에 대한 액세스 로그를 확인하고
  3. S3에서 버킷과 버킷의 콘텐츠를 저장할 지리적 리전을 선택할 수 있다.

Lambda

Lambda는 AWS에서 제공하는 서버리스 컴퓨팅 플랫폼이다.
서버리스란, 서버가 없다는 뜻이 아니고 개발자가 서버의 존재를 신경쓸 필요가 없다는 뜻이다. 서버가 잘 돌아가고 있는지, 개수와 사양한 적당한지 등등 신경쓸 필요없이 사용자는 오직 코드에만 집중할 수 있으니 무척 편하다.
이때 사용한 컴퓨팅 시간, 용량에 대해서만 AWS에게 비용을 지불하면 된다.

언제쓰면 좋을까?
예를 들면

  • 서버 띄우지 않고 간단한 코드를 실행시키고 싶은 경우
  • 특정 기간 또는 특정 주기로 코드를 실행시켜야 하는 경우
  • 트리거가 실행될때만 코드를 실행시키고 싶은 경우

하지만 람다의 단점도 존재한다.

  • 코드 용량이 최대 250MB 이다.
  • 함수 실행 시간은 최대 15분이다.
  • 처음 함수 호출시 Cold Start를 하게되고 초기 지연시간이 발생한다.
  • 비싸다.

참고
[AWS] Lambda란 무엇인가
AWS - S3, EC2, RDS
개발자들에게 도움이 될 만한 9가지 기본 아마존 웹서버 (Amazon Web Service, AWS) 서비스

profile
개발을 탐구하자

0개의 댓글