以前在公司的時候,查看某些接口的負載以及訪問頻率等情況會用到grafana這個很好的後臺UI控件。操做起來非常方便,因而趁着假期,也來簡單學習一下,過程當中遇到了挺多的坑,順便填一下,方便後來人。mysql
influxdb是一個目前來講比較流行的時間序列數據庫。通俗來說,就是以時間線貫連相通的數據庫。 提及來可能有點不太容易理解,我我的以爲對比學習多是一個更好的學習方法。下面按我本身的理解來描述下,說得不恰當的地方,歡迎批評指正。web
日常咱們使用的關係型數據庫,規格嚴謹,格式統一。能夠想象成是:301倉庫(數據庫名稱) 中218房間(表名),中的一排排貨架(表記錄),這就是關係型數據庫的典型的格式了。而相對sql
對於時間序列數據庫,也還算比較相似。其還算比較完善的類SQL語法,給它加分很多,開發者只須要記憶少許的關鍵名詞,就能夠很好的使用了。時間序列數據庫的形式能夠這麼想象: 301管線(數據庫名稱) 中包裹了不少條電路線(measurements,能夠認爲是關係型數據庫的表名), 由一個個**點(Points)**組成。數據庫
提及來是點,其實有點寬泛。剖開來看,點的組成有下面這些內容:windows
還有一個特殊的名詞series,全部在influxDB數據庫中的數據,都須要經過圖表來表示,series表示這個表裏面的全部的數據能夠在圖標上畫成幾條線(線條的個數規則是由tags排列組合計算出來)。瀏覽器
由於不想在本身的windows上再裝那麼多軟件了,因而就安裝在了Ubuntu服務器上。而後經過influxDB和Grafana自帶的web界面,使用HTTP連接進行操做就能夠了。bash
在Ubutu上,包管理器的存在讓安裝influxDB變得很方便了。服務器
wget https://dl.influxdata.com/influxdb/releases/influxdb_1.0.2_amd64.deb
sudo dpkg -i influxdb_1.0.2_amd64.deb
複製代碼
啓動influxDB服務。ide
service influxdb start
複製代碼
influxDB服務啓動後,有兩個比較特殊的端口須要瞭解一下,具體以下:學習
英文解釋的已經很清晰了,若是仍是嫌棄不理解,白話來說就是,8083是管理員操做influxDB的服務監聽端口,8086是經過HTTP(也就是web頁面)操做influxDB的服務監聽端口。
網上有太多的例子,我也不必在這重複造輪子,碼字。所以附上一個連接,就再也不過多描述了。
https://docs.influxdata.com/influxdb/v0.10/introduction/getting_started/
看完下面的截圖,順便聯想下mysql這種關係型數據庫的常見操做。基本上就沒什麼問題了
若是是在本地開啓了influxdb服務,在有UI的狀況下,能夠經過輸入http://localhost:8086 來訪問web頁面來管理服務。由於我是在服務器上開的服務,因此本地經過瀏覽器輸入對應的IP就行。
其餘的CRUD什麼的,就不說了。有興趣的,直接看官方文檔就好。https://docs.influxdata.com/influxdb/v0.10/guides/
跟influxDB同樣,我仍是在個人服務器上安裝,而後在本地遠程訪問。在Ubuntu上的安裝方式以下:
wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana_4.6.3_amd64.deb
sudo dpkg -i grafana_4.6.3_amd64.deb
複製代碼
由於是GO語言編寫,沒有其餘的相關依賴,因此其餘OS的安裝方式也都很簡單,詳細能夠參考下方文檔。https://grafana.com/grafana/download
啓動grafana服務。
service grafana-server start
複製代碼
值得一提的是,執行這個命令最好不要在/root目錄下,由於日誌的須要,這些目錄可能會有限制,所以須要注意一下。
服務啓動後,就能夠訪問以下連接進行管理了。http://localhost:3000 默認的用戶名密碼是admin,admin。由於我只在服務器上啓動了服務,因此我在本地須要使用ip的方式進行訪問。
除了數據庫類型以及HTTP代理以外,其餘的按照本身的實際狀況進行填寫就好。填寫完畢能夠經過Save&Test進行測試。
數據源添加完畢後,下一步就是讓數據以合適的形式顯示出來。所以就須要DashBoard。 官網(http://docs.grafana.org/guides/getting_started/)上也有詳細的教程,可是有些步驟用文字仍是稍顯蒼白。添加完合適的展現類型(Graph,Table等等)後,有可能你找不到對應的編輯數據源來展現數據。這裏填下坑,雙擊圖表的title,而後選擇edit便可。以下圖:
須要注意的是,有可能select的數據,沒能按照咱們所預期的樣子來進行展現,這個時候要考慮下,數據源內的數據是否是適合你選擇的DashBoard類型。其餘也就沒什麼問題了。
原本打算,使用InfluxDB寫一個TODO list,後來發現這個場景並不適合。而後就簡單的學習了下相關的內容,很淺。不過也算是填補一下知識的一塊短板吧。多瞭解點,總歸是沒錯的。
淺知拙見,寫的不恰當的地方,還望批評指正,多多指教下。