본문 바로가기
IT 끄적이기

Grafana에 Prometheus 연동하기

by 미르아 2025. 1. 7.
728x90

서버에 그라파나와 프로메테우스를 설치하고 실행 후 대시보드를 작성

Prometheus 데이터 소스 추가

Grafana 접속 - http://localhost:3000

Grafana 대시보드 → Configuration → Data Sources → Add Data Source

Prometheus URL 입력: http://127.0.0.1:9090

Grafana 대시보드 설정 방법 - 1번과 2번 방법으로 진행

(1) 대시보드 생성

  1. Grafana에 로그인 후 "Create → Dashboard" 클릭
  2. "Add New Panel" 클릭하여 원하는 쿼리를 추가

(2) 각 패널에 PromQL 쿼리 추가

  • 각 패널에 위의 PromQL 쿼리를 입력하고, 패널 제목을 알기 쉽게 설정
    • 예: "CPU Usage", "Memory Usage", "Disk Usage", "Network Traffic"

(3) 대시보드 템플릿 사용 (권장)

  • Grafana 대시보드 템플릿을 사용하면 설정 시간을 단축
  • 예: Node Exporter Full Dashboard
    • 이 템플릿은 CPU, 메모리, 디스크, 네트워크를 포함한 다양한 서버 리소스를 확인 가능

Dashboards - New - New dashboard - Add visualization - prometheus 선택

 

Queries - Metrics browser에 쿼리 입력 후 Run queries 클릭하면 Panel 확인 가능

Panel opions에서 Title, description 설정 가능

CPU 사용량

100 * (1 - avg(rate(node_cpu_seconds_total{mode="idle"}[1m])) by (instance))

메모리 사용량

100 * (1 - (node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes))

디스크 사용량

100 * (1 - (node_filesystem_free_bytes{fstype!~"tmpfs|overlay"} / node_filesystem_size_bytes{fstype!~"tmpfs|overlay"}))

네트워크 트래픽

rate(node_network_receive_bytes_total[1m])  # 수신 바이트/초
rate(node_network_transmit_bytes_total[1m])  # 송신 바이트/초

로드 평균 (Load Average)

node_load1

알림 설정 (Alert Rules)

Grafana 경고 설정

  • 패널 설정에서 "Alert" 탭 클릭 → 경고 조건 추가
  • 예: CPU 사용률이 90% 이상인 경우 경고:
  • promql 코드 복사 100 * (1 - avg(rate(node_cpu_seconds_total{mode="idle"}[1m])) by (instance)) > 90

Slack, Email 등 알림 채널 추가

  • Grafana에서 **"Alerting → Notification Channels"**로 이동
  • Slack, 이메일, PagerDuty 등을 설정하여 알림을 수신
728x90