1. 程式人生 > >藉助Docker搭建JMeter+Grafana+Influxdb監控平臺

藉助Docker搭建JMeter+Grafana+Influxdb監控平臺

我們都知道Jmeter提供了原生的結果檢視,既然有原生的檢視結果,為什麼還要多此一舉使用其他工具進行檢視呢,除了檢視內容豐富外還有最主要的原因:
Jmeter提供的檢視結果外掛本身是比較消耗效能的,所以在正式壓測中應當禁用。但是我們又需要在指令碼執行時實時檢視結果,這時就需要藉助外在工具實現。
除此之外,在真實壓測過程中還需要注意Jmeter圖形化模式只適合除錯使用,不要進行壓測。圖形化的壓測方式會消耗較多的客戶端效能,在壓測過程中容易因為客戶端問題導致記憶體溢位。官方也給出了提示通過命令列執行。執行命令:

jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
  • -n 表示在非 GUI 模式下執行 JMeter;
  • -t 表示要執行的 JMeter 測試指令碼檔案,一般是 jmx 結尾的檔案;
  • -l 表示記錄結果的檔案,預設以 jtl 結尾;
  • -e 表示測試完成後生成測試報表;
  • -o 表示指定的生成結果資料夾位置。

實現原理

接下來詳解藉助 docker 使用 InfluxDB 和 Grafana 搭建效能視覺化監控平臺。
InfluxDB概念:InfluxDB是一款用Go語言編寫的開源分散式時序、事件和指標資料庫,無需外部依賴。該資料庫現在主要用於儲存涉及大量的時間戳資料,如DevOps監控資料,APP metrics, loT感測器資料和實時分析資料。

InfluxDB概念特點:

  • 無結構(無模式):可以是任意數量的列;
  • 可以設定metric的儲存時間;
  • 支援與時間有關的相關函式(如min、max、sum、count、mean、median等),方便統計;
  • 支援儲存策略:可以用於資料的刪改。(influxDB沒有提供資料的刪除與修改方法);
  • 支援連續查詢:是資料庫中自動定時啟動的一組語句,和儲存策略搭配可以降低InfluxDB的系統佔用量;
  • 原生的HTTP支援,內建HTTP API;
  • 支援類似sql語法;
  • 支援設定資料在叢集中的副本數;
  • 支援定期取樣資料,寫入另外的measurement,方便分粒度儲存資料。

Grafana概念:一個開源軟體,擁有豐富的指標儀表盤和圖形編輯器,適用Graphite, Elasticsearch, OpenTSDB, Prometheus,InfluxDB。簡單點說就是一套開源WEB視覺化平臺。

JMeter引入Backend Listener將在壓測過程中實時傳送統計指標資料傳送到Influxdb資料庫,Grafana(開源的WEB視覺化看板)資料來源連線到Influxdb,建立視覺化看板,並實時獲取到測試指標資料。

安裝InfluxDB

docker 下進行安裝
拉取influxdb映象:docker pull influxdb
執行influxdb容器:docker run --name my_influxdb -p 8086:8086 influxdb

進入容器:docker exec -it 容器id /bin/bash

建立資料庫 jmeter

influx
show databases;
create database jmeter;
show databases;
use jmeter;
select * from jmeter;
exit;

安裝Grafana

拉取grafana映象:docker pull grafana/grafana

執行容器:docker run --name my_grafana -p 3000:3000 grafana/grafana

訪問grafana:http://ip:3000

使用者名稱與密碼都是"admin"

 

進入後新增資料庫

 

 

 

進入後對資料庫進行配置

 

儲存並且測試

 

配置展示模板

模板比較豐富,可以預覽進行檢視,選擇合適的進行下載
下載地址:https://grafana.com/grafana/dashboards

 

 

 

下載json檔案

準備匯入

將下載下來的json檔案匯入之後即可。

設定完成後進入面板

在此可設定重新整理頻率

 

配置Jmeter

建立Jmeter指令碼。

設定後端監聽器

執行指令碼後可檢視結果

相關推薦

藉助Docker搭建JMeter+Grafana+Influxdb監控平臺

我們都知道Jmeter提供了原生的結果檢視,既然有原生的檢視結果,為什麼還要多此一舉使用其他工具進行檢視呢,除了檢視內容豐富外還有最主要的原因:Jmeter提供的檢視結果外掛本身是比較消耗效能的,所以在正式壓測中應當禁用。但是我們又需要在指令碼執行時實時檢視結果,這時就需要藉助外在工具實現。除此之外,在真實壓

搭建Jmeter + Grafana + InfluxDB效能測試監控環境

背景 Jmeter原生的實時監控每半分鐘收集一次資料,只能在Linux控制檯檢視日誌輸出,介面看起來不直觀,圖表報告只能等壓測結束後才能生成。如下圖為jmeter在Linux下執行的實時日誌:     那麼如何在壓測過程中實時生成圖表監控資料呢?這裡介紹一種實現方案:搭建Jmete

Spring Boot Actutaur + Telegraf + InFluxDB + Grafana 構建監控平臺

nts ade 端口 windows sed pan nes 程序 依賴項 完成一套精準,漂亮圖形化監控系統從這裏開始第一步 Telegraf是收集和報告指標和數據的代理   它是TICK堆棧的一部分,是一個用於收集和報告指標的插件驅動的服務器代理。Telegraf擁

InfluxDBGrafana資料監控平臺結合使用

InfluxDB 儲存資料的時候可以將多個欄位的值一起存進去,需要時再按需獲取就可以了,不需要多次分表儲存。結合 Grafana來監控我們的歷史統計資料。 目錄 InfluxDB儲存資料 Docker 執行命令 建立資料模型 Grafana使用 登入訪問 匿名訪問

【乾貨】Jmeter + Grafana + InfluxDB 效能測試監控

序章 前幾天在群裡看到大神們在討論Jmeter + InfluxDB + Grafana監控。說起來Jmeter原生的監控確實太醜了。當年不斷安慰自己說“醜一點沒關係,只要能用,好用,就行了!”。但是內心並不是這樣,做為一名測試人員,都有一顆精益求精的心。看到有東西可以替代那原生的監控資料,果斷

利用Metrics+influxdb+grafana構建監控平臺

上一篇利用Metrics搭建了一個簡易的JVM實時監控工具。 這裡再配合Influxdb和Grafana可以構建一個非常漂亮的實時監控介面。 Grafana監控介面 採集資料(Metrics)-> 儲存資料(InfluxDB) -> 顯示資料(Grafana

Jmeter + Grafana + InfluxDB 效能測試監控

閱讀目錄 序章         前幾天在群裡看到大神們在討論Jmeter + InfluxDB + Grafana監控。說起來Jmeter原生的監控確實太醜了。當年不斷安慰自己說“醜一點沒關係,只要能用,好用,就行了!”。但是內心並不是這樣,做為一名測試人員,都有一顆精益求精的心。看到有東西可以替代那原生

基於Prometheus和Grafana監控平臺 - 環境搭建

相關概念 微服務中的監控分根據作用領域分為三大類,Logging,Tracing,Metrics。 Logging - 用於記錄離散的事件。例如,應用程式的除錯資訊或錯誤資訊。它是我們診斷問題的依據。比如我們說的ELK就是基於Logging。 Metrics - 用於記錄可聚合的資料。例如,佇列的當前深度可

Centos7.X 搭建Prometheus+node_exporter+Grafana實時監控平臺

Prometheus簡介 什麼是 Prometheus Prometheus是一個開源監控報警系統和時序列資料庫   主要功能 多維資料模型(時序由 metric 名字和 k/v 的 labels 構成) 靈活的查詢語句(PromQL) 無依賴儲存,支援 local 和 remote 不同模型 採

搭建大眾點評CAT監控平臺

ase 更新 java report org 集群模式 配置文件 功能 mes AT(Central Application Tracking)是基於Java開發的實時應用監控平臺,包括實時應用監控,業務監控。關於CAT的具體介紹可移步到CAT官網進行查閱。 環境清單C

基於docker搭建sonar程式碼質量檢測平臺

最近有點忙,好久不寫博文了,今天聽一個同事說之前他們的程式碼review都是人工來弄的,這多累,於是我趕緊搭建一個sonar程式碼質量檢測平臺給大家用用 docker環境搭建什麼的就不說了。網上很多,直接上核心命令 第一條是docker 執行一個pgsql 第二條是docker 執行一個sonar

基於Prometheus和Grafana監控平臺 - 運維告警

通過前面幾篇文章我們搭建好了監控環境並且監控了伺服器、資料庫、應用,運維人員可以實時瞭解當前被監控物件的執行情況,但是他們不可能時時坐在電腦邊上盯著DashBoard,這就需要一個告警功能,當伺服器或應用指標異常時傳送告警,通過郵件或者簡訊的形式告訴運維人員及時處理。 今天我們就來聊聊 基於Prometheu

Docker+Jmeter+InfluxDB+Grafana搭建效能測試監控平臺

搭建需求? jmeter自身的聚合測試報告視覺化效果極差,為更加形象的、動態的展示測試過程,需要一個具有時序性的可視區來展示給我們的測試者, 這時候就需要用到後端監控,下面我們來開始搭建符合這種測試需求的測試平臺 此次測試平臺基於阿里雲進行搭建,具體的環境讀者可自行選擇,例如centos或者readhat &

jmeter+influxdb+grafana搭建壓測監控平臺

文將介紹如何使用Jmeter+influxDB+Grafana搭建壓測視覺化實時監控痛點在使用jmeter做效能測試的時候,監控系統性能的時候,無論是使用外掛還是報告生成,都比較麻煩,比如監控服務的tps資訊   為了能夠及時看到實時,並且比較美觀的圖表,我們可以通過jmeter的Abstrac

搭建telegraf、influxdbgrafana監控平臺監控docker容器

安裝influxdb influxdb是一個時序資料庫,非常適合用來記錄監控資訊。 拉取映象 docker pull tutum/influxdb 啟動映象 docker run -d -p 8083:8083 -p 8086:808

全網最詳細!Centos7.X 搭建Grafana+Jmeter+Influxdb 效能實時監控平臺

背景 日常工作中,經常會用到Jmeter去壓測,畢竟LR還要錢(@¥&*...),而最常用的介面壓力測試,我們都是通過聚合報告去檢視壓測結果的,然鵝聚合報告的真的是醜到家了,作為程式猿這當然不能忍!那我們要怎麼給它變得好看點捏?   如何華麗變身? 方式 優點 缺點 場景

collectd+influxDB+grafana搭建性能監控平臺

直接 sudo 根據 tar 時間 dmi 客戶端 Go ID collectd+influxDB+grafana搭建性能監控平臺 前言 InfluxDB 是 Go 語言開發的一個開源分布式時序數據庫,非常適合存儲指標、事件、分析等數據;鍵值時間數據庫性能還不錯 c

效能測試監控平臺InfluxDB+Grafana+Jmeter linux環境執行jmeter並生成報告 時序資料庫InfluxDB:簡介及安裝 視覺化工具Grafana:簡介及安裝

前面的部落格介紹了InfluxDB、Telegraf、Grafana的安裝和使用方法,這篇部落格,介紹下如何利用這些開源工具搭建效能測試監控平臺。。。   前言 效能測試工具jmeter自帶的監視器對效能測試結果的實時展示,在Windows系統下的GUI模式執行,渲染和效果不是太好,在linu

influxdb+grafana搭建業務監控平臺前篇-相關環境搭建

引言 在介紹具體的業務監控搭建之前還是現在介紹介紹influxdb和grafana。 時間序列資料庫 在開始介紹Influxdb之前先簡要介紹一下時間序列資料庫。 何謂時間序列資料庫? 什麼是時間序列資料庫,最簡單的定義就是資料格式裡包含Timestamp欄位的資料,比

【轉】jmeter+influxdb+grafana 實時監控搭建筆記

轉發:https://blog.csdn.net/zuozewei/article/details/82911173 借鑑:ht