簡介
grafana
grafana一般是和一些時間序列數(shù)據(jù)庫進行配合來展示數(shù)據(jù)的,例如:Graphite硬贯、OpenTSDB焕襟、InfluxDB等
grafana是用于可視化大型測量數(shù)據(jù)的開源程序,他提供了強大和優(yōu)雅的方式去創(chuàng)建饭豹、共享鸵赖、瀏覽數(shù)據(jù)。dashboard中顯示了你不同metric數(shù)據(jù)源中的數(shù)據(jù)拄衰。
grafana最常用于因特網(wǎng)基礎(chǔ)設(shè)施和應用分析它褪,但在其他領(lǐng)域也有機會用到,比如:工業(yè)傳感器肾砂、家庭自動化列赎、過程控制等等。
grafana有熱插拔控制面板和可擴展的數(shù)據(jù)源,目前已經(jīng)支持Graphite包吝、InfluxDB饼煞、OpenTSDB、Elasticsearch诗越。
influxdb
在了解influxdb之前先了解個問題:什么是時間序列數(shù)據(jù)庫砖瞧?
什么是時間序列數(shù)據(jù)庫,最簡單的定義就是數(shù)據(jù)格式里包含Timestamp字段的數(shù)據(jù)嚷狞,比如某一時間環(huán)境的溫度块促,CPU的使用率等。但是床未,有什么數(shù)據(jù)不包含Timestamp呢竭翠?幾乎所有的數(shù)據(jù)其實都可以打上一個Timestamp字段。時間序列數(shù)據(jù)的更重要的一個屬性是如何去查詢它薇搁,包括數(shù)據(jù)的過濾斋扰,計算等等。
Influxdb是一個開源的分布式時序啃洋、時間和指標數(shù)據(jù)庫传货,使用go語言編寫,無需外部依賴宏娄。 它有三大特性:
時序性(Time Series):與時間相關(guān)的函數(shù)的靈活使用(諸如最大问裕、最小、求和等)孵坚;
度量(Metrics):對實時大量數(shù)據(jù)進行計算粮宛;
事件(Event):支持任意的事件數(shù)據(jù),換句話說卖宠,任意事件的數(shù)據(jù)我們都可以做操作窟勃。
Telegraf
Telegraf 是一個用 Go 編寫的代理程序,可收集系統(tǒng)和服務的統(tǒng)計數(shù)據(jù)逗堵,并寫入到 InfluxDB 數(shù)據(jù)庫。內(nèi)存占用小眷昆,通過插件系統(tǒng)可輕松添加支持其他服務的擴展蜒秤。
注:我是在win10 64位下安裝的,下面是我的安裝過程亚斋,一共分為3步吧作媚,對于linux、Ubuntu安裝配置方式相差不大帅刊。
第一步:安裝包下載
文件準備(版本號可以自己選擇纸泡,個人習慣最新版):
telegraf-x.x.x_windows_amd64.zip
influxdb-x.x.x_windows_amd64.zip
grafana-x.x.x.windows-x64.zip
grafana
官方下載地址:https://grafana.com/grafana/download?platform=windows (需要fan qiang)
CSDN下載地址:https://download.csdn.net/download/maguic/10354263
influxdb
官方下載地址:https://portal.influxdata.com/downloads/
CSDN下載地址:https://download.csdn.net/download/w4585m3590/10229573
telegraf
官方下載地址:https://portal.influxdata.com/downloads/
CSDN下載地址:https://download.csdn.net/download/qiguangwei1985/10477141
第二步:安裝及環(huán)境配置
grafana
加壓下載后的grafana 安裝包到本地磁盤目錄下(我的是在D:\grafana)即安裝完成。
使用默認配置就行赖瞒。
influxdb
加壓下載后的influxdb 安裝包到本地磁盤目錄下(我的是在D:\influxdb )即安裝完成女揭。
修改influxdb.conf蚤假,打開Web控制臺:
[admin]
# Determines whether the admin service is enabled.
enabled = true
# The default bind address used by the admin service.
bind-address = ":8083"
telegraf
加壓下載后的telegraf 安裝包到本地磁盤目錄下(我的是在D:\telegraf )即安裝完成。
修改influxdb.conf吧兔,設(shè)置日志文件目錄:
[[outputs.influxdb]]
# The full HTTP or UDP endpoint URL for your InfluxDB instance.
# Multiple urls can be specified but it is assumed that they are part of the same
# cluster, this means that only ONE of the urls will be written to each interval.
# urls = ["udp://127.0.0.1:8089"] # UDP endpoint example
# ------------修改這里磷仰,如果集群部署influxdb,這里數(shù)組中逗號分隔------------- #
urls = ["http://127.0.0.1:8086"] # required
第三步:服務啟動境蔼,本地調(diào)試
第二部完成后即表示你的環(huán)境已經(jīng)搭建完成了【是不是很簡單呢】灶平,下面我們啟動服務驗證下安裝的是否正確。
- 首先啟動influxdb:
通過cmd命令窗口箍土,切換到influxdb安裝目錄逢享,執(zhí)行如下命令:
influxd -config influxdb.conf
啟動成功如下圖所示:
瀏覽器輸入 http://127.0.0.1:8083/ 顯示下面頁面:
注意:
然后我們需要創(chuàng)建一個數(shù)據(jù)庫叫“telegraf”,因為telegraf配置默認會找influxdb下的這個庫
- 啟動telegraf
通過cmd命令窗口吴藻,切換到Telegraf安裝目錄瞒爬,執(zhí)行如下命令:
telegraf -config telegraf.conf
啟動成功如下顯示:
-
啟動grafana
切換到Grafana安裝目錄中的bin目錄下,雙擊 grafana-server.exe啟動程序即可:
啟動成功后调缨,瀏覽器輸入 http://localhost:3000/?orgId=1 加載到如下頁面即啟動成功:
第四步:使用
grafana + influxdb + telegraf 構(gòu)建性能監(jiān)控平臺你已經(jīng)搭建完成疮鲫,我們搭建的監(jiān)控平臺最終常用的用途是集群性能監(jiān)控,業(yè)務QPS弦叶、RT等實時監(jiān)控俊犯,所以業(yè)務如何打點到influxDB們需要我們自行實現(xiàn),監(jiān)控平臺只需要配置即可伤哺。