snow · 2026.4.20 07:36 · 조회 1
데이터 소스 연결
데이터 소스란?
Grafana가 데이터를 가져오는 연결 대상입니다. Prometheus, MySQL, InfluxDB 등 다양한 소스를 등록하여 대시보드에서 활용할 수 있습니다.
데이터 소스 추가
Connections → Data sources → Add data source
Prometheus 연결
인프라 메트릭 모니터링에 가장 널리 사용되는 조합입니다.
- Add data source → Prometheus 선택
- Connection 섹션에 URL 입력
http://prometheus:9090
- Authentication 설정 (필요한 경우)
- 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 연결
- Add data source → MySQL (또는 PostgreSQL) 선택
- 연결 정보 입력:
| 항목 | 예시 |
|---|---|
| Host | db-server:3306 |
| Database | myapp |
| User | grafana_reader |
| Password | **** |
| TLS/SSL Mode | disable 또는 require |
- 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, 로그, 성능 지표 저장에 적합합니다.
- Add data source → InfluxDB 선택
- Query Language: Flux 또는 InfluxQL 선택
- URL, Organization, Token 입력
- 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 refused | URL 또는 포트 오류 확인 |
unauthorized | 인증 정보 확인 |
certificate verify failed | TLS 설정 또는 인증서 문제 |
timeout | 네트워크 방화벽 또는 서버 상태 확인 |
댓글
아직 댓글이 없습니다.
댓글을 작성하려면 로그인이 필요합니다.