windows_exporter 란?
windows_exporter는 Windows 서버의 CPU, 메모리, 디스크, 네트워크 상태 같은 서버 리소스 메트릭(Metrics) 을 수집해서 Prometheus가 가져갈 수 있게 해주는 모니터링 에이전트다. 원래 이름은 wmi_exporter였는데, 2020년에 이름이 windows_exporter로 공식 변경되었다.
쉽게 말하면: "Prometheus가 Windows 서버 상태를 모니터링할 수 있게 해주는 프로그램" 이다.
왜 필요한가?
Prometheus는 기본적으로 Linux 서버에 최적화된 시스템이라,
Windows 서버 리소스(CPU 사용률, 메모리 사용량, 디스크 상태 등) 을 직접 수집할 수 없다.
→ 그래서 Windows 서버에 windows_exporter를 설치해서, Prometheus가 HTTP로 메트릭을 긁어가게 만든다.
작동 방식
| 항목 | 설명 |
| 서버에 설치 | Windows OS에 서비스 형태로 설치 |
| HTTP 엔드포인트 제공 | 기본 포트 9182번으로 /metrics 엔드포인트 오픈 |
| Prometheus가 수집 | Prometheus가 HTTP GET 요청으로 메트릭 가져감 |
수집 가능한 메트릭 종류
| 카테고리 | 메트릭 예시 |
| CPU | cpu usage, cpu interrupt rate |
| 메모리 | available memory, memory usage percent |
| 디스크 | logical disk usage, read/write IO |
| 네트워크 | network interface bytes sent/received |
| 시스템 | system uptime, OS version |
| IIS | IIS 요청 수, 연결 수 (선택적 collector 활성화 필요) |
| 서비스 | Windows 서비스 상태 (ex: 특정 서비스 running/stopped 여부) |
주요 옵션 ( collector 설정 )
windows_exporter.exe --collectors.enabled cpu,logical_disk,net,os,system
cpu, logical_disk, network, OS, system 메트릭만 활성화
요약
| 항목 | 내용 |
| 풀네임 | windows_exporter (구: wmi_exporter) |
| 주목적 | Windows 서버의 시스템 상태(메트릭) 를 Prometheus로 수집할 수 있게 해주는 프로그램 |
| 수집하는 정보 | CPU 사용률, 메모리 사용량, 디스크 사용량, 네트워크 트래픽, 서비스 상태 등 |
| 설치 형태 | Windows 서비스로 설치해서 항상 백그라운드에서 동작 |
| 포트 기본값 | 9182번 포트로 HTTP 서버 오픈 (메트릭 제공) |
wmi_exporter 와 windows_exporter 차이점
| 항목 | wmi_exporter (구버전) | windows_exporter (최신버전) |
| 개발 시기 | 2018년까지 주로 사용 | 2019년부터 이름 변경, 유지보수 중 |
| 이름 | wmi_exporter | windows_exporter |
| 수집 방식 | WMI(Windows Management Instrumentation) 쿼리 직접 사용 | 성능 카운터(Perfmon API) 위주 사용, WMI 최소화 |
| 기본 설치시 활성 콜렉터 | 많음 (cpu, memory, disk, service, IIS 등 거의 다) | 적음 (cpu, memory, disk, system 등 기본만) |
| WMI 의존성 | 높음 | 낮음 |
| 서비스 상태 (ex: W3SVC) 직접 수집 | 가능 (wmi_service_status) | 불가능 (기본 콜렉터에는 없음) |
| IIS 상태 수집 | 사이트 활성화 여부 직접 수집 가능 | 트래픽/요청 수만 수집 가능 (활성화 여부는 간접 추정) |
| 성능 부하 | 약간 높음 (특히 서비스 상태 조회 많을 때) | 매우 낮음 (Go 언어, 경량 설계) |
| 설치 복잡도 | collector 조정 필요 (안 하면 과다 수집) | 비교적 단순 (기본 collector 중심) |
| 유지보수 상태 | 더 이상 업데이트 없음 (deprecated) | 현재 유지보수/업데이트 진행 중 |
| 추천 사용 용도 | 서비스 상태, IIS 살아있음/죽음 같은 세밀한 상태 확인 필요할 때 | 서버 리소스 모니터링(일반적인 CPU, 메모리, 디스크) 중심일 때 |
반응형
'Monitoring > Prometheus' 카테고리의 다른 글
| Alertmanager 다운로드 & 설치 (0) | 2025.04.28 |
|---|---|
| Alertmanager 메일 알림 기능 추가 (0) | 2025.04.28 |
| Windows 서버에 windows_exporter & wmi_exporter 설치 방법 (0) | 2025.04.28 |