jmeter分布式master、slave配置
master:centos7 ip 192.168.80.150
2台slave:centos7 ip 192.168.80.152 192.168.80.153
Jenkins:centos7 ip 192.168.80.150
步骤一:Master配置(ip 192.168.80.150)
1.vim jmeter.properties
server.rmi.ssl.disable=true
remote_hosts=192.168.80.152:1099
步骤二:配置slave1(ip 192.168.80.152)
1.vim jmeter.properties
server.rmi.ssl.disable=true
server_port=1099 server.rmi.localport=1099
2.运行jmeter
./jmeter-server -Djava.rmi.server.hostname=192.168.80.152
步骤三:master调用slav1
# jmeter -n -t
/usr/local/apache-jmeter-5.1.1/bin/13lesson0302.jmx -l
/opt/test.jtl -R 192.168.80.152:1099
步骤四:加入slave2(ip 192.168.80.153)
1.Master vim jmeter.properties
2.尝试master调用slave2,确保没问题
步骤五:master一起调用slav1和slave2
# jmeter -n -t
/usr/local/apache-jmeter-5.1.1/bin/13lesson0302.jmx -l
/opt/test.jtl -R 192.168.80.153:1099,192.168.80.152
# cat test.jtl
问题集合:
1.没有到主机的路由 (Host unreachable),注意master和slave的防火墙都要关闭
2.master调用slave时:
Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
可能一:防火墙开着
可能二:关闭监听功能
vim jmeter.properties
#jmeterengine.nongui.maxport=4455 修改为
jmeterengine.nongui.maxport=0
可能三:在日志中寻找
在slave节点上查看日志jmeter-server.log
Jmeter非GUI运行参数:
-n: 表示 non gui mode,就是非图形化模式
-t: 即testplan,后跟要运行的jmeter脚本的路径和脚本名称。
若指定路径下没有指定名称的脚本,则自动创建。
若没有路径只写脚本名称,则默认是在当前目录查找或创建。
-l: 后跟输出结果文件路径和结果文件名称。
若指定路径下没有指定名称的脚本,则自动创建,可以生成csv或 者jtl文件。
若只写脚本名称,则默认是在当前目录查找或创建。 -e:测试结 束后,生成测试报告
-o:指定测试报告的存放位置,指定的文件及文件夹,必须不存在 ,否 则执行会失败
-r/R: 远程执行 -> 启动远程服务,即分布式执行多台压力机
-H 代理主机 -> 设置 JMeter 使用的代理主机
-P 代理端口 -> 设置 JMeter 使用的代理主机的端口号