컨테이너화하고 AWS EKS 클러스터에서 이커머스 기반 애플리케이션을 실행하기 (모든 베스트 프랙티스 적용) (Part - 1)
발행: (2026년 2월 23일 오후 10:36 GMT+9)
4 분 소요
원문: Dev.to
Source: Dev.to
프로젝트 개요
이 프로젝트에는 OpenTelemetry Astronomy Shop이라는 마이크로서비스 기반 분산 시스템이 포함되어 있으며, 실제와 가까운 환경에서 OpenTelemetry를 구현하는 방법을 보여줍니다.
목표
- 현실적인 분산 시스템 예시 – 현대 클라우드 네이티브 시스템에서 엔드‑투‑엔드 가시성을 보여주기 위해 설계된 실제 마이크로서비스 기반 애플리케이션을 시연합니다.
- 다중 마이크로서비스, 다중 언어 아키텍처 – 다양한 프로그래밍 언어로 구현된 여러 독립 마이크로서비스를 포함하여, 많은 조직에서 사용하는 이질적인 기술 스택을 반영합니다.
- 실전 가시성 경험 – 프로덕션 환경에서 사용되는 분산 추적, 컨텍스트 전파 및 가시성 도구에 대한 실용적인 경험을 제공합니다.
- 산업에 맞춘 학습 접근법 – 조직이 마이크로서비스 아키텍처를 설계, 계측 및 모니터링하는 방식을 그대로 재현하여 학습자가 실제 구현 패턴과 모범 사례를 이해하도록 돕습니다.
사용 도구
- 컨테이너화 – Docker
- AWS 서비스 – EC2, IAM 역할 및 정책, EKS, Route 53, VPC, 서브넷
- 오케스트레이션 – 컨테이너화된 마이크로서비스 관리를 위한 Kubernetes
- 코드형 인프라(IaC) – AWS 리소스 프로비저닝을 위한 Terraform 모듈
- CI/CD – GitHub Actions (CI) 및 ArgoCD (CD)
- Ingress – 애플리케이션을 외부에 노출하기 위한 Ingress 및 Ingress Controller
- 패키지 관리 – 소프트웨어 및 종속성 설치를 위한 Helm 차트
배울 내용
- 클라우드 인프라 설정 – DevOps 구현을 위한 클라우드 환경을 구성하고 배포합니다.
- 프로젝트 및 SDLC 이해 – 마이크로서비스 기반 아키텍처에서 소프트웨어 개발 라이프사이클에 대한 깊이 있는 지식을 습득합니다.
- Docker를 활용한 컨테이너화 – Docker를 사용해 애플리케이션을 효율적으로 패키징하고 관리합니다.
- Docker Compose – Docker Compose를 이용해 다중 컨테이너 애플리케이션을 관리합니다.
- Kubernetes 오케스트레이션 – Kubernetes를 통해 대규모 컨테이너를 배포하고 관리합니다.
- Terraform을 활용한 IaC – 클라우드 인프라를 자동화하고 손쉽게 관리합니다.
참고 자료
- 애플리케이션 아키텍처
- 소스 코드
- 마이크로서비스 개요
아키텍처 다이어그램
프로젝트 아키텍처 다이어그램 및 설명은 다음 링크에서 확인할 수 있습니다:
https://opentelemetry.io/docs/demo/architecture/마이크로서비스 개요
https://opentelemetry.io/docs/demo/services/