JMeter是基于Java开发的工具,需先安装Java运行环境(推荐OpenJDK 8)。
sudo yum install -y java-1.8.0-openjdk-devel
java -version
输出应包含java version "1.8.0_xxx",表示安装成功。.tgz压缩包(如apache-jmeter-5.4.3.tgz),或通过wget直接下载:wget https://dlcdn.apache.org//jmeter/binaries/apache-jmeter-5.4.3.tgz
/opt(系统软件目录)或/usr/local(本地软件目录):sudo tar -xzf apache-jmeter-5.4.3.tgz -C /opt/
sudo mv /opt/apache-jmeter-5.4.3 /opt/jmeter # 可选:重命名目录
为方便全局使用jmeter命令,需配置环境变量。
/etc/profile.d/jmeter.sh(系统级配置)或~/.bashrc(用户级配置):sudo vi /etc/profile.d/jmeter.sh
export JMETER_HOME=/opt/jmeter # JMeter安装路径(根据实际调整)
export PATH=$JMETER_HOME/bin:$PATH # 将JMeter bin目录加入PATH
source /etc/profile.d/jmeter.sh # 或 source ~/.bashrc
jmeter -v
输出应显示JMeter版本信息(如Apache JMeter 5.4.3),表示配置成功。bin目录,运行以下命令启动图形界面:cd /opt/jmeter/bin
./jmeter
此模式适用于脚本编写和调试,但生产环境建议使用非GUI模式(减少资源消耗)。./jmeter -n -t /path/to/your/test_plan.jmx -l /path/to/results.jtl
参数说明:
-n:非GUI模式;-t:指定测试脚本路径(.jmx文件);-l:指定结果输出文件(.jtl格式,记录响应时间、状态码等数据)。若需模拟高并发负载,可配置JMeter分布式压测(Master-Slave模式)。
Master节点配置(控制节点):
编辑/opt/jmeter/bin/jmeter.properties,设置远程Slave节点地址:
remote_hosts=192.168.1.101:1099,192.168.1.102:1099 # Slave节点IP及端口
server.rmi.localport=1099 # 本地RMI端口
server.rmi.ssl.disable=true # 禁用SSL(简化配置,生产环境建议启用)
启动Master节点:
./jmeter -n -t /path/to/test_plan.jmx -R192.168.1.101:1099,192.168.1.102:1099 -l results.jtl
参数说明:
-R:指定远程Slave节点地址(可多个,用逗号分隔)。Slave节点配置(执行节点):
编辑/opt/jmeter/bin/jmeter.properties,设置Slave节点监听端口:
server.rmi.localport=1099 # 与Master配置的端口一致
server_port=1099 # Slave节点服务端口
启动Slave节点:
./jmeter-server -Djava.rmi.server.hostname=192.168.1.101 # 指定Slave节点IP
注意:Master和Slave节点需处于同一网络,且防火墙开放对应端口(如1099)。
非GUI模式下,可通过以下命令将.jtl结果文件转换为可视化HTML报告:
./jmeter -g /path/to/results.jtl -o /path/to/report
参数说明:
-g:指定结果文件路径(.jtl);-o:指定报告输出目录(需为空目录)。/path/to/report/index.html即可查看详细性能指标(如响应时间分布、吞吐量等)。若需实时监控压测指标(如QPS、响应时间),可整合InfluxDB(数据存储)和Grafana(可视化)。
wget https://dl.influxdata.com/influxdb/releases/influxdb-1.8.0_linux-amd64.tar.gz
tar -xzf influxdb-1.8.0_linux-amd64.tar.gz -C /opt/
ln -s /opt/influxdb-1.8.0 /opt/influxdb # 创建软链接
编辑/opt/influxdb/influxdb.conf,启用HTTP服务并创建jmeter数据库:[data]
database = jmeter
[http]
enabled = true
bind-address = ":8086"
启动InfluxDB:/opt/influxdb/influxd
Backend Listener),选择InfluxdbBackendListenerClient,配置InfluxDB地址、数据库名称等信息。wget https://dl.grafana.com/oss/release/grafana-7.5.4.linux-amd64.tar.gz
tar -xzf grafana-7.5.4.linux-amd64.tar.gz -C /opt/
ln -s /opt/grafana-7.5.4 /opt/grafana # 创建软链接
启动Grafana:/opt/grafana/bin/grafana-server
登录Grafana(默认地址http://<服务器IP>:3000,账号admin,密码admin),添加InfluxDB数据源并导入JMeter监控模板(如JMeter模板ID:1860),即可实时查看性能图表。以上步骤覆盖了CentOS系统下JMeter的基础部署、启动、分布式压测及可视化监控流程,可根据实际需求调整配置。