1. 제한된 자원 환경에 최적화된 모니터링 시스템 구축

시스템, 서비스, 네트워크 및 애플리케이션의 안정적인 운영을 위해 맞춤형 모니터링 시스템 구축 경험이 있습니다. ELK Stack, Grafana, DataDog, New Relic 등 다양한 상용 솔루션을 고려했으나, 프로젝트 예산 및 규모를 고려하여 오픈 소스 기반의 Grafana를 활용한 모니터링 시스템을 구축했습니다.

현재 운영 중 서버는 t3.medium모델로 CPU, 메모리, 스토리지를 분석했습니다.

이름 vCPU(Virtual CPU) 메모리(GiB) 스토리지(GB)
t3.medium 2 4.0 20

특히, t3.medium(vCPU 2, 메모리 4.0GiB, 스토리지 20GB) EC2 인스턴스 환경에 최적화된 시스템 구축을 위해 Docker 이미지 용량을 비교 분석했습니다.

ELK Docker Size

ELK Docker Size

Grafana Docker Size

Grafana Docker Size

Docker 이미지 용량 비교 분석을 통해 ELK Stack 대비 Grafana의 경량화된 이미지가 효율적인 자원 활용에 유리하다고 판단했습니다.

따라서 Grafana, Loki, Promtail, Prometheus를 활용하여 로그 데이터 수집, 시각화 및 알림 기능을 갖춘 통합 모니터링 시스템을 구축했습니다.

2. 운영 환경에 적합한 모니터링 아키텍처

운영환경에서 구축 된 모니터링 아키텍처는 다음과 같이 도식화 했습니다.

단일 EC2 인스턴스(t3.medium)에서 모니터링 시스템과 운영 서버를 효율적으로 통합 관리하는 아키텍처를 설계했습니다.

운영 모니터링 아키텍처.jpg

3. Prometheus로 모니터링 데이터 수집과 통합하기

Prometheus를 통해 다음과 같은 주요 메트릭 정보를 수집하여 시스템 및 애플리케이션 성능을 실시간으로 모니터링합니다.

Prometheus.jpg