Zadara Cloud

Zadara Cloud 사용법 12강

종합 실전 — 3-tier 웹 서비스 설계

이번 강은 시리즈의 마무리로, 지금까지 배운 요소를 묶어 실제 웹 서비스를 설계한다.

Zadara 12강 개념도

VM·스토리지·네트워크·LB·오토스케일·백업·IaC를 따로 배웠다. 이제 이것들을 하나의 전형적인 구조 — 3계층(3-tier) 웹 서비스 — 로 조립한다.

이 강의 목표는 다음과 같다.

  • 3계층 구조가 무엇인지 이해한다.
  • 각 계층을 어느 서브넷에 두는지 안다.
  • 앞서 배운 요소가 어디에 들어가는지 한눈에 잡는다.

1. 3계층(3-tier) 구조

서비스를 역할에 따라 세 층으로 나눈다.

계층 역할 배치
사용자 요청 수신·화면 퍼블릭 서브넷
비즈니스 로직 처리 퍼블릭/프라이빗
데이터 DB·파일 저장 프라이빗 서브넷

계층을 나누면 각 층을 독립적으로 확장하고, 데이터 계층을 외부에서 차단할 수 있다.

2. 네트워크 배치 (4강)

  • VPC 10.0.0.0/16 하나를 만든다.
  • 퍼블릭 서브넷: 웹·앱 VM. LB를 통해 외부와 연결.
  • 프라이빗 서브넷: DB VM. 외부에서 직접 접근 불가, 아웃바운드는 NAT로만.
  • 보안그룹: 웹은 80/443, DB는 웹·앱에서 오는 DB 포트만 허용.

3. 각 요소가 들어가는 자리

  • 로드밸런서 + 오토스케일(6강): 웹 계층 앞에. 트래픽에 따라 웹 VM 자동 증감.
  • 블록 스토리지(3강): DB VM의 데이터 디스크.
  • 오브젝트 스토리지(9강): 정적파일(이미지·업로드)·백업 보관.
  • 스냅샷·DR(8강): DB 볼륨 정기 스냅샷 → 오브젝트 스토리지.
  • IaC(10강): 이 전체를 Terraform 코드로 선언해 재현.
  • 모니터링·비용(11강): 대시보드·알람으로 운영.

4. 요청이 흐르는 길

  1. 사용자가 도메인으로 접속 → 로드밸런서가 받는다.
  2. LB가 웹 VM(오토스케일 그룹)에 분산한다.
  3. 웹/앱이 로직을 처리하고 필요하면 DB VM(프라이빗)에 질의한다.
  4. 이미지·파일은 오브젝트 스토리지에서 서빙한다.
  5. DB는 정기 스냅샷으로 백업된다.

예제

예제) 하루 대부분은 한산하다가 점심·저녁에 주문이 몰리는 배달 서비스를 설계한다. 어떤 구성을 잡나?

해설) 웹·앱 계층을 퍼블릭 서브넷에 두고 로드밸런서 뒤 오토스케일 그룹으로 구성해, 피크 시간엔 VM이 자동으로 늘고 한산하면 줄어 비용을 아낀다. DB는 프라이빗 서브넷에 두어 외부에서 직접 접근을 막고, 블록 스토리지에 데이터를 둔 뒤 정기 스냅샷으로 백업한다. 메뉴 이미지·영수증 같은 정적파일과 백업은 오브젝트 스토리지에 보관한다. 이 전체를 Terraform으로 코드화해 두면 지역 확장 시 그대로 복제하고, 대시보드·예산 알람으로 운영한다.

정리

  • 3계층은 웹·앱·데이터로 역할을 나눈 전형적 웹 서비스 구조다.
  • 웹·앱은 퍼블릭, 데이터는 프라이빗 서브넷에 두어 DB를 외부와 차단한다.
  • LB·오토스케일·스토리지·스냅샷·IaC가 각자의 자리에 들어간다.
  • 앞선 강들의 요소를 조립하면 확장 가능하고 안전한 서비스가 된다.

이것으로 Zadara Cloud 사용법 시리즈(1~12강)를 마친다. 소개·기본(1~5강)부터 고가용성·마이그레이션·백업·자동화·운영·종합 설계(6~12강)까지, AWS 지식을 국내 대안 클라우드에서 실전으로 활용하는 흐름을 익혔다.

댓글 0