brunch

InfluxDB로 알아보는 time-series DB

2. 데이터 수집기 - Telegraf 설치, 연결하기

by 임성현

Telegraf(https://influxdata.com/time-series-platform/telegraf/)는 time-series데이터를 수집하는 툴입니다.

gatling 등에서 직접 influxDB로 데이터를 주입할 수도 있지만, Telegraf는 다양한 데이터 소스에서 플러그인을 통해 데이터를 수집, 일관성 있게 InfluxDB에 데이터를 저장할 수 있게 합니다.


여기에서는 Telegraf가 직접 CPU, Memory정보를 수집해서 InfluxDB에 입력해보겠습니다.

Mac에 Telegraf를 설치하는 방법은 매우 간단합니다.

1. brew update 실행


스크린샷 2016-01-02 오후 8.17.11.png

만약, OSX El Captian에서 다음과 같은 에러가 발생하면

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
Error: Failure while executing: git init
xcode-select --install

를 실행하고 다시 update 해 보세요.

출처: https://ohthehugemanatee.org/blog/2015/10/01/how-i-got-el-capitain-working-with-my-developer-tools/


2. brew install telegraf 실행

스크린샷 2016-01-02 오후 8.29.01.png

설치가 끝났으면 Telegraf가 cpu, memory를 수집할 수 있도록 conf파일을 생성해주어야 하는데, 이 부분에서 Telegraf의 섬세한 배려가 돋보입니다.

1. telegraf -usage <plugin name>

플러그인을 어떻게 사용할 수 있는지 설명합니다.

2. telegraf -sample-config

특정 플러그인을 사용할 때 필요한 conf 파일을 생성합니다.

다음처럼 입력하면 cpu와 memory정보를 수집하는 conf파일이 생성됩니다.

스크린샷 2016-01-02 오후 8.34.52.png

생성된 파일을 열어서 output InfluxDB의 url을 변경해줍니다.

스크린샷 2016-01-02 오후 8.38.27.png

수집한 데이터가 어떻게 전달될지 한번 test 해보겠습니다.

telegraf -config telegraf.conf -test 를 입력하면 전달할 내용의 샘플을 console에 출력합니다.

스크린샷 2016-01-02 오후 8.40.44.png

자, 이제 실제 InfluxDB와 연결해보겠습니다.

Telegraf를 실행한 콘솔은 아래와 같고.

스크린샷 2016-01-02 오후 8.42.00.png

InfluxDB admin 페이지에서 SHOW DATABASES를 입력하면, telegraf 데이터베이스가 생성된 것을 확인할 수 있습니다.

스크린샷 2016-01-02 오후 8.46.43.png

생성한 데이터를 확인하려면, 우측 상단에 있는 Database:를 클릭해서 telegraf로 변경하고 Show Measurements를 선택하고 enter를 입력합니다.

스크린샷 2016-01-02 오후 8.47.46.png
스크린샷 2016-01-02 오후 8.49.16.png

telegraf가 수집한 정보가 각 measurements 형태로 수집, 저장됩니다. 다음과 같이 Query를 생성해서 확인하면, 시계열 데이터가 생성, 저장되는 것을 확인할 수 있습니다.

스크린샷 2016-01-02 오후 8.51.49.png

이제 수집한 데이터를 그래프로 가공해서 볼 수 있도록 chronograf를 연결해보겠습니다.


전체 목차

0. InfluxDB소개

1. Docker 기반으로 InfluxDB 설치하기

2. 데이터 수집기 - Telegraf 설치, 연결하기

3. 데이터 가시화 - Chronograf 설치, 연결하기

작가의 이전글InfluxDB로 알아보는 time-series DB