본문 바로가기

Monitoring/Grapana+Graphite+Statd

02. Graphite

 Grafana 에 연결 가능한 데이터 소스는 Graphite 나 influxDB, Elasticsearch 등의 DB 가 많이 사용된다.
 
하지만 Grafana 는 다른 Data Source 에 비해서 Graphite 와 상당히 좋은 조합을 보인다. 
 
왜냐하면 Graphite 가 시간과 데이터를 받는 시계열 데이터베이스이기 때문이다.
 
반면 ElasticSearch 를 사용한 모니터링은 보통 로그 수집에 사용된다.   
 
ElasticSearch가 Graphite의 기능을 대개 커버할 수 있을지는 모르지만, 
 
단순 시계열 데이터를 저장하는데 최적화된 플랫폼은 아니다.
 
 

Graphite
 
Graphite 는 자체로 모 웹 사이트, 어플리케이션, 특정 데이터나 서버를 모니터링 하는 툴이다. 
 
 
 
 
Graphite 는 다음의 세 가지 Component 와 metrix 에 접근가능한 API 로 구성된다. 
 
Carbon : 백엔드 데몬 프로세스로 클라이언트로부터 데이터를 수집한다.
 
Whisper : Carbon 에서 넘겨받은 데이터를 파일 시스템에 저장하거나 읽어온다.
 
Webapp : 저장된 데이터를 웹으로 보여주나 기능일 별로다. 
 
추가로 Grafaite 에 데이터를 보내기 위한 Collector 가 필요한데 이는 기능에 포함되어 있지 않다.
 
즉 Collector 는 Carbon Cache 로 데이터를 보내주는 툴 정도로 보면 되겠다.
 
Collector : Carbon 으로 데이터를 보내는 툴로 Statd 가 많이 사용된다.
 
 

Graphite 데이터 구성
 
수집되는 데이터의 구성은 아래와 같이 Namespace - Value - TimeStamp 가 된다.
 
 
 
 

Grafana + Graphite 구성
 
Graphite 를 Grafana 의 Datasource 로 지정하면 Grafana 는 Graphite API 를 통해 
 
데이터를 얻고 이를 비쥬얼라이션 한다.
 
 
Grafana + Graphte + StatsD 를 사용했을 때의 툴 체인은 보통 아래와 같이 구성된다.
 
 
 
 
 
 
 
 

'Monitoring > Grapana+Graphite+Statd' 카테고리의 다른 글

06. Install Grafana  (0) 2020.01.22
05. Install StatsD  (0) 2020.01.22
04. Install Graphite  (0) 2020.01.22
03. StatsD  (0) 2020.01.22
01. Grafana  (0) 2020.01.22