테마
AWS EC2 (Elastic Compute Cloud) 완벽 가이드
1. EC2란?
EC2는 Elastic Compute Cloud의 약자로, AWS가 제공하는 가상 컴퓨터 임대 서비스이다.
EC2 이름의 유래
| 문자 | 개수 | 설명 |
|---|---|---|
| E | 1개 | Elastic |
| C | 2개 | Compute Cloud |
E가 1개, C가 2개이므로 EC2라고 부른다. 정식 명칭은 Amazon Elastic Compute Cloud이다.
핵심 개념
EC2의 핵심은 매우 단순하다. AWS 데이터 센터에 있는 서버 컴퓨터 한 대를 빌려 쓰는 것이다.
물리적으로 서버를 구매하고, 전기를 연결하고, 네트워크를 세팅하고, OS를 설치하는 모든 과정을 AWS가 대신 해준다. 사용자는 웹 콘솔에서 클릭 몇 번이면 몇 분 만에 서버 한 대를 가동할 수 있다.
비유: 컴퓨터를 직접 사서 집에 두는 대신, AWS라는 거대한 PC방에서 컴퓨터를 시간 단위로 빌려 쓰는 것과 같다.
Elastic(탄력적) 이라는 단어가 붙은 이유는 필요에 따라 서버 사양을 늘리거나 줄일 수 있고, 서버 대수도 자유롭게 조절할 수 있기 때문이다.
2. EC2 인스턴스(Instance) 개념
EC2에서 가장 많이 듣는 용어가 인스턴스(Instance) 이다.
하나의 가상 컴퓨터 = 하나의 인스턴스
인스턴스는 실제 물리 서버 위에서 가상화 기술을 통해 만들어진 독립된 컴퓨터 환경이다. 각 인스턴스는 자신만의 CPU, 메모리, 스토리지, 네트워크를 가진다.
| 개념 | 비유 |
|---|---|
| 물리 서버 | 아파트 건물 전체 |
| 인스턴스 | 아파트 건물 안의 개별 세대 |
| AMI (Amazon Machine Image) | 세대를 꾸미는 인테리어 패키지 (OS + 소프트웨어 묶음) |
인스턴스를 만들 때는 AMI(Amazon Machine Image) 를 선택한다. AMI는 운영체제와 기본 소프트웨어가 미리 설치된 템플릿이다. Amazon Linux, Ubuntu, Windows Server 등 다양한 AMI가 제공된다.
3. 인스턴스 유형(Instance Types)
EC2 인스턴스는 용도에 따라 여러 시리즈(Family) 로 나뉜다. 각 시리즈는 특정 워크로드에 최적화되어 있다.
주요 인스턴스 시리즈
| 시리즈 | 최적화 대상 | 사용 사례 | 예시 |
|---|---|---|---|
| T 시리즈 | 범용(General Purpose) | 웹 서버, 소규모 DB, 개발 환경 | t2.micro, t3.medium |
| C 시리즈 | CPU 최적화(Compute Optimized) | 배치 처리, 미디어 인코딩, 과학 계산 | c5.large, c6g.xlarge |
| R 시리즈 | 메모리 최적화(Memory Optimized) | Redis, Memcached 같은 인메모리 DB | r5.large, r6g.xlarge |
| G 시리즈 | GPU 최적화(Accelerated Computing) | 딥러닝, 머신러닝, 그래픽 렌더링 | g4dn.xlarge, g5.xlarge |
T 시리즈 상세 - 가장 많이 쓰는 범용 타입
T 시리즈는 버스터블(Burstable) 성능 모델을 사용한다.
- 평소에는 기본 성능(baseline)으로 동작하면서 CPU 크레딧(Credit) 을 축적한다.
- 트래픽이 몰리면 축적된 크레딧을 소비하며 일시적으로 높은 성능(burst) 을 발휘한다.
- 크레딧이 소진되면 다시 기본 성능으로 돌아간다.
Free Tier(무료 등급) 대상 인스턴스는 계정 생성일과 리전에 따라 다르다. 2025년 7월 15일 이전 계정은 t2.micro, t3.micro가 대표적이고, 이후 계정은 t3.micro, t3.small, t4g.micro, t4g.small, c7i-flex.large, m7i-flex.large 등이 Free Tier eligible로 표시될 수 있다. 실습 전에는 콘솔의 Free tier eligible 라벨을 확인한다.
| 확인 항목 | 이유 |
|---|---|
| Free tier eligible 라벨 | 계정 생성일과 리전에 따라 무료 대상 타입이 달라질 수 있음 |
| vCPU / 메모리 | micro, small, large라도 패밀리별 사양이 다름 |
| CPU 아키텍처 | t4g는 Arm 기반이므로 AMI와 패키지 호환성 확인 필요 |
| 무료 사용량/크레딧 | Free plan, Paid plan, 기존 12개월 Free Tier 여부에 따라 다름 |
인스턴스 이름 읽는 법
인스턴스 이름 t2.micro를 분해하면 다음과 같다.
| 부분 | 의미 |
|---|---|
t | 인스턴스 패밀리(Family) - 범용 |
2 | 세대(Generation) - 2세대 |
micro | 크기(Size) - 가장 작은 사이즈 |
크기 순서: nano < micro < small < medium < large < xlarge < 2xlarge < ...
4. EC2 구성요소 관계도
EC2 인스턴스는 단독으로 존재하지 않고, 여러 구성요소와 함께 동작한다.
각 구성요소 요약
| 구성요소 | 역할 | 비유 |
|---|---|---|
| AMI | OS와 소프트웨어가 포함된 이미지 | 컴퓨터의 복원 이미지 |
| 인스턴스 유형 | CPU, 메모리 등 하드웨어 사양 | 컴퓨터 사양표 |
| EBS | 영구 저장 스토리지 | 외장 하드디스크 |
| 보안 그룹 | 인바운드/아웃바운드 트래픽 제어 | 건물 출입 보안 시스템 |
| 키 페어 | 인스턴스 접속 인증 | 집 열쇠 |
| 탄력적 IP | 고정된 공인 IP 주소 | 고정 전화번호 |
| VPC | 격리된 가상 네트워크 | 사설 네트워크 공간 |
5. EBS (Elastic Block Storage) - 하드디스크
EBS는 EC2 인스턴스에 연결하는 네트워크 기반 블록 스토리지이다. 일반 컴퓨터의 하드디스크(HDD)나 SSD에 해당한다.
EBS의 특징
- 네트워크로 연결: EC2와 EBS는 네트워크를 통해 연결되므로, 인스턴스를 종료해도 EBS 데이터는 보존된다.
- 독립적 수명: EC2 인스턴스와 별개로 존재할 수 있다. 인스턴스를 삭제해도 EBS 볼륨은 남길 수 있다(설정에 따라 다름).
- 하나의 인스턴스에 여러 EBS 연결 가능: 하드디스크를 여러 개 꽂는 것처럼, 하나의 EC2에 여러 EBS를 붙일 수 있다.
- 스냅샷(Snapshot) 지원: EBS 전체를 특정 시점의 백업으로 저장할 수 있다.
EBS 볼륨 유형
| 유형 | 이름 | 특징 | 사용 사례 |
|---|---|---|---|
| gp3 | General Purpose SSD 3세대 | 최신 범용 SSD, 비용과 성능 조절 유연 | 대부분의 워크로드 |
| gp2 | General Purpose SSD | 이전 범용 SSD, 기존 워크로드에서 사용 | 부트 볼륨, 개발/테스트 |
| io1/io2 | Provisioned IOPS SSD | 고성능, IOPS 보장 | 대규모 DB (Oracle, SAP) |
| st1 | Throughput Optimized HDD | 높은 처리량 HDD | 로그 처리, 빅데이터 |
| sc1 | Cold HDD | 가장 저렴 | 아카이브, 접근 빈도 낮은 데이터 |
GP3 타입 상세 (기본 선택)
GP3는 대부분의 새 사용 사례에서 먼저 검토할 만한 범용 SSD이다. GP2와 달리 스토리지 크기와 별개로 IOPS/처리량을 조정할 수 있어 비용과 성능을 맞추기 쉽다.
- 크기: 1 GiB ~ 16 TiB
- 기본 성능: 일반적인 개발/테스트와 중간 규모 워크로드에 충분
- 성능 조절: 필요한 경우 IOPS와 처리량을 별도로 프로비저닝
- Free Tier: 월 30 GiB의 EBS 스토리지 무료
주의: EC2 인스턴스를 중지(Stop) 해도 EBS 볼륨은 계속 존재하므로, EBS 스토리지 요금은 발생할 수 있다. 완전히 비용을 없애려면 볼륨 자체를 삭제해야 한다.
6. 보안 그룹(Security Group) - 방화벽
보안 그룹은 EC2 인스턴스의 가상 방화벽(Firewall) 역할을 한다. 인스턴스로 들어오고 나가는 트래픽을 규칙(Rule) 기반으로 허용하거나 차단한다.
보안 그룹의 핵심 특징
- 허용(Allow) 규칙만 존재: 차단(Deny) 규칙은 설정할 수 없다. 규칙에 명시하지 않은 트래픽은 자동으로 차단된다.
- 상태 저장(Stateful): 인바운드로 허용된 요청에 대한 응답은 아웃바운드 규칙과 무관하게 자동 허용된다.
- 인스턴스 레벨: 하나의 보안 그룹을 여러 인스턴스에 적용할 수 있고, 하나의 인스턴스에 여러 보안 그룹을 적용할 수 있다.
인바운드(Inbound) vs 아웃바운드(Outbound)
| 구분 | 방향 | 설명 | 기본 설정 |
|---|---|---|---|
| 인바운드(Inbound) | 외부 -> 인스턴스 | 외부에서 인스턴스로 들어오는 트래픽 | 모든 트래픽 차단 |
| 아웃바운드(Outbound) | 인스턴스 -> 외부 | 인스턴스에서 외부로 나가는 트래픽 | 모든 트래픽 허용 |
자주 사용하는 인바운드 규칙
| 프로토콜 | 포트 번호 | 용도 | 소스(Source) 예시 |
|---|---|---|---|
| SSH | 22 | 리눅스 서버 원격 접속 | 내 IP (예: 203.0.113.50/32) |
| RDP | 3389 | 윈도우 서버 원격 접속 | 내 IP |
| HTTP | 80 | 웹 서버 (비암호화) | 0.0.0.0/0 (모든 IP) |
| HTTPS | 443 | 웹 서버 (암호화) | 0.0.0.0/0 (모든 IP) |
| MySQL/Aurora | 3306 | MySQL 데이터베이스 | 특정 보안 그룹 |
| PostgreSQL | 5432 | PostgreSQL 데이터베이스 | 특정 서브넷 CIDR |
| 사용자 지정 TCP | 8080 | 개발용 웹 서버 | 내 IP |
보안 그룹 트래픽 흐름도
보안 그룹 설정 시 주의사항
- SSH(22번 포트)를
0.0.0.0/0으로 열지 말 것. 이렇게 하면 전 세계 누구나 SSH 접속을 시도할 수 있어 보안 위험이 크다. 반드시 내 IP 또는 특정 IP 대역으로 제한해야 한다. - HTTP/HTTPS(80, 443번)는 보통
0.0.0.0/0으로 연다. 웹 서버는 누구나 접속할 수 있어야 하므로 모든 IP를 허용하는 것이 일반적이다. - 데이터베이스 포트(3306, 5432 등)는 절대 외부에 직접 노출하지 말 것. 애플리케이션 서버의 보안 그룹만 소스로 지정한다.
7. 인스턴스 라이프사이클(Instance Lifecycle)
EC2 인스턴스는 3가지 주요 상태를 갖는다. 각 상태에 따라 과금 방식이 달라지므로 반드시 이해해야 한다.
상태 다이어그램
상태별 상세 설명
실행 중 (Running)
- 인스턴스가 정상적으로 동작하는 상태이다.
- 시간당(또는 초당) 요금이 부과된다.
- SSH, RDP 등을 통해 접속할 수 있다.
- 애플리케이션이 실행되고 트래픽을 처리한다.
- 재부팅(Reboot) 을 해도 Running 상태를 유지한다. 재부팅 시 공인 IP는 변경되지 않는다.
중지 (Stopped)
- 인스턴스를 잠시 꺼둔 상태이다.
- EC2 컴퓨팅 요금은 부과되지 않는다.
- 단, 다음 요금은 계속 발생할 수 있다:
- EBS 볼륨 스토리지 요금 (데이터가 디스크에 남아있으므로)
- 탄력적 IP(Elastic IP) 요금 (연결된 인스턴스가 중지되면 유휴 IP로 과금)
- 다시 시작(Start)하면 Running 상태로 돌아간다.
- 중지 후 재시작하면 공인 IP 주소가 변경된다. 고정 IP가 필요하면 탄력적 IP를 사용해야 한다.
종료 (Terminated)
- 인스턴스가 완전히 삭제된 상태이다.
- 복구가 불가능하다. 한 번 종료하면 되돌릴 수 없다.
- EBS 볼륨은 기본 설정에서 인스턴스와 함께 삭제된다 (DeleteOnTermination = true).
- 종료 전에 반드시 AMI 생성이나 EBS 스냅샷으로 백업해야 한다.
- 종료된 인스턴스는 콘솔에서 잠시 보이다가 사라진다.
비용 요약표
| 상태 | EC2 요금 | EBS 요금 | 탄력적 IP 요금 |
|---|---|---|---|
| Running | 부과 | 부과 | 무료 (연결된 상태) |
| Stopped | 무료 | 부과 | 부과 (유휴) |
| Terminated | 무료 | 무료 (삭제 시) | 무료 (해제 시) |
8. 서버 접속 방법
EC2 인스턴스에 접속하는 방법은 운영체제(OS) 에 따라 달라진다.
접속 방법 비교 흐름도
8-1. 윈도우 서버 접속: RDP (Remote Desktop Protocol)
윈도우 서버는 RDP(Remote Desktop Protocol) 프로토콜을 사용하여 원격 데스크톱으로 접속한다. 포트 번호는 3389번이다.
접속 순서
- 키 페어(.pem) 파일 준비: 인스턴스 생성 시 다운로드한
.pem파일이 필요하다. - 관리자 비밀번호 해독:
- AWS 콘솔 -> EC2 -> 인스턴스 선택 -> 연결(Connect) -> RDP 클라이언트 탭
- "Get Windows Password" 클릭
.pem파일을 업로드하면 Administrator 계정의 비밀번호가 복호화되어 표시된다.
- RDP 클라이언트로 접속:
- Windows:
mstsc.exe(원격 데스크톱 연결) 실행 - macOS: Microsoft Remote Desktop 앱 사용
- 접속 주소:
인스턴스 공인 IP:3389 - 사용자:
Administrator - 비밀번호: 2단계에서 해독한 비밀번호
- Windows:
보안 그룹에 RDP(3389) 인바운드 규칙이 있어야 접속할 수 있다.
8-2. 리눅스 서버 접속: SSH
리눅스 서버는 SSH(Secure Shell) 프로토콜을 사용하여 터미널(명령줄) 로 접속한다. 포트 번호는 22번이다.
macOS / Linux에서 접속
bash
# 1. 키 페어 파일 권한 설정 (최초 1회)
chmod 400 my-key-pair.pem
# 2. SSH 접속
ssh -i my-key-pair.pem ec2-user@54.123.45.67chmod 400: 파일 소유자만 읽기 가능하도록 권한을 설정한다. 이 설정이 없으면 SSH가 "키 파일 권한이 너무 열려있다"며 접속을 거부한다.ec2-user: Amazon Linux의 기본 사용자명이다. Ubuntu는ubuntu, CentOS는centos를 사용한다.
Windows에서 PuTTY를 사용한 접속
PuTTY는 Windows용 SSH 클라이언트인데, .pem 형식을 직접 사용할 수 없어 .ppk 형식으로 변환이 필요하다.
- PuTTYgen 실행
- "Load" 클릭 ->
.pem파일 선택 - "Save private key" 클릭 ->
.ppk파일로 저장
- "Load" 클릭 ->
- PuTTY 설정
- Host Name:
ec2-user@공인IP - Port:
22 - Connection -> SSH -> Auth -> Credentials:
.ppk파일 선택
- Host Name:
- "Open" 클릭으로 접속
EC2 Instance Connect (브라우저 접속)
AWS 콘솔에서 별도 프로그램 설치 없이 브라우저에서 바로 SSH 접속할 수 있다.
- EC2 콘솔 -> 인스턴스 선택 -> "연결(Connect)" 클릭 -> "EC2 Instance Connect" 탭 -> "연결" 클릭
- 키 페어 없이도 접속 가능하다 (임시 키가 자동 생성됨).
- Amazon Linux 2, Ubuntu 20.04 이상에서 지원된다.
보안 그룹에 SSH(22) 인바운드 규칙이 있어야 접속할 수 있다.
9. 기본 Linux 명령어
리눅스 서버에 접속하면 GUI가 아닌 CLI(Command Line Interface) 환경이다. 기본 명령어를 알아야 서버를 다룰 수 있다.
필수 명령어
| 명령어 | 풀네임 | 기능 | 예시 |
|---|---|---|---|
pwd | Print Working Directory | 현재 위치(디렉토리) 출력 | pwd -> /home/ec2-user |
cd | Change Directory | 디렉토리 이동 | cd /var/log |
ls | List | 현재 디렉토리의 파일/폴더 목록 | ls -la |
mkdir | Make Directory | 새 디렉토리 생성 | mkdir my-app |
pwd - 현재 위치 확인
bash
$ pwd
/home/ec2-user현재 내가 파일 시스템의 어디에 있는지 알려준다. 길을 잃었을 때 가장 먼저 치는 명령어이다.
cd - 디렉토리 이동
bash
# 절대 경로로 이동 (루트부터 전체 경로)
$ cd /var/log
# 상대 경로로 이동 (현재 위치 기준)
$ cd my-app
# 상위 디렉토리로 이동
$ cd ..
# 홈 디렉토리로 이동
$ cd ~
# 또는 그냥
$ cdls - 파일/폴더 목록 보기
bash
# 기본 목록
$ ls
Desktop Documents Downloads
# 상세 목록 (-l: 자세히, -a: 숨김파일 포함)
$ ls -la
total 12
drwxr-xr-x 4 ec2-user ec2-user 4096 Mar 29 10:00 .
drwxr-xr-x 3 root root 4096 Mar 29 09:00 ..
-rw-r--r-- 1 ec2-user ec2-user 220 Mar 29 09:00 .bashrc
drwxr-xr-x 2 ec2-user ec2-user 4096 Mar 29 10:00 my-appls -la 출력에서 각 열의 의미:
| 열 | 예시 | 의미 |
|---|---|---|
| 1 | drwxr-xr-x | 권한 (d=디렉토리, r=읽기, w=쓰기, x=실행) |
| 2 | 4 | 하드 링크 수 |
| 3 | ec2-user | 소유자 |
| 4 | ec2-user | 소유 그룹 |
| 5 | 4096 | 파일 크기 (바이트) |
| 6 | Mar 29 10:00 | 최종 수정 시간 |
| 7 | my-app | 파일/디렉토리 이름 |
mkdir - 디렉토리 생성
bash
# 디렉토리 생성
$ mkdir my-app
# 중첩 디렉토리 한 번에 생성 (-p 옵션)
$ mkdir -p projects/web/frontend추가로 알아두면 유용한 명령어
| 명령어 | 기능 | 예시 |
|---|---|---|
cat | 파일 내용 출력 | cat /etc/hostname |
cp | 파일 복사 | cp file.txt backup.txt |
mv | 파일 이동/이름 변경 | mv old.txt new.txt |
rm | 파일 삭제 | rm file.txt |
rm -rf | 디렉토리 강제 삭제 | rm -rf my-folder (주의!) |
sudo | 관리자 권한으로 실행 | sudo yum update |
yum install | 패키지 설치 (Amazon Linux) | sudo yum install httpd |
apt install | 패키지 설치 (Ubuntu) | sudo apt install nginx |
10. VI 에디터 기초
리눅스 서버에서 파일을 편집할 때 가장 많이 사용하는 텍스트 에디터가 VI (또는 VIM) 이다. GUI 에디터와 달리 모드(Mode) 개념이 핵심이다.
VI의 두 가지 모드
| 모드 | 이름 | 역할 | 진입 방법 |
|---|---|---|---|
| Normal 모드 | 명령 모드 | 커서 이동, 복사, 붙여넣기, 삭제 등 명령 실행 | Esc 키 |
| Insert 모드 | 입력 모드 | 실제 텍스트 입력 | i, a, o 키 |
기본 사용 흐름
1. vi 파일명으로 파일 열기 → Normal 모드로 시작
2. i 키를 눌러 Insert 모드 진입 → 텍스트 입력
3. Esc 키를 눌러 Normal 모드 복귀
4. :wq 입력하여 저장 후 종료VI 실행
bash
# 새 파일 생성하며 열기
$ vi hello.txt
# 기존 파일 열기
$ vi /etc/nginx/nginx.confNormal 모드 주요 명령어
| 키 | 기능 |
|---|---|
h, j, k, l | 좌, 하, 상, 우 이동 (방향키도 가능) |
dd | 현재 줄 삭제 |
yy | 현재 줄 복사 |
p | 붙여넣기 |
u | 실행 취소 (Undo) |
x | 현재 커서 위치 글자 삭제 |
G | 파일 맨 끝으로 이동 |
gg | 파일 맨 처음으로 이동 |
/검색어 | 텍스트 검색 (n으로 다음 결과) |
Insert 모드 진입 방법
| 키 | 기능 |
|---|---|
i | 현재 커서 앞에서 입력 시작 |
a | 현재 커서 뒤에서 입력 시작 |
o | 현재 줄 아래에 새 줄 추가하고 입력 시작 |
O | 현재 줄 위에 새 줄 추가하고 입력 시작 |
저장 및 종료 (Normal 모드에서)
| 명령 | 기능 |
|---|---|
:w | 저장 (Write) |
:q | 종료 (Quit) |
:wq | 저장 후 종료 (가장 많이 사용) |
:q! | 저장하지 않고 강제 종료 |
:wq! | 강제 저장 후 종료 (읽기 전용 파일 등) |
실습 예제
bash
# 1. 파일 생성 및 열기
$ vi hello.txt
# 2. Insert 모드 진입 (i 키 누르기)
# 화면 하단에 -- INSERT -- 표시 확인
# 3. 내용 입력
Hello, AWS EC2!
This is my first server.
# 4. Normal 모드로 복귀 (Esc 키 누르기)
# 화면 하단에 -- INSERT -- 표시 사라짐
# 5. 저장 후 종료
:wq
# 6. 파일 내용 확인
$ cat hello.txt
Hello, AWS EC2!
This is my first server.팁: VI가 처음이라 어렵다면
nano라는 더 쉬운 에디터도 있다.nano hello.txt로 실행하면 화면 하단에 단축키가 표시되어 직관적이다. 하지만 VI는 거의 모든 리눅스 서버에 기본 설치되어 있으므로 익혀두는 것이 좋다.
비용 주의사항 (매우 중요)
Free Tier 조건
AWS Free Tier는 계정 생성일에 따라 조건이 다르다. 2025년 7월 15일 이전 계정은 기존 12개월 Free Tier를 기준으로 보고, 2025년 7월 15일 이후 계정은 Free plan/Paid plan과 크레딧 잔액을 함께 확인한다.
| 항목 | 무료 조건 |
|---|---|
| EC2 인스턴스 | 콘솔에서 Free tier eligible로 표시되는 인스턴스 |
| EBS 스토리지 | 월 30 GiB (gp2/gp3) |
| 데이터 전송 | 월 아웃바운드 100 GB |
| 탄력적 IP | 1개 (실행 중인 인스턴스에 연결 시) |
기존 12개월 Free Tier의 750시간 한도는 약 31일 x 24시간이므로 인스턴스 1개를 한 달 내내 켜놓는 수준이다. 하지만 계정 생성일과 플랜별 조건이 달라졌으므로 Billing과 EC2 Free Tier 사용량을 함께 확인해야 한다.
비용 발생하는 실수 TOP 3
인스턴스를 종료(Terminate)하지 않고 중지(Stop)만 한 경우
- EC2 요금은 안 나오지만 EBS 스토리지 요금이 계속 발생한다.
- 완전히 비용을 없애려면 종료(Terminate) 해야 한다.
탄력적 IP를 할당하고 인스턴스에 연결하지 않은 경우
- 실행 중인 인스턴스에 연결된 탄력적 IP는 무료이다.
- 하지만 인스턴스가 중지되거나, 아무 인스턴스에도 연결되지 않은 탄력적 IP는 시간당 요금이 부과된다.
- 사용하지 않는 탄력적 IP는 반드시 릴리스(Release) 해야 한다.
Free Tier eligible이 아닌 인스턴스를 선택한 경우
- 계정 생성일과 리전에 따라 무료 대상 인스턴스가 다르다.
- 같은
micro크기라도 항상 무료는 아니다. - 인스턴스 생성 시 "프리 티어 사용 가능" 라벨을 반드시 확인해야 한다.
비용 관리 팁
- AWS Billing 대시보드를 주기적으로 확인한다.
- 결제 알림(Billing Alert) 을 설정하여 예상 비용이 특정 금액을 넘으면 이메일 알림을 받는다.
- 학습이 끝나면 반드시 모든 리소스를 종료/삭제한다: EC2 종료, EBS 볼륨 삭제, 탄력적 IP 릴리스.
- 종료(Terminated)하면 데이터가 완전히 삭제되므로, 중요한 데이터는 반드시 백업(AMI 또는 EBS 스냅샷) 해둔다.
핵심 요약
| 개념 | 한 줄 설명 |
|---|---|
| EC2 | AWS의 가상 컴퓨터 임대 서비스 (E 1개 + C 2개 = EC2) |
| 인스턴스 | 가상 컴퓨터 한 대 |
| AMI | OS + 소프트웨어 템플릿 이미지 |
| 인스턴스 유형 | T(범용), C(CPU), R(메모리), G(GPU) 등 사양 분류 |
| Free Tier eligible | 계정 생성일과 리전에 따라 달라지는 무료 대상 인스턴스 라벨 |
| EBS | 네트워크 기반 영구 스토리지 (가상 하드디스크) |
| GP3 | 최신 범용 SSD 타입 |
| 보안 그룹 | 인바운드/아웃바운드 트래픽 제어 방화벽 |
| 키 페어 | .pem 형식 인증 키 파일 |
| Running | 실행 중 - 요금 부과 |
| Stopped | 중지 - EC2 무료, EBS는 과금 가능 |
| Terminated | 종료 - 복구 불가, 데이터 삭제 |
| RDP | 윈도우 접속 프로토콜 (포트 3389) |
| SSH | 리눅스 접속 프로토콜 (포트 22) |
| VI | 리눅스 기본 텍스트 에디터 (Normal/Insert 모드) |