在運維過程中經常會統計一些指標以圖形化的方式展現,可用的開源軟件比較多,本文記錄一下grafana和influxdb使用
一、grafana和influxdb安裝
grafana和influxdb安裝比較簡單,直接下載rpm包安裝就行
grafana-4.4.3-1.x86_64.rpm influxdb-1.8.0.x86_64.rpm 通過rpm -ivh grafana-4.4.3-1.x86_64.rpm 安裝 grafana 啟動:/bin/systemctl start grafana-server.service influxdb啟動:systemctl start influxd
二、influxdb簡單使用
進入influxdb /usr/bin/influx 帶認證時 /usr/bin/influx -username admin -password xxxx 創建數據庫:create database test_db 列出數據庫:show databases 刪除數據庫:drop database test_db influxdb中無需特地創建表 刪除表:drop measurement test
通過api的方式增加數據 curl -i -XPOST 'http://192.168.149.136:8086/write?db=db01' -u admin:xxxx --data-binary 'table01,host=server01,domain=a.com push=4770136' 說明: db=db01是指使用db01這個數據庫。 -u admin:xxxx 添加認證 --data-binary后面是需插入數據 table01是表名 tag字段是host和domain,值分別為:server01和a.com field字段是push 值是 4770136 tag 和field通過空格分開 其中,db參數必須指定一個數據庫中已經存在的數據庫名,數據體的格式遵從InfluxDB規定格式,首先是表名,后面是tags,然后是field,最后是時間戳。tags、field和時間戳三者之間以空格相分隔。時間戳也可以不指定默認
三、grafana使用
首先需要配置數據源
添加圖表
Templating使用
metric 查詢中,不必硬編碼諸如server, application and sensor name 之類的東西,而是可以在它們的位置使用變量。 變量顯示在dashboard頂部的下拉式選擇框中。這些下拉菜單就可以很容易地改變在你的儀表板顯示的數據。 Query variable 如果你添加的template變量,類型為Query,你可以寫一個InfluxDB(meta data)查詢。這些查詢可以返回諸如measurement 名稱, key 名稱or key 值。 例如,你可以有一個變量包含標簽為hostname的所有值,如果你指定一個查詢在templating variable Query設置。 SHOW TAG VALUES WITH KEY = "hostname" 還可以創建嵌套變量。例如,如果您有另一個變量,例如region。然后,您可以擁有hosts變量,只顯示當前選擇區域中的主機,查詢如下: SHOW TAG VALUES WITH KEY = "hostname" WHERE region =~ /$region/
關鍵字段解釋 Name:變量的名稱,這是您在Metric查詢中引用變量時使用的名稱。必須是唯一的,不包含空白。 Type:定義變量類型 Query:這個變量類型允許您編寫一個數據源查詢,該查詢通常返回一個 metric names, tag values or keys。例如,返回erver names, sensor ids or data centers列表的查詢。 Label:此變量的下拉列表的名稱。 Query options Refresh:控制何時更新變量選項列表(下拉列表中的值)。 On Dashboard Load:會使整個dashboard加載變慢,需要使變量查詢完成,dashboard才初始化。 On Time Range Change:如果變量選項查詢包含time range篩選器或依賴於dashboard time range,則僅將其設置為實時范圍更改。 Query:數據源的查詢表達式。 Regex:Regex to filter or capture specific parts of the names return by your data source query. Optional. Sort:定義下拉列表中選項的排序順序。 Disabled:禁用意味着數據源查詢返回的選項順序將被使用 Selection Options Multi-value:啟用這個功能,變量的值就可以選擇多個,具體表現在變量對應的下拉框中可以選多個值的組合。 Include All option:啟用這個功能,變量下拉框中就多了一個all選項。