프로메테우스
: 대상 시스템으로부터 각종 모니터링 지표를 수집하여 저장 및 검색할 수 있는 오픈소스 시스템
: MSA 환경에서 다수의 시스템을 모니터링 하기 편리
- 특징
: 메트릭 키/값으로 식별되는 다차원 데이터 모델
: PromQL을 사용한 유연한 쿼리
: 그라파나를 통한 시각화 용이
: HTTP GET 형태로 메트릭 정보를 pulling하는 방식
- 메트릭 수집 방법
: 타겟 시스템에 exporter가 구성되어 있어야함
: exporter 해당 시스템의 메트릭 정보를 수집한 후 /metrics 형태의 HTTP 엔드포인트를 제공
exporter
: 시스템의 정보를 수집하고 HTTP 엔드포인트로 메트릭을 노출시키는 모니터링 에이전트
: 설치된 서버의 시스템의 정보를 수집하여 클라이언트에 응답하는 서버 프로그램
- 메트릭
: 시간이 지남에 따라 보고된 숫자 측정 값
- 에이전트
: 환경, 사용자 입력 및 경험에 따라 의사 결정을 하거나 서비스를 수행할 수 있는 프로그램
대표적인 exporter의 종류
- node-exporter
- mysqld-exporter
- wmi-exporter (windows server)
- postgre-exporter
- redis-exporter
- kafka-exporter
- jmx-exporter
- 그외 exporter
https://prometheus.io/docs/instrumenting/exporters/
node-exporter
: 클러스터에 존재하는 노드마다 하나씩 배포되어 해당 노드에서 발생하는 메트릭 (cpu, memory, disk 사용량 등 호스트 관련 정보)을 수집하는 모니터링 에이전트
: node exporter로부터 수집한 메트릭을 프로메테우스 내의 TSDB에 저장하여 PromQL로 메트릭을 쿼리해 서버 상태를 ㅗ모니터링
: 기본적으로 9100번 포트를 사용하며 바이너리 파일로 실행하거나 도커 이미지로 컨테이너를 생성하여 실행
- 수집 메트릭 종류
: cpu 사용률
: 메모리 사용률
: 디스크 사용률
: 하드웨어에서 발생하는 메트릭
: 기타 <READ ME 참조> (https://github.com/prometheus/node_exporter)
mysqld exporter
: MySQL 서버의 상태에 대한 메트릭 수집 모니터링 에이전트
: mariaDB등 MySQL과 호환되는 DBMS에서도 사용 가능 (mariaDB만 되는 것 같음)
: node exporter와 달리 설정한 엔드포인트로 쿼리를 날려 지표들을 수집하는 방식이기 때문에 MySQL 서버에 접근하지 않아도 됨
: 하나의 인스턴스에서 다수의 RDS를 모니터링할 수 있음
wmi exporter
: Windows 시스템용 모니터링 에이전트
: node exporter와 같이 서버의 각종 메트릭을 수집
Reference
'InfraStructure > Prometheus' 카테고리의 다른 글
[프로메테우스] 그래픽카드 메트릭 수집 (엔비디아 / AMD) (0) | 2023.06.07 |
---|---|
Prometheus 란? (0) | 2022.08.16 |