单机环境搭建
这里以在Windows 10(64bit)上安装最新的JMeter5.1.1版本为例进行讲解。
安装步骤如下:
1、安装JDK 11(Oracle JDK 11学习用途无妨)
安装路径默认为C:/Program Files/Java/jdk-11.0.3
2、配置JDK 11环境变量
2.1、新建环境变量JAVA_HOME,将其值设置为:
C:/Program Files/Java/jdk-11.0.3
2.2、修改环境变量Path,在其值后追加如下内容:
;%JAVA_HOME%/bin
2.3、测试JDK 11
分别运行java,javac,java -version命令
若前两个命令显示了命令的语法信息,最后一个命令显示了JDK 11的版本信息,则表明JDK安装成功。
3、安装JMeter5.1.1
将apache-jmeter-5.1.1.zip解压缩到任意目录即可,比如:D:/Program Files/apache-jmeter-5.1.1
4、启动JMeter5.1.1(GUI模式)
到解压缩目录下的bin子目录中,找到jmeter.bat,双击启动即可。
分布式环境搭建
程序清单
1、jdk-8u212-linux-i586.tar.gz (JDK8 32bit)
2、apache-jmeter-5.1.1.zip (JMeter Master与Slave安装包相同)
服务器列表
这里以Master控制2台Slave为例介绍部署过程。服务器信息如下表所示:
操作步骤
1、部署并配置多台Slave;
2、部署并配置Master;
3、GUI方式启动Master测试验证。
一、部署并配置多台Slave
Slave1部署详细步骤:
1.安装JDK8
[root@localhost ~]# mkdir -p /usr/local/java
[root@localhost ~]# tar -zxvf jdk-8u212-linuxi586.
tar.gz -C /usr/local/java
2.配置JDK环境变量
[root@localhost ~]# vi /etc/profile
在文件末尾加入如下内容:
export JAVA_HOME=/usr/local/java/jdk1.8.0_212
export PATH=$JAVA_HOME/bin:$PATH
3.安装Slave
[root@localhost ~]# mkdir -p /usr/local/jmeter
[root@localhost ~]# unzip apache-jmeter-5.1.1.zip
-d /usr/local/jmeter
4.配置Slave
在JMeter的安装目录中找到 bin/jmeter.properties这个配置文件,编辑:
server_port=1099 #默认端口为1099,可以改为其他端口
server.rmi.ssl.disable=true #取消注释,并将false改为true
5.启动jmeter-server
[root@localhost ~]# cd /usr/local/jmeter/apachejmeter-5.1.1/bin/
[root@localhost bin]# nohup ./jmeter-server –
Djava.rmi.server.hostname=192.168.126.129 &
#多个网卡需要指定IP地址
Slave2部署与Slave1相同,重复这个过程即可。
(后台启动时需要指定Djava.rmi.server.hostname=192.168.126.130)
二、部署并配置Master
1.安装JDK8
2.配置JDK8环境变量
3.安装Master
上面步骤与单机环境相同,不再细说.
4.配置Master
在jmeter的安装目录中找到 bin/jmeter.properties这个配置文件,编辑:
将:
remote_hosts=127.0.0.1
这一行做如下修改:
remote_hosts=192.168.126.129:1099,192.168.126.130:1099
#注意:Slave的IP与save_port用:连接,多个键值对之间用,分隔
server.rmi.ssl.disable=true #取消注释,并将false改为true
5.启动Master
到解压缩目录下的apache-jmeter-5.1.1/bin,找到
jmeter.bat,双击启动。
三. GUI方式启动Master测试验证
以GUI方式启动Master,菜单Run–>Remote Start中可以看到配置
的远程Slave信息,如下图所示:
注意事项
1.Master与各Slave使用的Java版本保持一致;
2.Master与各Slave使用的JMeter版本保持一致;
3.若测试计划中引用了某插件,则Master与各Slave都要包含该插件;
4.测试计划只需要放在Master上,执行时会自动分发到各Slave,不需要每台Slave复制一份;
5.若测试计划中引用到了参数化文件,需要将参数化文件复制到各台Slave上,并且存放的目录路径需要保持一致;
6.分布式执行的线程数=假定单机部署执行的线程数*Slave数。比如单机部署时运行50个线程,
先以分布式运行,有4台Slave,则总共执行的线程数为:50*4=200。
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/tech/opensource/191075.html