【轉載+實踐】實戰 | Docker+Jmeter+InfluxDB+Grafana 搭建性能監控平臺

原文鏈接,最終解釋權歸原作者所有


【寫在前面的話】
因爲個人的性能測試經驗還不是很多,所以現在也在不斷的學習和實踐性能測試相關的一些技能。

【性能監控平臺部署實踐如下】

找一臺支持運行docker的linux機器:

1、先啓動dockerd服務
[root@zhaopintest3 ~]# service docker start

2、然後開始下載一些鏡像(爲什麼下載這些鏡像詳見原文)
[root@zhaopintest3 ~]# docker pull influxdb
可能需要等一會
[root@zhaopintest3 ~]# docker pull grafana/grafana
可能需要等一會

3、完成後創建相關容器(注意端口可能被佔用的情況)
[root@zhaopintest3 ~]# docker run -d --name jmeter-influx -p 8083:8083 -p 8086:8086 influxdb
[root@zhaopintest3 ~]# docker run -d --name grafana -p 3000:3000 grafana/grafana
[root@zhaopintest3 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9a5eaa675a08 grafana/grafana “/run.sh” 24 minutes ago Up 24 minutes 0.0.0.0:3000->3000/tcp grafana
9a0b4ad14100 influxdb “/entrypoint.sh infl…” 41 minutes ago Up 41 minutes 0.0.0.0:8083->8083/tcp, 0.0.0.0:8086->8086/tcp jmeter-influx

4、進入容器內部,創建名爲jmeter的數據庫

[root@zhaopintest3 ~]# docker exec -it jmeter-influx bash
root@9a0b4ad14100:/# influx
Connected to http://localhost:8086 version 1.7.10
InfluxDB shell version: 1.7.10
> create database jmeter
> show databases
name: databases
name
----
_internal
jmeter
> use jmeter
Using database jmeter
> select * from jmeter
>           #空,正常的。暫時沒數據。

5、Jmeter腳本設置
如下圖所示設置即可,當然你得自己先寫個jmx腳本。在這裏插入圖片描述
然後設置後端監聽器,選擇influxdb相關,且注意修改host和application name(自定義即可,後面grafan對應選擇這個自定義的name即可)
在這裏插入圖片描述
6、運行Jmeter腳本,然後再次在influxdb中查看數據

> use jmeter
Using database jmeter
> select * from jmeter
> xxxxxxxxxxxxx(數據略)

7、Grafana登錄並部署
http://10.xxx.xx.xxx:3000/
默認是登錄頁面需要輸入用戶名和密碼,默認是admin/admin。然後讓你設置新密碼,比如:123456。然後進入主界面:
相關設置查看原文即可。進入dashboard主界面,如下:點擊自己創建的進入
在這裏插入圖片描述
可以看到看板目前是沒有數據的
在這裏插入圖片描述
咱們啓動jmeter來看看效果
在這裏插入圖片描述
可以看到數據了,注意可以設置右上角的自動刷新,比如:5s
在這裏插入圖片描述
在這裏插入圖片描述
8、這個實踐就到這裏了。
雖然比原生的查看起來方便了,但是還是依賴開源的第三方系統,後期想做二次開發或自定義一些功能,還是不好擴展。

todo:
基於jmeter的源碼結合一些開源框架二次開發封裝+前端頁面化,應該是不錯的選擇。當然github上有些大牛已經做了一些類似的工具或平臺,後面借鑑大牛們的框架實踐一下,並開始二次開發之路,以迎合自身所在業務的性能測試需求。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章