Monitoring/Prometheus

windows_exporter ( 구: wmi_exporter ) 정의

박쿠리 2025. 4. 28. 20:27

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, 메모리, 디스크) 중심일 때
반응형