초보자가 AWS 시작하려면 이렇게 잡으면 덜 헤맵니다

얼마 전 지인이 작은 쇼핑몰을 만들겠다며 서버를 어디에 둬야 하냐고 물어봤습니다. 예전 같으면 호스팅 업체 하나 고르면 끝이라고 말했을 텐데, 요즘은 AWS라는 선택지가 너무 자연스럽게 따라붙습니다. 문제는 AWS가 강력한 만큼 처음 화면을 보면 메뉴가 너무 많아서 겁부터 난다는 점입니다. 저도 처음엔 EC2, S3, RDS 같은 이름이 외계어처럼 느껴졌습니다.
사실 AWS는 처음부터 전부 이해하려고 하면 피곤합니다. 초보자라면 “내 서비스가 돌아가는 데 꼭 필요한 것”부터 잡는 게 훨씬 편합니다. 작은 블로그, 회사 소개 사이트, 테스트용 API 서버, 이미지 저장소처럼 목적을 좁히면 선택지가 꽤 단순해집니다.
AWS를 처음 쓸 때 먼저 잡을 기준
AWS는 아마존에서 제공하는 클라우드 서비스입니다. 쉽게 말하면 내 컴퓨터나 사무실 서버 대신, 인터넷으로 빌려 쓰는 서버와 저장공간, 데이터베이스라고 생각하면 됩니다. 좋은 점은 필요한 만큼 쓰고 줄일 수 있다는 겁니다. 방문자가 하루 100명인 서비스와 하루 10만 명인 서비스가 같은 장비를 살 필요가 없습니다.
그런데 초보자에게 중요한 건 “무엇이든 가능하다”가 아니라 “지금 뭘 써야 하느냐”입니다. 처음에는 아래 3가지만 구분해도 충분합니다.
- EC2: 직접 서버 한 대를 빌려서 운영하는 느낌입니다.
- S3: 이미지, 파일, 백업 자료를 저장하는 공간입니다.
- RDS: MySQL, PostgreSQL 같은 데이터베이스를 관리형으로 쓰는 서비스입니다.
예를 들어 워드프레스 블로그를 운영한다면 EC2에 웹서버를 올리고, RDS로 데이터베이스를 분리하고, 이미지가 많아지면 S3를 붙이는 식으로 생각할 수 있습니다. 반대로 단순한 회사 소개 페이지라면 EC2 없이 정적 웹사이트 형태로 구성하는 방법도 있습니다.
요금 폭탄을 피하려면 예산 알림부터
AWS를 처음 만지는 사람이 가장 걱정하는 부분은 비용입니다. 실제로 AWS는 잘 쓰면 저렴하지만, 켜놓은 자원을 잊어버리면 생각보다 빠르게 비용이 쌓입니다. 작은 EC2 인스턴스 하나는 부담이 크지 않아 보여도, 여러 리전에 테스트로 만든 서버와 디스크가 남아 있으면 월말 청구서를 보고 놀랄 수 있습니다.
그래서 계정을 만들고 나면 가장 먼저 예산 알림을 설정하는 게 좋습니다. 예를 들어 월 5달러, 10달러, 30달러처럼 단계별로 알림을 걸어두면 마음이 훨씬 편합니다. 실제 프로젝트가 아니라 연습용이라면 월 10달러 기준만 잡아도 이상 징후를 빨리 알아차릴 수 있습니다.
초보자가 자주 놓치는 비용 항목
- 실행 중인 EC2 인스턴스
- 중지한 서버에 남아 있는 EBS 볼륨
- S3에 쌓인 오래된 파일과 백업
- RDS 데이터베이스 인스턴스
- 고정 IP를 만들어두고 연결하지 않은 경우
특히 서버를 “중지”했다고 모든 비용이 사라지는 건 아닙니다. 컴퓨터 전원을 꺼도 하드디스크를 계속 보관하는 것처럼, 연결된 저장장치 비용은 남을 수 있습니다. 테스트가 끝났다면 인스턴스, 볼륨, 스냅샷, 고정 IP까지 같이 확인하는 습관이 필요합니다.
처음 만들 서비스별로 선택하면 쉽습니다
AWS 메뉴를 서비스 이름으로 먼저 외우려 하면 복잡합니다. 오히려 내가 만들려는 결과물 기준으로 고르면 훨씬 덜 헷갈립니다. 개인 블로그, 작은 API 서버, 파일 저장소는 각각 필요한 구성이 다릅니다.
간단한 웹페이지를 올리고 싶다면 S3와 CloudFront 조합을 생각할 수 있습니다. HTML, CSS, JavaScript 파일만 있는 사이트라면 서버를 직접 관리하지 않아도 됩니다. 방문자가 늘어나도 비교적 안정적으로 운영할 수 있고, 파일 기반이라 구조도 단순합니다.
로그인 기능이 있고 데이터 저장이 필요한 서비스라면 EC2와 RDS 조합이 이해하기 쉽습니다. EC2에는 애플리케이션을 올리고, RDS에는 회원 정보나 주문 정보를 저장하는 방식입니다. 처음부터 너무 복잡한 자동 확장 구조를 만들기보다 작은 인스턴스에서 시작해 사용량을 보며 키우는 편이 현실적입니다.
이미지나 첨부파일이 많은 서비스라면 S3를 따로 두는 게 좋습니다. 예를 들어 사용자가 프로필 사진을 올리는 앱에서 모든 파일을 EC2 안에 저장하면 나중에 서버를 바꿀 때 번거롭습니다. S3에 파일을 두면 서버 교체나 확장도 훨씬 편해집니다.
보안은 처음부터 작게라도 챙겨야 합니다
AWS에서 보안은 나중에 붙이는 장식이 아닙니다. 처음 계정을 만들 때부터 루트 계정 사용을 줄이고, 작업용 IAM 사용자를 따로 만드는 게 좋습니다. 루트 계정은 집 열쇠 전체를 들고 다니는 느낌이라 평소 작업용으로 쓰기엔 부담이 큽니다.
그리고 다중 인증은 꼭 켜두는 편이 안전합니다. 비밀번호가 유출돼도 추가 인증이 있으면 사고 가능성을 크게 낮출 수 있습니다. 솔직히 처음엔 귀찮지만, 서버와 데이터베이스가 걸린 계정이라면 이 정도 귀찮음은 감수할 만합니다.
- 루트 계정에는 다중 인증을 설정합니다.
- 일상 작업은 IAM 사용자나 역할로 처리합니다.
- EC2 보안 그룹은 필요한 포트만 엽니다.
- 데이터베이스는 외부 공개를 피합니다.
- 액세스 키는 코드에 직접 넣지 않습니다.
예를 들어 웹서버라면 80번과 443번 포트는 열 수 있지만, SSH 접속용 22번 포트는 내 IP에서만 접근하도록 제한하는 식입니다. 작은 설정 하나가 나중에 큰 사고를 막아줍니다.
초보자에게 맞는 연습 순서
처음부터 회사 서비스처럼 완벽하게 만들려고 하면 손이 멈춥니다. 차라리 1시간 안에 끝낼 수 있는 작은 목표부터 잡는 게 좋습니다. 예를 들면 EC2에 접속해서 간단한 웹페이지를 띄우는 것, S3 버킷에 이미지를 올려보는 것, RDS 데이터베이스에 접속해 테이블 하나 만드는 것처럼요.
제가 추천하는 흐름은 이렇습니다. 먼저 예산 알림과 보안 설정을 끝냅니다. 그다음 EC2 하나를 만들어 웹서버를 띄워봅니다. 이후 S3에 정적 파일을 올려보고, RDS를 붙여 간단한 게시판 구조를 만들어보면 AWS의 큰 그림이 꽤 선명해집니다.
AWS는 처음엔 복잡해 보이지만, 실제로는 “서버, 저장소, 데이터베이스, 권한, 비용”이라는 다섯 가지 축으로 보면 훨씬 다루기 쉬워집니다. 처음부터 모든 서비스를 외우려 하지 않아도 됩니다. 작은 실험을 만들고, 비용을 확인하고, 필요 없는 자원을 지우는 습관만 생겨도 이미 꽤 괜찮은 출발입니다. 클라우드는 거창한 기술이라기보다, 필요한 만큼 빌려 쓰고 책임 있게 관리하는 도구에 가깝다고 느낍니다.
