jmeter分布式

jmeter4.0 JDK 1.8 win10 wsl-ubuntu
主机:windows
1、配置从机IP端口,逗号间隔
remote_hosts=192.168.5.95:1099,192.168.5.103:1099 
2、设定启动端口
server_port=1099
server.rm.localport =1099
3、关闭ssl功能
server.rmi.ssl.disable=true
二、启动Jmeter

从机(linux)
一、配置文件 jmeter.properties
1、设定启动端口
server_port=1099
server.rm.localport =1099
2、关闭ssl功能
server.rmi.ssl.disable=true
二、jmeter-server.bat文件修改(此步骤貌似没啥用,感觉给win的,反正我配置了)
REM START (此处绝对路径,从根目录到自己jmeter)/jmeter/bin/rmiregistry %SERVER_PORT%
三、jmeter环境变量(貌似也没啥用)
1、编辑profile全局文件 
vi /etc/profile
2、配置修改
//自己的安装路径
JMETER=/*****/apache-jmeter-4.0
//jar包引入
CLASSPATH= C L A S S P A T H : CLASSPATH: CLASSPATH:JMETER/lib/ext/
.jar: J M E T E R / l i b / ∗ . j a r / / 放 入 全 局 P A T H = JMETER/lib/*.jar //放入全局 PATH= JMETER/lib/.jar//PATH=PATH:$JMETER/bin
3、生效配置
source /etc/profile
四、启动服务器 bin/jmeter-server
./jmeter-server -Djava.rmi.server.hostname=192.168.56.1(当前机器IP)

主机(为linux时候,命令启动)
 jmeter -n -t testplan/comic.jmx -R 10.48.194.19 -l testResult/result1.jtl执行脚本并生成聚合报告
-n表示以nogui方式运行测试计划
-t表示测试计划,后面跟测试计划名称
-l表示测试结果,后面跟测试结果文件名称
-R  后面跟随负载机的ip地址 ,注意用逗号隔开

备注:
从机启动参数Demo (这东西要压入后台 & 或者自启动)
/bin/sh ./jmeter-server -Djava.rmi.server.hostname=192.168.237.129
/bin/sh ./jmeter -Dserver_port=1099 -s -j jmeter-server.log -Djava.rmi.server.hostname=192.168.237.129

rmi-key 通信加密key(没试过,我的机器都是内网。这东东走ssl 服务的,估计和免密登录同种玩法)
1、双击create-rmi-keystore.bat
2、生成的rmi_keystore.jks
3、复制到每台机器的jmeter/bin目录下去
4、警告使用key,需要注释掉  server.rmi.ssl.disable=true

防火墙问题
Redhat 系列(centos fedora ) 
    firewall-cmd  --add-port=1099/tcp --permanent #在永久开放1099端口
    firewall-cmd --reload #重新加载配置
    firewall-cmd --list-all #查看列表
debian系列(ubuntu ……) 
    ufw allow1099/tcp

注意:
1、关闭防火墙,开发端口
2、所有主机最好在同一个子网上,要与办公环境隔离起来
3、一定要用内网ip,不用用公网ip,用ping检查
4、确保所有版本系统上使用相同版本的jdk和jmeter
可使用下面的命令,远程拷贝,确保所有机器的软件包相同
远程拷贝命令(内网地址):
scp-r/usr/local/software/[email protected]:/usr/local/software
scp-r/usr/local/software/jmeter/[email protected]:/usr/local/software/jmeter
jmeter分布式压测原理:
1、总控机器的节点master,其他产生压力的叫server
2、master会把压测脚本发送到server上
3、执行的时候,server只需把jmeter-server打开即可,不用启动jemter
4、结束后,server会把压测数据回传给master,然后master汇总输出报告
三、压测步骤
1、在master和slaves机器上分别按照相同版本的jdk和jmeter
2、在master机器上
1)修改配置文件,进入jmeter/bin目录下
vimjmeter.properties

如果master即作为master也作为slaves

2)启动jmeter服务
./jmeter-server(linux)
jmeter-server.bat(windows)
3)检查是否启动成功
ps -ef|grep jmeter-server
3、在slaves机器上
1)修改配置文件,进入jmeter/bin目录下
vim jmeter.properties

2)启动jmeter服务
./jmeter-server(linux)
jmeter-server.bat(windows)
3)检查是否启动成功
ps -ef|grep jmeter-server
4、分布式执行
GUI模式 :运行——》远程启动、远程启动全部
non-GUO模式:命令行增加-r参数
jmeter -n -t /Users/jack/Desktop/remote.jmx -r -l /Users/jack/Desktop/jtl/result.jtl -e -o /Users/jack/Desktop/result

你可能感兴趣的:(jmeter分布式,分布式)