温馨提示×

CentOS下JMeter分布式测试方法

小樊
55
2025-06-14 15:46:55
栏目: 智能运维

在CentOS下进行JMeter分布式测试的步骤如下:

环境准备

  1. 安装Java和JMeter
  • 在所有节点(包括控制节点和所有工作节点)上安装Java运行环境(JRE或JDK)和Apache JMeter。
  • 在CentOS上安装Java的命令:
sudo yum install java-1.8.0-openjdk-devel 
  • 下载并解压JMeter的命令:
wget https://downloads.apache.org//jmeter/binaries/apache-jmeter-5.5.zip unzip apache-jmeter-5.5.zip cd apache-jmeter-5.5 
  1. 配置JMeter
  • 编辑jmeter.properties文件:
    • 禁用SSL(如果不需要):
      server.rmi.ssl.disable=true 
    • 设置RMI服务器主机名:
      rmi.server.hostname=your_node_ip 
    • 设置远程启动端口(默认是1099):
      server.rmi.localport=1099 
  • 在每台Slave机器上启动jmeter-server
./jmeter-server 

配置步骤

  1. 配置Slave机器
  • 编辑jmeter.properties文件:
    • 关闭防火墙:
      systemctl stop firewalld 
    • 禁用SSL:
      server.rmi.ssl.disable=true 
    • 设置RMI服务器主机IP:
      rmi.server.hostname=192.168.1.101 
    • 启动jmeter-server
      ./jmeter-server 
  1. 配置Master机器
  • 编辑jmeter.properties文件:
    • 修改remote_hosts的值,添加Slave机器的IP和端口,例如:
      remote_hosts=192.168.1.101:1099,192.168.1.102:1099 
  • 启动分布式测试:
./jmeter -n -t /path/to/your/test_plan.jmx -R 192.168.1.101:1099,192.168.1.102:1099 -l /path/to/results.jtl -e -o /path/to/report 

分布式测试执行

  1. 通过GUI启动测试
  • 在Master机器的JMeter GUI中,点击“运行”->“远程启动所有”。
  • 输入配置的Slave机器IP,然后启动分布式压测。
  1. 通过命令行启动测试

使用以下命令行启动分布式压测:

jmeter -n -t /path/to/jmx/script.jmx -l /path/to/results.jtl -e -o /path/to/report -R 192.168.30.132:1099,192.168.30.130:1099 

其中:

  • -n:非GUI模式。
  • -t:指定测试计划文件路径。
  • -l:指定结果文件路径。
  • -e:执行测试并生成报告。
  • -o:指定报告输出路径。
  • -R:指定Slave机器的IP地址和端口。

常见问题及解决方法

  • 连接失败:确保防火墙允许JMeter使用的端口(默认是1099)。
sudo firewall-cmd --zone=public --add-port=1099/tcp --permanent sudo firewall-cmd --reload 
  • 版本不一致:确保所有节点上的JMeter版本一致。
  • 权限问题:确保JMeter进程有足够的权限访问所需的文件和目录。

以上步骤应该可以帮助你在CentOS上成功配置并运行JMeter的分布式测试。如果有任何问题,请参考JMeter官方文档或社区论坛寻求帮助。

0