centos系統搭建Jmeter+ Grafana + InfluxDB做性能測試監控

服務器環境準備:

1、安裝基礎命令:

wget:yum install wget
vim:yum install vim

2、使用阿里yum源:

進入yum源目錄:cd /etc/yum.repos.d
備份原yum源:mv CentOS-Base.repo CentOS-Base.repo.bak
下載阿里yum源:wget http://mirrors.aliyun.com/repo/Centos-7.repo
重命名阿里yum源:mv Centos-7.repo CentOS-Base.repo

3、yum源更新:

yum clean all
yum makecache
yum update

4、配置selinux爲disabled:

vi /etc/selinux/config,將SELINUX的值配置成disabled
然後重啓機器:reboot
防火牆設置:
將防火牆關閉:systemctl stop firewalld
防火牆開機不啓動:systemctl disable firewalld

5、校準時間:

sudo yum -y install ntp
systemctl start ntpd
systemctl enable ntpd
輸入命令:tzselect,依次選擇5>9>1>1
rm /etc/localtime
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

6、安裝操作:

1.安裝InfluxDB

wget https://dl.influxdata.com/influxdb/releases/influxdb-1.6.3.x86_64.rpm
sudo yum localinstall influxdb-1.6.3.x86_64.rpm

2、安裝完成後,修改InfluxDB的配置,主要配置jmeter存儲的數據庫與端口號

vim /etc/influxdb/influxdb.conf

3、找到graphite並且修改它的庫與端口

enabled = true
database = "jmeter"
retention-policy = ""
bind-address = ":2003"
protocol = "tcp"
consistency-level = "one

4、配置成功後,啓動InfluxDB

啓動命令: systemctl start influxdb.service 
查看狀態命令: systemctl status influxdb.service

5、安裝Grafana

wget https://dl.grafana.com/oss/release/grafana-6.5.2-1.x86_64.rpm
sudo yum localinstall grafana-6.5.2-1.x86_64.rpm

然後啓動即可

啓動命令: systemctl start grafana-server.service  
查看狀態命令: systemctl status grafana-server.service

訪問IP加端口 http://xxx.xx.xx.xx:3000 ,輸入用戶名,密碼登錄系統。用戶名與密碼都是"admin",如果能打開頁面則已經成功了!但是…裝環境這東西怎麼可能這麼簡單??
當你查看狀態是active但是訪問3000時是失敗的話,辣麼有可能就是你的3000端口還未開放!
跟着這篇文章來操作就可以開放3000端口啦

6.Jmeter作爲採集端是通過什麼採集數據的?

Jmeter默認選中的Implementatin是 GraphiteBackendListenerClient ,它是Jmeter 2.13就開始提供了;在Jmeter 3.2時又加多了一個 InfluxDBBackendListenerClient ,哎~這兩者有什麼區別呢?後面會講到! 這裏先講選中 GraphiteBackendListenerClient 時,每個配置項的含義
graphiteHost:InfluxDB安裝的服務器的ip
graphitePort:端口;默認就是2003,除非你自己安裝InfluxDB時設置了其他端口是哦(可見上面安裝InfluxDB後關於graphite的配置)
rootMetricsPrefix:指標的根前綴;將測試結果存入數據庫時,不同指標會生成不同表,但這些表都最好要有一個共同的前綴,這個就是了;後面會講到不同的指標的含義(重點哦)
summaryOnly:當你線程組有多個請求又想知道每個請求的結果數據時,最好填false,因爲true只會返回所有請求的集合數據報告,不會輸出每條請求的數據報告
samplersList:取樣器列表;想收集哪些請求就填哪些,最好用正則去匹配,減輕工作量
useRegexpForSamplersList:是否使用正則;如果true則使用,samplersList裏可以匹配正則表達式
percentiles:百分比;即類似聚合報告裏90% Line,95% Line,99% Line的數據;倘若想要99.9時,需要寫成【99_9】,用下劃線代替點
建議:如果想看每個請求的結果數據的話,根據我的截圖進行配置即可;只需改動samplerList來匹配你需要監控的請求,其他不用

7.InfluxDB配置admin用戶認證登

不管是yum安裝,亦或者是docker安裝的方式,influxdb默認安裝完畢之後,並不會自帶用戶認證的功能,直接就可以進行訪問的了。
情況如下:
root@d248ddfcd76c:/# influx
Connected to http://localhost:8086 version 1.7.9
InfluxDB shell version: 1.7.9

創建admin用戶

基本命令:

# 顯示用戶
SHOW USERS

# 創建用戶
CREATE USER "username" WITH PASSWORD 'password'

# 賦予用戶管理員權限
GRANT ALL PRIVILEGES TO username

# 創建管理員權限的用戶
CREATE USER <username> WITH PASSWORD '<password>' WITH ALL PRIVILEGES

# 修改用戶密碼
SET PASSWORD FOR username = 'password'

# 撤消權限
REVOKE ALL ON mydb FROM username

# 查看權限
SHOW GRANTS FOR username

# 刪除用戶
DROP USER "username"
實際操作如下:

# 查看所有用戶
show users
user admin
---- -----
 

創建一個root用戶,設置密碼爲123456,主要不要使用雙引號" 括起來,不然會報錯

create user “root” with password ‘123456’

再次查看用戶信息,發現admin爲false,說明還要設置一下權限。

show users
user admin
root false

刪除root用戶

drop user root
show users
user admin


重新設置root用戶,並設置帶上所有權限

create user “root” with password ‘newpwd’ with all privileges

發現admin權限爲true了,那麼admin的用戶就創建好了。

show users
user admin
root true

在配置文件啓用認證 默認情況下,influxdb的配置文件是禁用認證策略的,所以需要修改設置一下。
編輯配置文件vim /etc/influxdb/influxdb.conf,把 [http] 下的 auth-enabled 選項設置爲 true 。 這裏使用admin認證用戶登陸訪問一下,格式如下:

influx -username ‘用戶名’ -password ‘密碼’

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