초보자를 위한 AWS 시작하는 방법: 비용 걱정 줄이고 서버 띄우기

AWS를 처음 켤 때 제일 먼저 봐야 할 것
얼마 전 지인이 작은 쇼핑몰 테스트 서버를 만들고 싶다며 AWS 화면을 보여줬는데, 메뉴가 너무 많아서 어디를 눌러야 할지 모르겠다고 하더라고요. 사실 AWS는 기능이 많은 만큼 처음엔 복잡해 보입니다. 그런데 시작할 때 필요한 건 생각보다 단순합니다. 계정, 리전, 비용 알림, 그리고 가장 기본이 되는 컴퓨팅 서비스 정도만 잡고 가면 됩니다.
AWS는 Amazon Web Services의 줄임말이고, 쉽게 말하면 인터넷으로 빌려 쓰는 서버, 저장공간, 데이터베이스, 네트워크 도구 모음입니다. 예전에는 서버를 직접 사서 사무실이나 IDC에 넣어야 했지만, AWS에서는 몇 분 만에 서버를 만들고 필요 없으면 끌 수 있습니다. 이 점이 가장 큰 장점입니다.
처음 가입하면 무료로 써볼 수 있는 범위가 있습니다. 대표적으로 EC2 t2.micro 또는 t3.micro 같은 작은 서버, S3 저장공간 일부, RDS 데이터베이스 제한 사용량 등이 포함됩니다. 다만 무료 범위는 서비스별 조건이 다르고, 12개월 제한이 있는 항목도 있어서 그냥 막 켜두면 비용이 생길 수 있습니다. 그래서 시작 전에 비용 알림부터 켜는 게 좋습니다.
비용 폭탄 피하려면 이렇게 시작하면 편합니다
AWS에서 초보자가 가장 많이 걱정하는 건 비용입니다. 솔직히 이 걱정은 맞습니다. 서버 하나만 켰다고 큰돈이 나가는 경우는 드물지만, 사용하지 않는 리소스를 여러 개 남겨두면 생각보다 빨리 금액이 올라갑니다. 특히 EC2 인스턴스, 고정 IP인 Elastic IP, RDS 데이터베이스, NAT Gateway는 초보자가 놓치기 쉬운 항목입니다.
처음 계정을 만들었다면 AWS Billing 메뉴에서 예산을 먼저 설정하는 게 좋습니다. 예를 들어 월 예산을 5달러나 10달러로 잡고, 사용량이 50%, 80%, 100%에 도달할 때 이메일을 받도록 설정할 수 있습니다. 테스트 용도라면 이 정도만 해도 불안감이 꽤 줄어듭니다.
- 월 예산을 낮게 설정하고 이메일 알림 켜기
- 사용하지 않는 EC2 인스턴스는 중지 또는 삭제하기
- Elastic IP를 만들어놓고 연결하지 않은 상태로 방치하지 않기
- RDS는 테스트 후 스냅샷과 인스턴스까지 확인하기
- NAT Gateway는 실습 목적이 아니면 초반에 피하기
근데 여기서 중요한 차이가 있습니다. EC2는 중지하면 컴퓨팅 비용은 멈추지만, 연결된 디스크인 EBS 비용은 계속 나올 수 있습니다. RDS도 삭제할 때 백업 보관 여부에 따라 추가 비용이 남을 수 있고요. 그래서 AWS를 쓸 때는 “껐다”와 “삭제했다”를 구분해서 보는 습관이 필요합니다.
처음 배우기 좋은 AWS 서비스 순서
AWS 서비스를 한꺼번에 배우려고 하면 금방 지칩니다. 메뉴만 봐도 EC2, S3, IAM, VPC, Lambda, CloudFront, RDS처럼 낯선 이름이 계속 나오니까요. 처음에는 실제 웹사이트 하나를 띄우는 흐름으로 배우는 게 가장 빠릅니다.
1단계: IAM으로 계정 보안 잡기
루트 계정은 가입할 때 만든 가장 강력한 계정입니다. 이 계정은 평소 작업용으로 쓰지 않는 편이 좋습니다. 대신 IAM에서 작업용 사용자를 만들고, 필요한 권한만 부여하는 방식이 안전합니다. 그리고 루트 계정과 작업용 계정 모두 MFA를 켜는 것이 좋습니다. MFA는 로그인할 때 비밀번호 외에 인증 앱 코드까지 확인하는 방식입니다.
2단계: S3로 파일 저장 이해하기
S3는 이미지, 문서, 백업 파일 같은 객체를 저장하는 서비스입니다. 블로그 이미지 저장소나 정적 웹사이트 호스팅에도 자주 쓰입니다. 예를 들어 상품 이미지 1,000장을 서버 디스크에 직접 넣는 대신 S3에 저장하면, 서버를 교체하거나 늘릴 때 파일 관리가 훨씬 쉬워집니다.
3단계: EC2로 서버 한 대 띄우기
EC2는 AWS에서 가상 서버를 빌리는 서비스입니다. 초보자에게 가장 직관적입니다. 우분투 서버를 선택하고, 작은 인스턴스 타입을 고르고, SSH로 접속해서 웹 서버를 설치하면 됩니다. 예를 들어 Nginx를 설치한 뒤 80번 포트를 열면 간단한 웹 페이지를 외부에서 볼 수 있습니다.
4단계: RDS로 데이터베이스 분리하기
처음에는 EC2 안에 MySQL을 직접 설치할 수도 있습니다. 하지만 실제 서비스에 가까워질수록 데이터베이스를 따로 관리하는 편이 편합니다. RDS는 MySQL, PostgreSQL 같은 데이터베이스를 관리형으로 제공해서 백업, 패치, 장애 대응 부담을 줄여줍니다. 다만 EC2보다 비용이 더 쉽게 생길 수 있으니 실습 후 삭제 확인이 필요합니다.
AWS로 작은 웹서비스를 만드는 기본 흐름
예를 들어 개인 포트폴리오 사이트나 작은 예약 페이지를 만든다고 해보겠습니다. 가장 단순한 구조는 Route 53으로 도메인을 연결하고, EC2에 웹 서버를 올린 뒤, 이미지 파일은 S3에 두는 방식입니다. 여기에 방문자가 늘어나면 CloudFront를 붙여서 전 세계 사용자에게 더 빠르게 전달할 수 있습니다.
정적 사이트라면 EC2 없이도 가능합니다. HTML, CSS, JavaScript만 있는 사이트는 S3와 CloudFront 조합으로 운영할 수 있습니다. 서버 관리가 필요 없고, 트래픽이 적은 사이트라면 비용도 낮게 유지하기 좋습니다. 반대로 로그인, 게시글 작성, 결제 같은 기능이 있다면 EC2, RDS, 또는 Lambda 같은 백엔드 구성이 필요합니다.
초보 단계에서는 거창한 아키텍처보다 단순한 구성이 낫습니다. EC2 한 대에 웹 애플리케이션을 올리고, 데이터베이스는 RDS로 분리하는 정도면 충분합니다. 사용자가 많아졌을 때 로드 밸런서, 오토스케일링, 캐시, CDN을 붙여도 늦지 않습니다. 처음부터 모든 걸 완벽하게 설계하려고 하면 배포 한 번 해보기 전에 지쳐버립니다.
처음 한 달은 이것만 지켜도 충분합니다
AWS를 처음 배우는 한 달 동안은 목표를 작게 잡는 게 좋습니다. 계정 보안 설정, 비용 알림, EC2 접속, S3 업로드, 간단한 웹 서버 배포까지 해보면 기본 감각이 생깁니다. 이 과정만 지나도 AWS 문서나 강의를 볼 때 훨씬 덜 낯설게 느껴집니다.
- 루트 계정 MFA 설정하기
- 월 예산과 비용 알림 만들기
- 서울 리전처럼 가까운 리전 하나를 정해 실습하기
- EC2 한 대를 만들고 SSH 접속해보기
- S3 버킷에 파일을 올리고 권한 차이를 확인하기
- 실습 후 리소스 삭제 여부를 Billing 화면에서 확인하기
개인적으로 AWS는 처음 화면만 넘기면 꽤 실용적인 도구라고 느낍니다. 서버를 산다는 감각보다 필요한 기능을 잠깐 빌려 쓴다는 감각에 가깝거든요. 처음부터 많은 서비스를 외우려고 하기보다, 작은 웹페이지 하나를 직접 띄우고 비용이 어떻게 움직이는지 보는 쪽이 훨씬 오래 기억에 남습니다.
