新一代監控平臺整合telegraf、influxdb、garafana

      隨着容器時代到來,公司對devops等概念理解愈來愈深入,業務系統架構也在不斷向微服務架構調整。業務系統也不斷的提供更多的api接口,實現方便靈活的調用。在這種業務背景下,感受業務系統的監控系統(zabbix、cacti)等,略顯笨重,在使用靈活度上感受也略顯欠佳。
html

    那麼有沒有新的監控系統可以在知足監控的需求的基礎上,讓使用變得更靈活、調用更加方便那?
sql

答案是確定的,有,我的查了一些資料,簡單整理一下,下面進行簡單描述:數據庫

監控系統通常分幾塊:api

數據採集跨域

數據存儲架構

數據展現app

告警 (後期探討)less

對應找到服務以下:分佈式

採集數據(telegraf)-> 存儲數據(InfluxDB) -> 顯示數據(Grafana)ide

下面對各個服務的特色進行介紹:


1:telegraf 

    Telegraf 是一個用 Go 編寫的代理程序,可收集系統和服務的統計數據,並寫入到 InfluxDB 數據庫。

Telegraf 具備內存佔用小的特色,經過插件系統開發人員可輕鬆添加支持其餘服務的擴展。

我的感覺:

1:監控插件知足主流監控需求;

2:添加監控項方式簡單、靈活;

3:監控項模塊化,方便自動程序調用;

官網參考地址 

https://docs.influxdata.com/telegraf/v0.11/


2:influxdb

    InfluxDB 是一個開源分佈式時序、事件和指標數據庫。使用 Go 語言編寫,無需外部依賴。其設計目標是實現分佈式和水平伸縮擴展。


一、它有三大特性:

1. Time Series (時間序列):你可使用與時間有關的相關函數(如最大,最小,求和等)

2. Metrics(度量):你能夠實時對大量數據進行計算

3. Eevents(事件):它支持任意的事件數據


二、特色

schemaless(無結構),能夠是任意數量的列

Scalable

min, max, sum, count, mean, median 一系列函數,方便統計

Native HTTP API, 內置http支持,使用http讀寫

Powerful Query Language 相似sql

Built-in Explorer 自帶管理工具


三、API

InfluxDB 支持兩種api方式

HTTP API

Protobuf API

我的感覺:

1:數據爲爲監控而生;

2:方便擴容;

3:管理、使用都很爽;


3:grafana

    Grafana是一個純粹的html/js應用,訪問InfluxDB時不會有跨域訪問的限制。只要配置好數據源爲InfluxDB以後就能夠,剩下的工做就是配置圖表。Grafana 功能很是強大。

使用ElasticsSearch保存DashBoard的定義文件,也能夠Export出JSON文件(Save ->Advanced->Export Schema),而後上傳回它的/app/dashboards目錄。

我的感覺:

1:gafana 太強了,展現監控數據就是小菜一碟;

2:豐富的數據源接口,各類數據都能接入,在gafana進行展現;

3:豐富的API接口,方便自動化程序調用;

4:監控dashboard 導入 、導出,這個很棒,作好一個比較滿意的展現面板,導出後主要修改一下里面的IP等信息,經過導入,其它主機的展現所有搞定。


以上僅僅是我的總結的一點,優缺點還須要你們各自評點,下面是個人安裝部署的一些資料,提供參考,不足之處請指正。

telegraf安裝部署詳解

influxdb 安裝配置詳解

grafana 安裝配置詳解

相關文章
相關標籤/搜索