[linux] 用influxDB & Grafana & Telegraf & Jmeter搭建服務監控平臺

主要內容:

    1、安裝Grafanahtml

    2、安裝Telegragit

    3、安裝InfluxDBgithub

    4、配置儀表盤docker

    5、使用Jmeter數據庫

 

1、安裝InfluxDB

 1.1. 在docker官方鏡像中找到influxdb(https://hub.docker.com/_/influxdb),根據安裝提示安裝:apache

docker run -d -p 8086:8086 --name=influxdb influxdb

 

 1.2. 安裝完成後,經過api查詢服務是否安裝成功並啓動:ubuntu

curl -G http://localhost:8086/query --data-urlencode "q=show databases"

 

 1.3. 打開8086防火牆端口,否則以後grafana在配置數據源的時候會訪問不到influxdb:vim

systemctl start firewalld.service --啓動防火牆
firewall-cmd --zone=public --add-port=8086/tcp --permanent
systemctl restart firewalld.service --啓動防火牆

 

 

2、安裝Telegraf

 2.1. 在github中找到telegraf的wget的安裝包,下載並安裝:api

yum install wget
wget
https://dl.influxdata.com/telegraf/nightlies/telegraf-nightly.x86_64.rpm
yum localinstall telegraf-nightly.x86_64.rpm

 

 2.2. 修改teltgraf配置,爲其配置訪問路徑及默認數據庫服務器

vi /etc/telegraf/telegraf.conf

 

  2.3. 重啓telegraf,並查看服務啓動狀態:

systemctl start telegraf
systemctl status telegraf

 

  2.4. 進入influxdb容器,查看是否存在telegraf數據庫,若是telegraf數據庫不存在,則說明tetegraf服務沒有正常啓動,則能夠經過查看啓動狀態中的報錯信息來定位問題

docker exec -it influxdb /bin/sh
influx
show databases

 

 

3、安裝Grafana

 3.1. 在docker官方鏡像中找到grafana(https://hub.docker.com/r/grafana/grafana),根據安裝提示安裝:

docker run -d -p 3000:3000 --name=grafana grafana/grafana

 

 3.2. 在虛擬機外訪問grafana(默認賬號和密碼都是:admin):

 

 

 3.3. 登陸後先要修改密碼後,進入主頁,接下來要添加數據源展現數據的儀表盤

 

 3.4. 選擇上圖中的Add data source後,進入添加數據源頁面,選擇InfluxDB:

 

 3.5. 更改下圖中紅框的配置,來鏈接influxdb容器內的數據庫telegraf:

 

 

4、配置儀表盤

 4.1. 添加完數據源後,返回首頁,選擇New dashboard

 

 4.2. 選擇可視化界面編輯:

 

 

 4.3. 選擇添加查詢,更改數據庫和查詢語句,經過相似的方式,能夠製做出須要展現數據的儀表盤:

 

 

 

5、使用Jmeter進行壓力測試,並將結果展現在儀表盤中

 5.1. 在influxdb中添加jmeter數據庫:

docker exec -it influxdb /bin/sh
influx
show databases
create database "jmeter"

 

 5.2. 爲了將jmeter的壓測數據導入到influxdb中,須要先更改配置。因爲influxdb的docker中沒有vim工具,則須要先進行安裝:

apt update
apt install vim

安裝完成後,在influxdb的配置中增長graphite,使得數據能夠錄入influxdb的數據庫中:

// 打開配置文件
vi /etc/influxdb/influxdb.conf
// 增長以下配置
[[graphite]]
  enabled = true
  database = "jmeter"
  bind-address = ":2003"
  protocol = "tcp"
  consistency-level = "one"

 在容器中重啓influxdb服務:

influxd -config /etc/influxdb/influxdb.conf

 

  5.3. 在jmeter中增長Backend Listener: 

 

選擇graphite的監聽方式,並更改監聽端口和監聽數據的正則匹配規則:

 添加HTTP請求,啓動執行,同時查看數據是否能夠正常錄入到influxdb中:

進入influxdb容器查看jmeter數據庫中是否產生數據:

docker exec -it influxdb /bin/sh
influx
show measurements

 

  5.4. 在grafana中新增influxdb的數據源,且數據庫選擇jmeter:

 

 

   5.5. 製做jmeter數據的儀表盤,本次選擇使用模版(https://grafana.com/dashboards): 

選擇想要的模版,複製模版id:

 

在grafana中的添加dashboard中,選擇import:

 

 在導入界面填入模版id,點擊其它地方,會自動加載模版信息,並進入模版信息確認頁面:

在此處選擇數據庫的名字,並點擊導入:

在這個dashboard中就會顯示剛纔執行的jmeter的監控結果:

 

 

參考:

docker influxdb:https://hub.docker.com/_/influxdb

docker grafana:https://hub.docker.com/r/grafana/grafana

docker telegraf:https://hub.docker.com/_/telegraf

influx相關官方文檔:https://docs.influxdata.com/

influx2.0相關官方文檔:https://v2.docs.influxdata.com/v2.0/get-started/

influxdata_telegraf相關文檔(包含下載):https://github.com/influxdata/telegraf

grafana Dashboards:https://grafana.com/dashboards

jmeter BackendListener:https://jmeter.apache.org/usermanual/component_reference.html#Backend_Listener

 

Telegraf+InfluxDB+Grafana搭建服務器監控平臺:https://blog.csdn.net/w958660278/article/details/80484486

Jmeter + Grafana + InfluxDB 性能測試監控:https://www.cnblogs.com/yyhh/p/5990228.html

性能工具之JMeter+InfluxDB+Grafana打造壓測可視化實時監控:https://blog.csdn.net/zuozewei/article/details/82911173#InfluxDB_101

influxdb學習記錄:https://blog.csdn.net/sunsloth/article/details/82260174

Linux tar包安裝步驟:https://blog.csdn.net/dwj1250254648/article/details/77696676

解決docker,ubuntu鏡像中沒有vi/vim:https://www.cnblogs.com/yeleia/p/9192600.html

相關文章
相關標籤/搜索