[AWS] EC2 Instance

likell1·2026년 1월 22일

AWS

목록 보기
3/5
post-thumbnail

AWS-SAA 자격증 취득을 위해, Udemy 강의를 보고 공부한 내용을 정리합니다.

EC2

EC2란,
Elastic Compute Cloud → EC2

AWS에서 제공하는 가상 서버를 빌려 쓰는 서비스이다.

즉 서버가 필요할 때, 직접 사는게 아니라 클라우드 형태로 빌려 쓰는 것.

이러한 서비스를 말하는 것이 AWS EC2이다.


EC2 Instance(인스턴스)

EC2에서 실행 중인 하나의 가상 서버(Server)

📌 비유하자면,

  • EC2가 자동차 렌트회사라고 했을 때,
  • EC2 인스턴스는 실제로 빌린 자동차 한 대

즉,
EC2는 내가 원하는 서버를 만들기 위해 사용하는 ‘서비스’이고,
EC2 인스턴스는 그 서비스로 실제로 생성되어 실행 중인 ‘서버 한 대’ 라고 볼 수 있다.


EC2 Instance 구성요소

  1. OS
  2. CPU/Memory
  3. Storage
  4. Network

이렇게 구성요소를 내가 다양하게 DIY해서 원하는 목적의 서버를 만들 수 있다.

즉, EC2 = OS, 성능, 네트워크, 보안, 스토리지를 내가 직접 조합하는 서버 DIY 서비스


EC2 Instance 유형

  1. General Purpose (범용)

👉🏻 일반적인 서버에서 주로 사용

  • CPU / 메모리 균형
  • WAS, 웹 서버, 개발 서버
  1. Compute Optimized

👉🏻 CPU가 병목일 때

  • 높은 클럭, 많은 vCPU
  • 연산 집약적 작업
  1. Memory Optimized

👉🏻 RAM이 핵심일 때

  • 메모리 대용량
  • In-memory 처리
  1. Storage Optimized

👉🏻 디스크 I/O 성능이 핵심

  • 고속 로컬 SSD
  • 높은 IOPS
  • high-frequency OLTP
  1. Accelerated Computing

👉🏻 특수 하드웨어 필요

  • GPU / FPGA / Inferentia
  • ML/DL 학습

EC2 Instance 상태

EC2는 서버를 껐다(Running)/켰다(Stopping) 할 수 있는 장점이 있다.

다만 Terminated 하면 완전 삭제되므로 복구할 수 없다.

EC2는 서버를 제공하는 서비스이므로,

직접 OS를 다뤄야 하거나, 장시간 실행되어야 하는 서버일 때 사용하는 것이 적합함
그게 아니라면 서버리스 아키텍쳐로 구현하는 것이 적합


Security Groups

Security Group(보안 그룹) = EC2 인스턴스에 붙는 외부의 “가상 방화벽”


보안 그룹의 특징

  • 보안 그룹에는 허용(Allow) 규칙만 존재하고, 나머지는 전부 자동 차단되는 특징이 있다.
    • 뭐가 들어오고, 뭐가 나갈지만 정하면 된다.
  • EC2에 직접 붙음
  • 하나의 인스턴스 당 여러 개의 보안 그룹이 존재할 수 있다.

보안 그룹의 역할

보안 그룹은 네트워크 트래픽을 제어한다.

➡️ Inbound (들어오는 트래픽)

  • 외부 → 인스턴스
  • 예:
    • 22 (SSH)
    • 80 (HTTP)
    • 443 (HTTPS)

⬅️ Outbound (나가는 트래픽)

  • 인스턴스 → 외부
  • 기본값: 모두 허용

Classic Ports

🌐 웹 관련 Port

포트프로토콜의미
80HTTP웹 (암호화 ❌)
443HTTPS웹 (암호화 ⭕)
21FTP파일 전송
22SFTP암호화된 파일 전송

🔐 서버 접속 (관리용)

포트의미대상
22SSHLinux
3389RDPWindows

🗄️ 데이터베이스

포트DB
3306MySQL / MariaDB
5432PostgreSQL
1433MS SQL
1521Oracle

보안 그룹 생성 및 수정 방법

  1. AWS 콘솔 좌측에 보면, Network & Security → Security Groups 에서 보안 그룹을 볼 수 있다.

  1. 처음 만들었기 때문에, 2개의 보안 그룹이 존재하는 것을 확인할 수 있다.

  • 상단의 Create security group새로운 보안 그룹 생성 가능

  1. 보안 그룹을 클릭하고 아래 창을 보면, 세부 정보와 인바운드&아웃바운드 규칙을 수정할 수 있다.

    • 현재는 인바운드 규칙(인스턴스로 들어오는 트래픽을 SSH와 HTTP를 허용한 상태 우측의 Edit inbound rules → 인바운드 규칙 수정을 들어가면,
      0.0.0.0/0 을 확인할 수 있는데, 이는 해당 포트에서 오는 모든 IP 주소를 허용하겠다는 의미이다.

로드 밸런서(Load Balancer)

Load Balancer = 여러 EC2 인스턴스 앞에서 트래픽을 받아서 분산해주는 중간 관문

  • 보통은 EC2 앞에 로드밸런서를 두어, 로드 밸런서를 통과한 트래픽만 EC2에 받게 설계된다.
  • 로드 밸런서도 보안 그룹을 가지기 때문에, 트래픽을 제어할 수 있다.

로드 밸런서 구조가 필요한 이유

  1. 트래픽 분산
    • 트래픽을 분산시켜 요청을 여러 EC2 Instance로 나눔
      → 성능과 안정성 ↑
  2. 고가용성(High Availability)
    • EC2 한 대가 죽어도 로드 밸런서가 살아있는 Instance로 전달
      → 단일 장애 지점 (SPOF) 해결
  3. 보안 강화
    • EC2를 인터넷에 직접 노출시키지 않기 때문에, 포트나 IP 공격 대상이 되지 않는다.
profile
Data Engineer/ML Engineer

0개의 댓글