본문 바로가기

Monitoring/Grapana+Graphite+Statd

(13)
05. Install StatsD 다음으로 StatsD 서버 를 Graphite Web 이 설치된 PC 에 설치하면 된다. StatsD 는 NodeJS 로 구성되어 있기 때문에 NodeJS 먼저 설치후 Git 서버에서 StatsD 소스를 다운받아 Griphite 와의 연결 정보를 입력 후 서비스를 실행하는 구조이다. #패키지 레포지토리 업데이트 ($ sudo rm -rf /var/lib/apt/lists/* - 업데이트 에러발생시) $ sudo apt-get update #NodeJS 설치 $ sudo apt-get install curl -y $ curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - $ sudo apt-get install nodejs -y #Git 설치 $ s..
04. Install Graphite Graphite 는 기본적으로 Unix Base 의 환경에서 구축해야 한다. 왜냐하면 윈도우는 체계가 다른 Regular Expression 시스템을 사용하기 때문에 여러가지 문제가 발생할 수 있다. 여기에서는 Ubuntu 에서 Graphite 를 설치하는 방법에 대해서 알아보도록 하자. 포트 열기 먼저 StatsD 클라이언트가 8125 번 포트를 통해 데이터를 전송하므로 해당 포트를 열어놓는다. 그리고 웹 기반으로 동작하므로 80 (HTTP) , 443 (HTTPS) , 8125 (StatsD) 가 모두 정상적으로 열렸는지 확인하자. $ ufw allow 8125/tcp $ ufw status 우분투 업데이트 및 업그레이드 다음으로 우분투를 업그레이드 한 다음 재부팅한다. #패키지 레포지토리 업데이트 ..
03. StatsD StatsD 는 metric value 를 모아서 Graphite 의 Carbon 컴포넌트로 데이터를 전송하는 데몬이다. StatsD 서버는 StatsD 클라이언트로에서 생성된 metric value 를 기본적으로 UDP 를 통해 데이터를 수신한다. ( TCP 방식도 지원한다. ) Datagram statsd 서버가 수집하는 데이터는 다음과 같은 형태를 가진다. :|type|@ bucket : key 에 해당하는 데이터로 위의 첫번째 예에서 MyService.Api.Invocation 에 해당한다. value : 말그대로 해당 key 에 대응하는 value 값이다. type : 데이터 value 의 종류를 의미한다. 아래 정리해 놓은 내용을 참조하자. sampling rate : 0.1 이라고 넣으면 데..
02. Graphite Grafana 에 연결 가능한 데이터 소스는 Graphite 나 influxDB, Elasticsearch 등의 DB 가 많이 사용된다. 하지만 Grafana 는 다른 Data Source 에 비해서 Graphite 와 상당히 좋은 조합을 보인다. 왜냐하면 Graphite 가 시간과 데이터를 받는 시계열 데이터베이스이기 때문이다. 반면 ElasticSearch 를 사용한 모니터링은 보통 로그 수집에 사용된다. ElasticSearch가 Graphite의 기능을 대개 커버할 수 있을지는 모르지만, 단순 시계열 데이터를 저장하는데 최적화된 플랫폼은 아니다. Graphite Graphite 는 자체로 모 웹 사이트, 어플리케이션, 특정 데이터나 서버를 모니터링 하는 툴이다. Graphite 는 다음의 세 가지..
01. Grafana Grafana는 대시보드 웹 어플리케이션으로 시계열 데이터 베이스를 보여주는데 최적화된 모니터링 웹 어플리케이션이다. 보통의 Grafana 는 단독으로 동작하기 보다는 다른 Data Soruce 와 연결되어 사용된다. 이때의 툴 체인은 보통 아래와 같다. 데이터의 흐름으로 보면 아래와 같다. 즉 서버 등에서 데이터를 DB 에 저장하고 Grafana 가 이를 읽어 Display 한다. Grafana Back-end Grafana 는 파이선 모듈로 이루어진 Grafana Back-end 를 가지고 있다. 이 Back-end 모듈은 Data Source 로부터 모니터링 하고자 하는 metrics 정보를 가져온다. 그리고 연결 가능한 Data Source 는 여러가지가 될 수 있다. Data Source Gra..