Exporter 개념
📌 핵심 요약
Exporter는 Prometheus와 기존 애플리케이션 사이의 통역사 역할을 하는 컴포넌트입니다.
🔍 왜 Exporter가 필요한가?
Prometheus의 언어 장벽
Prometheus 형식:
redis_up 1
mysql_global_status_queries 250
기존 애플리케이션 형식:
Redis: INFO 명령어 → 텍스트 덩어리
MySQL: SHOW GLOBAL STATUS → 테이블 형태
→ 서로 말이 안 통함!
🔄 Exporter의 동작 방식
graph LR A[Prometheus] -->|HTTP 요청| B[Exporter] B -->|전용 프로토콜| C[Redis/MySQL] C -->|원시 데이터| B B -->|Metrics 형식| A
3단계 프로세스
- 데이터 수집 (Scrape): Redis/MySQL 명령어로 정보 가져오기
- 번역 (Translate): Prometheus Metric 형식으로 변환
- 제공 (Expose):
/metricsHTTP 엔드포인트로 노출
📦 배포 구조
일반적인 패턴
# Redis 본체
redis:6379 (캐싱 작업)
# Redis Exporter (통역사)
redis-exporter:9121 (모니터링 데이터 제공)느슨한 결합 (Loose Coupling)
- Redis 재시작 → Exporter 영향 없음
- Exporter 업그레이드 → Redis 영향 없음
- 모니터링 중단 → Exporter만 삭제
🔗 연관 문서
📚 이어서 읽기
다음 단계:
- [[02-Exporter-사용-시나리오]] - 언제 Exporter가 필요한가?
- [[03-관측성-3대-축]] - Metrics의 역할
- [[04-Prometheus-Blackbox-Exporter]] - 특수한 형태의 Exporter
기반 지식:
- [[../01_프로메테우스_기초_개념_완벽_정리]] - 프로메테우스 기초
- [[../02_모니터링_파이프라인_완벽_이해]] - 파이프라인 구조💡 실무 팁
Exporter는 “필요악”입니다. 최신 클라우드 네이티브 앱은 Prometheus를 기본 지원하지만, 레거시 시스템(MySQL, Redis 등)은 Exporter가 필수입니다.