linux环境下jmeter分布式压测环境部署

1.jdk和jmeter环境搭建

2.分布式原理


注意:

1.master机和slave机必须在同一个网段

2.jdk必须相同

3.jmeter版本最好一致

4.插件最好一致

3.所有执行机slave配置

(1)进入jmeter的bin目录,修改jmeter-server文件,指定主机ip,及端口号

备注:如果时windows环境,修改jmeter-server.bat

RMI_HOST_DEF=-Djava.rmi.server.hostname=10.4.65.152

${DIRNAME}/jmeter ${RMI_HOST_DEF} -Dserver_port=${SERVER_PORT:-1099} -s -j jmeter-server.log "$@"

server_port=1099

server.rmi.localport=1099 


(2)jmeter.properties配置文件中server.rmi.ssl.disable=true改为true


(3)./jmeter-server启动负载机,出现如下界面,证明启动成功 


(4)如果脚本中调用了参数文件,或者其它上传图片等,都需要将文件放到slave节点bin目录下

        --或者在bin目录下,创建data文件夹,将参数文件放在data目录中。相对路径写成../data/username.xls

        --脚本不需要拷贝

4.调度机(master)配置

(1)编写脚本

(2)找到Jmeter的bin目录下jmeter.properties文件,修改如下配置,IP和Port是slave机的IP以及自定义的端口

        --多台slave之前用","隔开


(3)jmeter.properties配置文件中server.rmi.ssl.disable=true改为true


(4)打开Jmeter,选择运行,有启动、远程启动、远程全部启动三个选项:

        启动:就是启动当前master(调度机),把调度机当负载机单独执行

        远程启动:可以选择执行需要的负载机

        远程全部启动:顾名思义,就是启动所有的负载机

5.调度机(master)使用命令执行分布式测试

jmeter -n -t strRemote_API.jmx -R 10.4.65.111 -l strRemote_API.jtl -e -o output

jmeter -n -t strRemote_API_test_clientB.jmx -r -l strRemote_API_test_clientB.jtl -e -o output


6.其他

(1)报错


因为远程服务没有启动。 你在10.50.1.101 jmeter/bin下面执行./jmeter-server. 提示:Created remote object 。然后重启客户端的jmeter。就可以远程启动了

(2)远程连接无响应,总是失败

因为master和slave必须在同一个网段下。

参考:https://www.bbsmax.com/A/gVdnlrwlJW/

(3)调度机(master)和执行机(slave)最好分开,由于master需要发送信息给slave并且会接收slave回传回来的测试数据,所以mater自身会有消耗,所以建议单独用一台机器作为mater

(4)执行机(slave)设置的端口,首先要保证未被占用,可以使用该命令进行查询,netstat -anp|grep 端口,

查询有值,则代表该端口已经被占用,需要换一个端口

(5)执行结果为空


slave机中,参数文件的位置放错了。创建data文件夹,与bin同一级目录,用于存放参数文件。

补充:master机中,创建scripts文件夹,与bin同一级目录,用户存放脚本。

            master机中,创建data文件夹,与bin同一级目录,用于存放参数文件。

你可能感兴趣的:(linux环境下jmeter分布式压测环境部署)