Compute / AWS WIKI
Amazon EC2
가상 서버를 필요한 만큼 만들고 운영하는 컴퓨팅 서비스입니다.
기존 기술로 보면
온프레미스 서버 또는 가상 머신(VM)
AWS에서 달라지는 점
인스턴스 타입, AMI, 보안 그룹, 오토 스케일링을 조합해 서버 수명주기를 관리합니다.
- Web·App·Batch용 서버 선택
- 네트워크·권한·디스크 조합
- OS와 앱 운영은 사용자 책임
서버 한 대에 붙는 요소
Network
Storage
Security
Operations
생성할 때 정하는 것
01AMI / OS서버를 시작할 OS·이미지
Linux / Windows · 앱과 CPU 아키텍처 확인
OS 교체는 새 서버 전략 검토
재생성 필요 가능변경 영향 →AMI / OS · AWS 공식 문서 ↗02Instance Family / SizeCPU·Memory·I/O 성격과 규모
일반 앱: T / M 후보 · 부하 검증 후 선택
호환 타입 변경은 일반적으로 Stop
Stop 필요변경 영향 →Instance Type 변경 조건 · AWS 공식 문서 ↗03Network / SubnetVPC·AZ·통신 경로·배치
ALB 뒤 앱 서버는 Private Subnet 검토
다른 Subnet 이동은 새 서버 검토
재생성 필요 가능변경 영향 →ENI / Subnet / IP · AWS 공식 문서 ↗04Public IP 여부공용 주소가 필요한가
Private 앱은 공용 IP 없이 설계 가능
주소·경로·SG·IPv4 비용 함께 확인
조건에 따라 다름변경 영향 →Elastic IP · AWS 공식 문서 ↗05Security Group허용할 대상·Protocol·Port
ALB SG → 앱 포트만 허용
실행 중 변경 · 즉시 통신 영향 가능
온라인 변경 가능변경 영향 →Security Group · AWS 공식 문서 ↗06Storage / EBS볼륨 용량·성능·암호화·삭제 정책
gp3 후보 · 실제 IOPS·용량 요구 확인
증설과 파일시스템 확장은 별도
변경 가능 · 영향 있음변경 영향 →EBS 변경·축소 제약 · AWS 공식 문서 ↗07IAM Role서버 앱이 호출할 AWS API
필요한 Action·Resource만 허용
실행 중 교체 가능 · 앱 권한 영향
온라인 변경 가능변경 영향 →EC2 IAM Role · AWS 공식 문서 ↗08User Data초기 부팅 구성 작업
패키지·앱 초기 설정 · secret 제외
수정하려면 Stop · 자동 재실행 아님
Stop 필요변경 영향 →User Data 수정·실행 · AWS 공식 문서 ↗09구매 / 과금 방식변동 사용·약정·중단 허용 범위
On-Demand 시작 · 안정 사용량만 약정 검토
약정과 Spot 중단 위험은 별도 판단
구매 방식 비교 →EC2 가격 구조 · AWS 공식 문서 ↗Instance Family / Size성격이 먼저, 크기는 그다음
General Purpose
T / M균형 잡힌 Web / App
T는 burst·CPU credit 조건 확인
Compute Optimized
CCPU 작업 비중이 큰 처리
CPU 요구가 작으면 과도한 선택일 수 있음
Memory Optimized
R 등메모리 비중이 큰 앱·캐시
메모리 수요와 OS·앱 한도 함께 검증
Accelerated Computing
GPU / AcceleratorGPU·전용 가속이 필요한 작업
드라이버·작업 호환성과 비용 확인
Storage Optimized
I / D 등높은 로컬 I/O가 필요한 처리
로컬 디스크의 수명·백업 방식 확인
small → medium → large → xlarge는 같은 계열 안에서 규모를 구분하는 이름입니다. 실제 vCPU·Memory·지원 size는 계열·세대·아키텍처에 따라 다르며 계열 간 이름만으로 성능을 비교하지 않습니다.
Instance 계열 · AWS 공식 문서 ↗Compute만이 비용의 전부는 아닙니다
- EC2 Compute리전·타입·실행시간·구매 방식
- OS / LicenseOS·상용 소프트웨어·라이선스 조건
- EBS볼륨 용량·종류·추가 성능
- Snapshot백업 저장량·보존 조건
- Data Transfer통신 방향·AZ·리전·전송량
- Public IPv4공용 IPv4 보유·사용 조건
- 연관 리소스ALB·NAT·Logs·Backup 등은 별도
서버를 멈춰도 디스크·연관 리소스·약정 비용은 남을 수 있습니다.
구매 / 비용 방식 비교On-Demand · Savings Plans · Reserved Instances · Spot
On-Demand사용한 Compute · 기간 약정 없음
- 적합한 상황
- 짧거나 변동이 큰 작업
- 장점
- 수요 예측 없이 시작
- 제약
- 안정적인 장기 사용은 할인 약정과 비교
- 중단 위험
- Spot 회수 대상은 아님 · 장애가 없다는 뜻은 아님
- 약정
- 장기 사용 약정 없음
Savings Plans시간당 사용금액 약정에 대한 할인
- 적합한 상황
- 예측 가능한 장기 Compute 사용
- 장점
- 상품별 적용 범위 안에서 유연성
- 제약
- Compute / EC2 Instance 상품의 범위가 다름
- 중단 위험
- Spot 회수와 별개 · 용량 예약은 아님
- 약정
- 1년 / 3년의 시간당 금액 · Stop해도 약정 유지
Reserved Instances조건이 맞는 EC2 사용량의 할인
- 적합한 상황
- 운영 조건과 사용량이 안정적인 경우
- 장점
- 조건별 할인 · Zonal scope는 용량 예약 포함
- 제약
- Regional / Zonal, Standard / Convertible 조건 구분
- 중단 위험
- Spot 회수와 별개 · Regional RI는 용량 예약 아님
- 약정
- 1년 / 3년 · EC2 Stop/Terminate로 약정 종료되지 않음
Spot남는 Compute 용량 · 회수 가능
- 적합한 상황
- 재시도·checkpoint가 가능한 Batch
- 장점
- On-Demand보다 낮은 요금일 수 있음
- 제약
- 가격·용량·요청 조건에 따라 실행 불가
- 중단 위험
- AWS가 중단 가능 · 알림만으로 복구 보장 안 됨
- 약정
- 장기 약정 없음 · Stop/Hibernate/Terminate 정책 확인
비용 범위와 무료 조건금액 계산 없이 과금 대상을 구분
금액·합계는 계산하지 않습니다. 견적 시 Region·확인일·Instance Type·OS·Storage·실행시간·전송량과 연관 리소스를 함께 확인합니다. 일부 라이선스 요금이 Compute 가격에 포함될 수도 있으므로 중복 합산하지 않습니다.
EC2 ComputeEC2 가격 구조 · AWS 공식 문서 ↗
OS / LicenseEC2 가격 구조 · AWS 공식 문서 ↗
EBSEBS / Snapshot 가격 · AWS 공식 문서 ↗
SnapshotEBS / Snapshot 가격 · AWS 공식 문서 ↗
Data TransferEC2 가격 구조 · AWS 공식 문서 ↗
Public IPv4Public IPv4 가격 · AWS 공식 문서 ↗
연관 리소스EC2 가격 구조 · AWS 공식 문서 ↗
Free Tier / Free Plan은 계정 가입 시점·플랜·기간·크레딧·서비스별 조건을 확인해야 합니다. 모든 EC2·EBS·IPv4가 무료라는 뜻은 아닙니다.
Free Tier / Plan 조건 · AWS 공식 문서 ↗상태가 바뀌면 무엇이 달라질까?
일반적인 EBS 루트 EC2 기준 · 리전 공통 개념 · 실제 생성/제어 기능 없음
생성 / 시작
- Launch / Start
- 부팅
OS 재기동
- Reboot
- 다시 서비스
중지 / 재시작
- Stop
- 중지 완료
- Start
삭제
- Terminate
- 삭제 완료
Running
상태 · 실행 중 · 유휴 상태도 Compute 사용- Compute 과금
- 사용 요금 발생 · 약정/할인 조건 별도
- EBS / 연관 비용
- 볼륨·IPv4·로그 등 별도 비용
- 데이터
- EBS / 실행 중 메모리·임시 저장소 사용
- Public IP
- 주소가 있어도 Route·SG가 있어야 공개 통신
- 다시 실행
- Reboot / Stop / Terminate 선택
- 서비스 중단
- 상태만으로 앱 정상·가용성 보장 안 됨
변경·확장·운영 판단
설정 변경 가능성 MatrixStop 필요 · 변경 가능 · 영향 있음 · 온라인 변경 가능 · 재생성 필요 가능 · 조건에 따라 다름
Instance TypeStop 필요호환되는 EBS 루트 타입 · Spot 직접 변경 불가
Stop → 호환 타입 수정 → Start → 부하·앱 검증
- 중단
- Stop/Start 동안 중단
- 데이터
- EBS 유지 · RAM/Instance Store 손실
- 비용
- 새 타입과 라이선스 요금 확인
- 되돌림
- 호환 이전 타입으로 재변경 · 용량 보장 안 됨
- CPU 아키텍처·드라이버·볼륨 수·네트워크 호환성 확인
- ASG의 자동 교체 동작과 함께 계획
EBS Size / Performance변경 가능 · 영향 있음지원 환경은 온라인 증설 가능 · 축소는 직접 불가
백업 → 지원 조건 확인 → 볼륨 증설 → 파티션/파일시스템 확장
- 중단
- 지원 환경은 무중단 가능 · 성능/구형 환경 영향 확인
- 데이터
- 백업·파일시스템 검증 필요
- 비용
- 용량·추가 IOPS/throughput 비용 증가 가능
- 되돌림
- 직접 축소 대신 작은 볼륨으로 별도 데이터 이행
- 수정 요청 취소 불가 · 파일시스템 크기는 자동으로 늘지 않을 수 있음
Security Group온라인 변경 가능규칙·연결 그룹 변경은 통신에 영향
현재 허용 규칙 백업 → 필요한 통신 범위만 변경 → 허용/차단 시험
- 중단
- Stop 불필요 · 통신 장애는 가능
- 데이터
- 디스크 유지 · 앱 요청 실패 가능
- 비용
- SG 자체보다 로그·외부 통신 변화 확인
- 되돌림
- 기존 규칙 복원 · 영향 받은 요청은 별도 확인
- 공유 SG의 다른 리소스 영향 확인
- 기존 연결 추적과 신규 연결을 나눠 검증
IAM Role온라인 변경 가능Instance Profile 교체 · 앱 API 권한 영향
기존 정책 확인 → Role/Profile 교체 → 실제 앱의 허용/거부 API 시험
- 중단
- Stop 불필요 · 권한 오류로 앱 영향 가능
- 데이터
- 디스크 유지 · AWS 데이터 접근 범위 변경
- 비용
- 새 권한으로 생성·호출하는 리소스 비용 확인
- 되돌림
- 기존 Profile 복원 · 권한 전파/앱 캐시 확인
- Role 정책 수정은 공유하는 다른 인스턴스에도 영향
- 비밀 key를 User Data로 배포하지 않음
User DataStop 필요수정은 Stop 필요 · 수정했다고 다시 실행되지 않음
Stop → 입력 수정 → Start · 재실행 정책/cloud-init 별도 검토
- 중단
- Stop/Start 중단
- 데이터
- 스크립트가 파일·설정에 영향을 줄 수 있음
- 비용
- 초기화로 설치·다운로드·기동시간 영향
- 되돌림
- 입력 복원만으로 실행된 작업까지 되돌리지는 못함
- Linux 기본은 첫 부팅 실행 · 반복 실행은 명시적 구성
- idempotency와 실패 복구 확인
Subnet재생성 필요 가능기존 primary ENI를 다른 Subnet으로 이동하지 않음
새 Subnet에서 서버 생성 → 데이터·앱 이전 → 트래픽 전환
- 중단
- 교체·전환 방식에 따라 중단
- 데이터
- AZ 변경 시 EBS 직접 이동이 아닌 snapshot/복원 등 검토
- 비용
- 병행 서버·이행·전송 비용 가능
- 되돌림
- 기존 서버 유지와 데이터 쓰기 경계를 포함한 전환 계획
- Primary ENI는 detach 불가 · secondary ENI도 배치 제약 확인
Private IP조건에 따라 다름Primary는 고정 · Secondary는 재할당 검토
Primary 변경은 새 구성 검토 · Secondary 주소는 지원 조건에서 추가/이동
- 중단
- 주소를 쓰는 세션·앱·DNS 영향
- 데이터
- 디스크와는 별개 · 연결 대상 영향
- 비용
- 연관 네트워크·이행 비용 확인
- 되돌림
- 이전 주소/경로 복원 가능성 사전 확인
- primary와 secondary를 같은 변경 방식으로 보지 않음
Public IP조건에 따라 다름자동 주소·Elastic IP 방식 구분
고정 공용 주소가 필요하면 Elastic IP 연계 검토 · Route/SG도 확인
- 중단
- 주소·DNS·연결 변경 영향
- 데이터
- 디스크와 별개 · 진행 중 요청 실패 가능
- 비용
- Public IPv4 보유 비용·통신 비용 별도
- 되돌림
- 기존 주소를 되찾을 수 있다고 가정하지 않음
- 자동 주소는 일반 Stop/Start 시 변경 가능
- 공용 IP만으로 Internet 통신이나 안전성이 보장되지 않음
AMI / OS재생성 필요 가능AMI 선택을 수정해 실행 중 OS를 교체하는 기능은 아님
새 AMI/OS 서버 준비 → 앱·데이터 호환성 검증 → 교체
- 중단
- 교체·데이터 전환·병행 방식에 따라 다름
- 데이터
- OS·파일시스템·앱·드라이버 호환성 확인
- 비용
- OS 라이선스·병행 서버·백업 비용 확인
- 되돌림
- 기존 서버/AMI 보존 · 신규 쓰기 데이터 복구 별도
- OS 내부 업그레이드와 AMI를 바꾼 새 서버 배포는 다른 작업
여러 서버를 운영하면Launch Template · Auto Scaling · ALB
템플릿은 생성 설정, ASG는 수량·교체, ALB는 정상 대상에 요청 분산을 담당합니다.
- EC2 · AZ A앱 실행 · 생성/교체 대상
- EC2 · AZ B앱 실행 · 생성/교체 대상
- Launch TemplateAuto Scaling Group생성 버전 지정
- ALBAuto Scaling GroupTarget Group 연결 · 트래픽은 EC2로
- Auto Scaling GroupEC2 · AZ A수량 유지 / 교체
- Auto Scaling GroupEC2 · AZ BAZ 분산
- ALB 요청이 ASG 자체에서 처리되는 것은 아님
- Launch Template 수정만으로 기존 서버 설정이 모두 바뀌지 않음
- 앱 로그·세션·데이터를 서버 교체와 분리하고 Scale-In 손실에 대비
일반적인 사용 패턴상황별 예시 · 정답이나 추천 순위 아님
개발 / 테스트
1대 · On-Demand · 비용 우선
- 업무시간 외 Stop 검토
- 기동·접속·백업 절차 확보
EBS·약정·연관 비용은 남으며 업무시간도 서비스 요구에 따라 판단
Production Web
ALB 뒤 복수 EC2 · 두 AZ
- Monitoring / 복구 / Auto Scaling 검토
- 앱·DB까지 장애 요구 확인
서버 2대와 AZ 분산만으로 무중단 또는 DB HA가 보장되지 않음
Batch
필요할 때 실행 · Spot 후보
- 재시도·checkpoint 설계
- 중단된 작업을 다른 실행에서 이어가기
유일한 데이터·상태를 임시 서버에만 두지 않음
Lift & Shift
기존 OS / App 요구에서 출발
- Network·Storage·CPU 호환 검증
- License·백업·이행·복구 책임 확인
가상 서버로 옮겨도 기존 OS와 앱 운영 책임은 남음
잘못 바꾸면 생기는 일통신 · 데이터 · 공개 범위 · 권한 · 비용
인스턴스 삭제백업 확인 없이 Terminate → 같은 인스턴스 복구 불가 · 볼륨 데이터 삭제 가능주의
삭제 보호·DeleteOnTermination·복원 가능한 백업 확인
상태별 과금·데이터·IP · AWS 공식 문서 ↗과도한 AWS 권한서버 Role에 넓은 권한 → 서버 침해 시 AWS 리소스 접근 위험 확대주의
API Action·Resource 최소화 · Role과 앱 접근 점검
EC2 IAM Role · AWS 공식 문서 ↗구축 / 운영 확인리소스 설정과 공통 기반을 함께 확인
구축 확인
- Subnet 위치·Route·SG
- IAM Role·관리 접근
- EBS·암호화·삭제 정책
- Monitoring·Backup·Naming/Tagging
운영 확인
- CPU·메모리·디스크·Instance State
- Patch·취약점·Backup/Restore
- 실제 앱·ALB 상태와 비용
메모리·OS 내부 디스크 지표는 기본 EC2 지표만으로 충분하지 않을 수 있으며 Agent 등 별도 수집을 검토합니다.
Memory / OS 지표 수집 · AWS 공식 문서 ↗프로젝트에서 맡는 역할
기본 3-Tier 웹 시스템 →
Application Server앱 실행 · 2대
Terraform 기반 AWS 인프라 구축/운영 →
InfrastructureVPC · EC2 · RDS
Managed Server관리 대상: 서버 OS 운영