快速部署Telegraf & Influxdb

是什麼?

Telegraf 是一個用 Go 編寫的代理程序,可收集系統和服務的統計數據,並寫入到 InfluxDB 數據庫。Telegraf 具備內存佔用小的特色,經過插件系統開發人員可輕鬆添加支持其餘服務的擴展。node

Influxdb 是一個開源的分佈式時序、時間和指標數據庫,使用 Go 語言編寫,無需外部依賴。Influxdb 有以下三大特性:shell

  • 時序性(Time Series):與時間相關的函數的靈活使用(諸如最大、最小、求和等);
  • 度量(Metrics):對實時大量數據進行計算;
  • 事件(Event):支持任意的事件數據,換句話說,任意事件的數據咱們均可以作操做。

爲何要用?

在平臺監控系統中,可使用 Telegraf 採集多種組件的運行信息,而不須要本身手寫腳本定時採集,大大下降數據獲取的難度;且 Telegraf 配置極爲簡單,只要有基本的 Linux 基礎便可快速上手。Telegraf 按照時間序列採集數據,數據結構中包含時序信息,時序數據庫就是爲此類數據設計而來,使用 Influxdb 能夠針採集獲得的數據完成各類分析計算操做。數據庫

怎麼用?

這裏不介紹過多原理性的東西,儘量快速地在現有系統上安裝部署 Telegraf 和 Influxdb,並使用 Telegraf 採集部分數據寫入到 Influxdb 中。使用 wget 方式下載可能會較爲緩慢,建議使用迅雷等下載工具下載後再分發至服務器上。vim

1.安裝 Telegraf服務器

[root@node1 ~]# wget http://get.influxdb.org/telegraf/telegraf-0.11.1-1.x86_64.rpm
[root@node1 ~]# rpm -ivh telegraf-0.11.1-1.x86_64.rpm
[root@node1 ~]# systemctl start telegraf

2.安裝 Influxdb數據結構

[root@node1 ~]# wget http://dl.influxdata.com/influxdb/releases/influxdb-1.0.2.x86_64.rpm 
[root@node1 ~]# rpm -ivh influxdb-1.0.2.x86_64.rpm
[root@node1 ~]# systemctl start influxd

3.建立 Influxdb 用戶和數據庫分佈式

[root@node1 ~]# influx
   Visit https://enterprise.influxdata.com to register for updates, InfluxDB server management, and monitoring.
   Connected to http://localhost:8086 version 1.0.2
   InfluxDB shell version: 1.0.2
   > create user "telegraf" with password 'password'
   > show users;
   user     admin
   telegraf false
   > create database telegraf
   > show databases
   name: databases
   ---------------
   name
   _internal
   telegraf

4.配置Telegraf函數

[root@node1 ~]# vim /etc/telegraf/telegraf.conf
   ## 修改內容以下: 
   [[outputs.influxdb]]
     urls = ["http://localhost:8086"] # required 
     database = "telegraf" # required
     retention_policy = ""
     precision = "s"
     timeout = "5s"
     username = "telegraf"
     password = "password"    
[root@node1 ~]# systemctl restart telegraf

5.查看數據工具

打開 Influxdb 查詢界面:http://node1:8083 , 輸入查詢語句seclect * from cpu可查詢到 CPU 相關信息。ui

相關文章
相關標籤/搜索