정지용
기술스택 목록
인프라

AWS

프로젝트 1에서 사용했습니다. 각 프로젝트에서 어떤 역할로 썼는지 아래에 정리했습니다.

이 기술은 무엇인가요?

컴퓨팅, 스토리지, 네트워크 등을 필요한 만큼 빌려 쓰는 클라우드 플랫폼

AWS(Amazon Web Services)는 서버, 스토리지, 데이터베이스, 네트워크 등의 인프라를 인터넷을 통해 필요한 만큼 빌려 쓸 수 있게 해주는 클라우드 서비스 플랫폼이다. 직접 물리 서버를 구매하고 관리하는 대신 사용한 만큼만 비용을 지불하며 인프라를 즉시 확보할 수 있도록 만들어졌다. 컴퓨팅(EC2), 저장소(S3), 데이터베이스(RDS) 등 수백 가지 서비스를 조합해 웹 서비스부터 데이터 파이프라인까지 다양한 시스템을 구성할 수 있다. 각 서비스는 독립적으로 쓰이기도 하지만, 이벤트를 트리거로 서로 연결되어 하나의 자동화된 워크플로우를 이루기도 한다.

이럴 때 사용합니다

  • 초기 서버 투자 없이 사용한 만큼만 비용을 내며 빠르게 인프라를 구축하고 싶을 때
  • 트래픽 증감에 따라 리소스를 자동으로 늘리거나 줄이는 확장성이 필요할 때
  • 파일 업로드 같은 이벤트에 반응해 자동으로 후속 처리를 수행하는 파이프라인을 만들 때
  • 여러 관리형 서비스를 조합해 서버 관리 부담 없이 시스템을 운영하고 싶을 때

핵심 개념

Region / Availability Zone
전 세계 여러 지역(Region)에 데이터센터 그룹이 있고, 각 Region은 장애 격리를 위해 여러 개의 물리적으로 분리된 Availability Zone으로 나뉜다.
IAM
누가 어떤 리소스에 어떤 권한으로 접근할 수 있는지를 관리하는 인증·권한 부여 서비스이다.
S3
파일이나 이미지 같은 객체를 버킷 단위로 저장하는 스토리지 서비스로, 용량 제한 없이 데이터를 저장하고 서빙할 수 있다.
Event-driven Trigger
S3에 파일이 업로드되거나 특정 상태 변화가 생기면 Lambda 같은 다른 서비스가 자동으로 실행되도록 연결하는 방식이다.
Managed Service
서버 운영체제 패치나 이중화 같은 인프라 관리를 AWS가 대신 처리해주는 서비스 형태를 말한다.

S3 버킷 생성 및 객체 업로드

AWS CLI로 S3 버킷을 만들고 파일을 업로드한 뒤 목록을 확인하는 가장 기본적인 흐름이다.

Shell
# S3 버킷 생성
aws s3 mb s3://my-example-bucket

# 로컬 파일을 버킷에 업로드
aws s3 cp ./photo.jpg s3://my-example-bucket/photo.jpg

# 버킷 내 객체 목록 확인
aws s3 ls s3://my-example-bucket

처음 쓸 때 흔한 함정

  • 리전을 지정하지 않으면 의도치 않은 리전에 리소스가 생성될 수 있다
  • IAM 권한을 지나치게 넓게 설정해 보안 사고로 이어지는 경우가 많다
  • 사용하지 않는 리소스를 삭제하지 않으면 비용이 계속 청구될 수 있다

위 개요는 기술 학습을 돕기 위해 자동 생성된 일반 설명입니다. 정확한 사양과 최신 정보는 공식 문서를 확인하세요.

프로젝트별 활용 방식

위 개념이 실제 프로젝트에서 어떻게 쓰였는지 보여줍니다.

함께 사용한 기술

위 프로젝트들에서 같이 쓰인 다른 기술입니다.