Linux部署jmeter压测集群

495 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

我们在使用jemeter压测的时候一般一台服务器即可,但是有时候需要的并发量比较大,一个服务器的资源不足以支持,此时就需要多台机器组成集群共同负载。下面

jmeter分布式压力测试分为两种角色,一种是负责执行脚本为client,一种是向被测服务器发请求的机器为server。

注意:server端和client端服务器之间网络要互通

1.准备

准备3台Linux服务器,分别为client和server1(10.10.10.1)、server2(10.10.10.2)

注意:如果想在设置多个节点,只需要扩充server端即可

2.分别在3台机器下解压安装jmeter

jemeter安装比较简单只需要下载安装包,然后解压即可

3.编辑在client服务器的bin/jmeter.properties文件

vim  bin/jmeter.properties

在remote_hosts配置上server端的ip,多个地址用逗号分隔

remote_hosts=10.10.10.1,10.10.10.2

4.分别启动在server端的jmeter服务

在bin目录下执行

./jmeter-server -Djava.rmi.server.hostname=10.10.10.1

./jmeter-server -Djava.rmi.server.hostname=10.10.10.2

5.启动client端上的jmeter服务

./jmeter  -n -t login_140.jmx -r  -l login_140.jtl -e -o login_140

Jmeter启动参数:

-n:非GUI模式执行jmeter

-t:执行测试脚本所在的位置及文件名,如果执行脚本放到的bin目录下,执行上面命令即可,如果压测脚本放到其他路径,需要写对应的路径,我们可以在自己电脑上先把压测脚本调试好后在上传到服务器执行。

-r:启动remote_hosts配置的所有server端服务,如果只是单节点的话就不需要执行-r

-e测试结束后生成测试报告

-o:指定测试报告的存放位置,不能重复,否则会执行失败,生成的是一个文件夹,我们可以吧这个文件夹导出到本地查看测试报告

6.启动的时候报错

Exception creating connection to: xxxxxx; nested exception is:

   java.io.FileNotFoundException: rmi_keystore.jks (No such file or directory)

Failed to configure xxxxxx

Configuring remote engine: xxxxx

Exception creating connection to:xxxxx; nested exception is:

   java.io.FileNotFoundException: rmi_keystore.jks (No such file or directory)

Failed to configure xxxxxx

image.png

修改 jmeter.properties文件

vim  jmeter.properties

将server.rmi.ssl.disable设置为true即可

server.rmi.ssl.disable=true