Cloud 환경에서 Application을 실행하기 위해서는 서버 Resource가 필요합니다.
기존 방식에서는 물리 서버를 구매하고 설치하는 과정이 필요했지만, AWS에서는 EC2(Elastic Compute Cloud)를 이용하여 필요한 만큼 가상 서버를 생성할 수 있습니다.
예:
서버 필요
↓
EC2 Instance 생성
↓
Operating System 선택
↓
Application 설치
↓
서비스 운영
EC2는 AWS Cloud 환경에서 가장 기본적인 Compute 서비스입니다.
| 구성 요소 | 역할 |
|---|---|
| EC2 Instance | 가상 서버 |
| AMI | 서버 이미지 |
| Instance Type | CPU·Memory 사양 |
| EBS | Disk Storage |
| Security Group | Network 접근 제어 |
EC2 구조를 이해하면 AWS 기반 Server Architecture와 Kubernetes Infrastructure를 연결할 수 있습니다.
AWS EC2란?
Amazon EC2(Elastic Compute Cloud)는 AWS에서 제공하는 가상 서버 서비스입니다.
사용자는 필요한 CPU, Memory, Storage를 선택하여 서버를 생성할 수 있습니다.
기존 서버:
서버 구매
↓
설치
↓
Network 구성
↓
운영
AWS EC2:
Instance 선택
↓
몇 분 내 서버 생성
↓
Application 배포
빠르고 유연한 Server 운영이 가능합니다.
AWS EC2 Instance Architecture
기본 구조:
User
↓
AWS Console / API
↓
EC2 Instance
↓
Operating System
↓
Application
EC2는 실제 물리 서버 위에서 Virtualization 기술로 동작합니다.
AWS EC2 AMI란?
AMI(Amazon Machine Image)는 EC2 Instance를 생성하기 위한 서버 이미지입니다.
포함 내용:
- Operating System
- Application Server
- Configuration
- Software
예:
AMI 선택
↓
Ubuntu Server
↓
EC2 생성
서버 환경을 빠르게 구성할 수 있습니다.
AWS EC2 Instance Type이란?
Instance Type은 서버 성능을 결정합니다.
구성:
- vCPU
- Memory
- Network Performance
- Storage Option
대표 유형:
| 유형 | 용도 |
|---|---|
| General Purpose | 일반 서버 |
| Compute Optimized | CPU 중심 작업 |
| Memory Optimized | Database |
| Storage Optimized | 대용량 데이터 처리 |
Application 특성에 맞게 선택합니다.
AWS EC2 Instance 생성 과정
일반적인 생성 과정:
AMI 선택
↓
Instance Type 선택
↓
Key Pair 설정
↓
Network 설정
↓
Storage 설정
↓
Launch
EC2 Instance가 생성됩니다.
AWS EC2 Key Pair란?
EC2 접속을 위한 인증 방식입니다.
Linux 서버:
SSH Key
↓
Private Key
↓
EC2 접속
비밀번호 대신 암호화 Key를 사용합니다.
AWS EC2 Security Group
Security Group은 EC2 Network 접근 제어 기능입니다.
예:
허용:
SSH Port 22
HTTPS Port 443
차단:
불필요한 Port 접근
Cloud Firewall 역할을 합니다.
AWS EC2 Public IP와 Private IP
EC2는 두 종류의 IP를 사용합니다.
Private IP
VPC 내부 통신용
예:
EC2
↓
Database
↓
Private Network
Public IP
인터넷 접근용
예:
사용자
↓
Internet
↓
EC2
용도에 따라 구분합니다.
AWS EC2와 VPC 관계
EC2는 단독으로 존재하지 않습니다.
구조:
AWS Region
↓
VPC
↓
Subnet
↓
EC2 Instance
↓
Application
Network 환경 안에서 실행됩니다.
AWS EC2 Auto Scaling
Traffic 변화에 따라 EC2 개수를 자동 조절할 수 있습니다.
구조:
Traffic 증가
↓
Instance 증가
↓
처리 능력 증가
Traffic 감소:
Instance 감소
↓
비용 절감
AWS EC2 Load Balancer 연결
Production 환경에서는 여러 EC2를 운영합니다.
구조:
User
↓
Load Balancer
↓
EC2-1
EC2-2
EC2-3
Traffic을 분산합니다.
AWS EC2와 Kubernetes 연결
이전 Kubernetes 내용과 연결하면:
AWS EC2
↓
Worker Node
↓
Kubernetes Cluster
↓
Pod
↓
Container
AWS EKS 환경에서도 EC2 기반 Worker Node를 사용합니다.
AWS EC2 운영 Best Practice
권장:
- 최신 AMI 사용
- Security Group 최소 권한
- Monitoring 활성화
- Backup 설정
- Instance Type 최적화
- IAM Role 사용
안전한 Server 운영 환경을 구축합니다.
AWS EC2 장애 분석
Instance 상태 확인:
systemctl status
Network 확인:
ping
AWS 확인:
EC2 Status Check
확인:
- Instance 장애
- Network 문제
- Storage 문제
- Security Group 설정
AWS EC2 비용 관리
비용 요소:
- Instance Type
- Running Time
- Storage
- Data Transfer
비용 최적화:
- Reserved Instance
- Savings Plans
- Spot Instance
환경에 맞게 선택합니다.
AWS EC2 장점
| 장점 | 설명 |
|---|---|
| 빠른 생성 | 서버 구축 시간 단축 |
| 확장성 | 필요한 만큼 증가 |
| 유연성 | 다양한 사양 선택 |
| 통합 관리 | Cloud 서비스 연결 |
EC2는 AWS Infrastructure의 핵심 Compute 서비스입니다.
자주 묻는 질문
EC2는 실제 서버인가요?
사용자는 가상 서버를 사용하지만 실제 데이터센터의 물리 서버 위에서 동작합니다.
EC2와 일반 VPS 차이는 무엇인가요?
EC2는 Cloud 환경에서 다양한 Network, Storage, Security 서비스와 통합되어 확장성이 높습니다.
Kubernetes를 사용하면 EC2가 필요 없나요?
아닙니다.
AWS EKS 같은 Kubernetes 환경에서도 EC2는 Worker Node Infrastructure로 활용됩니다.
마무리
AWS EC2는 Cloud 환경에서 가상 서버를 생성하고 Application을 운영하기 위한 핵심 Compute 서비스입니다.
| 구성 요소 | 역할 |
|---|---|
| AMI | 서버 이미지 |
| Instance Type | 서버 성능 |
| Key Pair | 접속 인증 |
| Security Group | 접근 제어 |
| EBS | Storage |
EC2 구조를 이해하면 AWS Cloud, Kubernetes, DevOps Infrastructure를 설계하는 기본 능력을 갖출 수 있습니다.