1、软硬件配置
压测是通过在几台服务器上面安装jmeter作为Slave,自己本地的电脑作为Master进行的。当前具有如下几台服务器:
- 172.20.4.50;
- 172.20.4.52;
- 172.20.4.53;
1.1、软件配置
需要安装的软件:
- jdk1.8.0_121,因为jmeter是java开发的,所以需要jdk环境的支持;
- apache-jmeter-3.2;
1.2、硬件配置
由于压测需要大数量的线程对服务器进行模拟请求访问,所以对服务器的CPU和内存依赖很大。
| 服务器ip | 内存容量(G) | CPU信息 |
|---|---|---|
| 172.20.4.50 | 15 | Intel(R) Xeon(R) CPU E5506 @ 2.13GHz(八核) |
| 172.20.4.52 | 15 | Intel(R) Xeon(R) CPU E5506 @ 2.13GHz(八核) |
| 172.20.4.53 | 15 | Intel(R) Xeon(R) CPU E5506 @ 2.13GHz(八核) |
2、软件安装
2.1、JDK
安装步骤如下:
- 将下载好的包上传到服务器(公司内网限制,不可直接下载),解压到/usr/local/java/目录;
- 修改/etc/profile文件,在末尾添加如下内容:
JAVA\_HOME=/usr/local/java/jdk1.8.0_121
PATH=$JAVA\_HOME/bin/:$PATH
CLASSPATH=.:$JAVA\_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
- 启用配置,执行命令:
source /etc/profile
- 执行 java -version 命令验证是否安装成功。
2.2、jmeter
安装步骤如下:
- 下载安装包,解压到/usr/local/jmeter/目录;
- 修改其bin/jmeter.properties文件内容中的,server.rmi.localport=1099,确保每次启动rmi的接口是固定的,方便使用;
- 修改/etc/profile文件,在末尾添加如下内容:
xport PATH=/usr/local/jmeter/apache-jmeter-3.2/bin/:$PATH
- 启用配置,执行命令:
source /etc/profile
- 执行 jmeter -v 命令验证是否安装成功。
2.3、开放端口
由于我们固定1099为rmi端口,需要在防火墙放开此端口,Master机才能连接上Slave机。
修改步骤如下:
- vim /etc/sysconfig/iptables;
- 在文件中添加一行内容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1099 -j ACCEPT
- 执行命令,启用配置:
service iptables restart
2.4、ServerAgent的安装
1.安装
首先需要下载(插件官网地址:jmeter-plugins.org/):
- JMeterPlugins-Extras-x.x.x.zip;
- JmeterPlugins-Standard-x.x.x.zip;
- ServerAgent-x.x.x.zip;
将1和2解压,吧JMeterPlugins-Extras.jar和JMeterPlugins-Standard.jar复制到Jmeter\lib\ext目录下。
ServerAgent监控用的agent,放到服务器上面,运行,默认开启4444端口;
2.使用
使用步骤如下:
- 添加线程组,设置循环次数为“永远”;
- 为线程组任意添加一个Sampler(并不设置参数);
- 添加一个PerfMon Metrics Collector监听器;点击运行;
- 然后再jp@gc-PerfMon Metrics Collector界面启动;
3、分布式压测服务器的使用
使用请参考《分布式压测服务器的使用》文章
3、遇见的问题
3.1、回环地址不能直接启动
问题描述:
Server failed to start: java.rmi.RemoteException: Cannot start. localhost.localdomain is a loopback address.
解决办法:
- vim /etc/hosts;
- 将 127.0.0.1 修改为本机的ip地址:
# 修改前
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
# 修改后
172.20.4.52 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
3.2、测试结果不返回
检查Master机,是否有多个网卡,如虚拟网卡,将其禁用即可。