Amazon EC2 (Elastic Compute Cloud)는 AWS(Amazon Web Services)에서 제공하는 클라우드 기반 가상 서버(Virtual Machine, VM) 서비스입니다.
사용자는 필요할 때 EC2 인스턴스를 생성하고, 원하는 OS, 스펙, 설정을 자유롭게 선택하여 사용할 수 있습니다.
✅ 가상 서버 (Virtual Machine)를 클라우드에서 실행할 수 있는 서비스
✅ 필요한 만큼 사용하고, 사용한 만큼만 비용 지불 (Pay-as-you-go 모델)
✅ 자동 확장(Scaling) 및 다양한 인스턴스 유형 제공
t2.micro, t3.medium 등 c5.large, c6g.xlarge 등 r5.large, x1e.2xlarge 등 p3.2xlarge, g5.xlarge 등 📌 사용 목적에 따라 최적화된 인스턴스 타입을 선택 가능!
| 인스턴스 유형 | 설명 | 사용 사례 |
|---|---|---|
| 온디맨드(On-Demand) | 사용한 만큼만 비용 지불 (기본형) | 개발, 테스트, 단기 프로젝트 |
| 예약 인스턴스(Reserved Instance) | 1~3년 단위 예약, 최대 75% 할인 | 장기적인 서버 운영 |
| 스팟 인스턴스(Spot Instance) | 사용하지 않는 EC2 인스턴스를 저렴하게 제공 (최대 90% 할인) | 배치 작업, 빅데이터 분석, 머신러닝 |
📌 비용 절감이 필요하면 "예약 인스턴스" 또는 "스팟 인스턴스" 활용!
📌 트래픽이 급변하는 서비스(API 서버, 웹 애플리케이션 등)에 적합!
📌 웹 애플리케이션이 여러 대의 EC2를 사용하는 경우 필수!
📌 EC2에 연결된 디스크를 영구적으로 저장하려면 EBS 사용 필수!
22번 포트 (SSH) → 특정 IP만 허용80번 포트 (HTTP) → 모든 IP 허용📌 EC2의 보안은 Security Group 설정이 가장 중요!
📌 무료로 사용하려면 "t2.micro" 인스턴스 선택!
ssh -i "my-key.pem" ec2-user@<EC2_PUBLIC_IP>
📌 Linux 계열(Ubuntu, Amazon Linux 등)의 경우, 기본 사용자 ID:
ec2-userubuntucentosadmin📌 Windows의 경우 RDP(Remote Desktop Protocol)로 접속 가능!
sudo yum install -y nginx # Amazon Linux 기준 (Ubuntu: sudo apt install -y nginx)
sudo systemctl start nginx
📌 EC2의 보안 그룹에서 80번 포트(HTTP)를 허용해야 외부 접속 가능!
| 비용 절감 방법 | 설명 |
|---|---|
| 스팟 인스턴스 | 사용하지 않는 EC2 인스턴스를 저렴하게 활용 |
| 예약 인스턴스 | 장기 사용 시 비용 절감 (최대 75% 할인) |
| 오토 스케일링 | 트래픽에 따라 EC2 개수를 자동 조절 |
| EC2 인스턴스 중지 | 사용하지 않을 때는 stop하여 과금 방지 |
| Lightsail 사용 | EC2보다 저렴한 AWS 가상 서버 서비스 |
📌 단기 테스트 용도라면, 사용 후 반드시 인스턴스 종료(Terminate) 해야 비용이 발생하지 않음!
✅ 웹 애플리케이션 서버 → Nginx, Apache, Spring Boot, Node.js 배포
✅ 데이터베이스 서버 → MySQL, PostgreSQL, MongoDB 실행
✅ AI/ML 학습 서버 → GPU 인스턴스를 사용하여 딥러닝 학습
✅ 배치 처리 → Cron Job, 데이터 처리, ETL 작업
✅ VPN 서버 → 개인 VPN 구축
📌 EC2는 클라우드에서 거의 모든 서버 환경을 구축할 수 있는 핵심 서비스!
| 서비스 | EC2 (Elastic Compute Cloud) | Lambda (서버리스) | Lightsail (저가형 가상 서버) |
|---|---|---|---|
| 운영 방식 | 직접 서버 운영 (VM) | 서버리스 (이벤트 기반) | 간단한 가상 서버 |
| 유지보수 | OS, 패치, 설정 필요 | 유지보수 불필요 | 유지보수 필요 (간단한 설정) |
| 비용 모델 | 사용한 시간만큼 과금 | 사용한 요청 수 만큼 과금 | 월정액 요금제 |
| 사용 사례 | 웹 서버, DB, AI/ML, 배치 작업 | API 서버, 백엔드 로직 실행 | 저렴한 웹 서버, 블로그 운영 |
📌 EC2 → 직접 서버 운영이 필요할 때
📌 Lambda → 서버리스 환경이 필요할 때
📌 Lightsail → 저렴한 비용으로 간단한 서버 운영
✅ EC2는 AWS의 대표적인 가상 서버(VM) 서비스
✅ 필요한 만큼 사용하고, 사용한 만큼 비용 지불 (Pay-as-you-go 모델)
✅ 다양한 인스턴스 유형을 제공 (CPU, RAM, GPU 최적화 등)
✅ 오토 스케일링, 로드 밸런서, EBS 등과 결합하여 고가용성 아키텍처 구축 가능
✅ 웹 서버, DB, AI/ML, 배치 처리 등 다양한 용도로 사용 가능
AWS 클라우드 환경에서 서버를 운영하려면 EC2는 필수적으로 알아야 할 핵심 서비스입니다!
추가 학습 자료