snow · 2026.4.20 07:36 · 조회 1

데이터 소스 연결

데이터 소스란?

Grafana가 데이터를 가져오는 연결 대상입니다. Prometheus, MySQL, InfluxDB 등 다양한 소스를 등록하여 대시보드에서 활용할 수 있습니다.


데이터 소스 추가

Connections → Data sources → Add data source


Prometheus 연결

인프라 메트릭 모니터링에 가장 널리 사용되는 조합입니다.

  1. Add data source → Prometheus 선택
  2. Connection 섹션에 URL 입력
http://prometheus:9090
  1. Authentication 설정 (필요한 경우)
  2. Save & test 클릭 → "Data source is working" 확인

PromQL 쿼리 예시

# CPU 사용률
100 - (avg by(instance) (rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)

# 메모리 사용량
node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes

# HTTP 요청률
rate(http_requests_total[5m])

MySQL / PostgreSQL 연결

  1. Add data source → MySQL (또는 PostgreSQL) 선택
  2. 연결 정보 입력:
항목예시
Hostdb-server:3306
Databasemyapp
Usergrafana_reader
Password****
TLS/SSL Modedisable 또는 require
  1. Save & test 클릭

SQL 쿼리 예시

SELECT
  $__timeGroup(created_at, '1h') AS time,
  COUNT(*) AS orders
FROM orders
WHERE $__timeFilter(created_at)
GROUP BY time
ORDER BY time

$__timeGroup, $__timeFilter는 Grafana가 시간 범위에 맞게 자동 변환하는 매크로입니다.


InfluxDB 연결

시계열 데이터베이스로 IoT, 로그, 성능 지표 저장에 적합합니다.

  1. Add data source → InfluxDB 선택
  2. Query Language: Flux 또는 InfluxQL 선택
  3. URL, Organization, Token 입력
  4. Save & test

Loki 연결 (로그)

Grafana Labs에서 만든 로그 집계 시스템입니다.

URL: http://loki:3100

연결 후 Explore에서 LogQL로 로그를 검색할 수 있습니다.

{app="my-service"} |= "ERROR"
{job="nginx"} | json | status >= 500

데이터 소스 권한

관리자는 특정 데이터 소스를 특정 팀/사용자만 사용하도록 제한할 수 있습니다.

Data source 설정 → Permissions → Add permission


연결 테스트 오류 해결

오류 메시지원인 및 해결
connection refusedURL 또는 포트 오류 확인
unauthorized인증 정보 확인
certificate verify failedTLS 설정 또는 인증서 문제
timeout네트워크 방화벽 또는 서버 상태 확인

댓글

아직 댓글이 없습니다.

댓글을 작성하려면 로그인이 필요합니다.