温馨提示×

如何在Debian上使用JMeter进行性能监控

小樊
37
2025-12-09 04:34:58
栏目: 智能运维

在 Debian 上使用 JMeter 进行性能监控

一 环境准备

  • 安装 Java 8+(JMeter 为 Java 应用):sudo apt-get update && sudo apt-get install -y openjdk-11-jdk
  • 安装 JMeter(两种常用方式):
    • 方式 A 使用系统包:sudo apt-get install -y jmeter
    • 方式 B 使用官方压缩包:下载 apache-jmeter-*.tgz,解压后进入 bin 目录执行:./jmeter
  • 准备监控代理 ServerAgent(放在被测服务器上,非本机 JMeter 上):ServerAgent-2.2.3.zip,解压后可直接运行 startAgent.sh
  • 如需在 JMeter GUI 内安装插件,准备 JMeter Plugins Manager(jmeter-plugins-manager-*.jar),放入 JMETER_HOME/lib/ext 后重启 JMeter

二 安装与配置监控插件

  • 在 JMeter 中安装 PerfMon (Servers Performance Monitoring) 插件:
    • 打开 JMeter → 选项 → Plugins Manager → Available → 搜索并勾选 PerfMon → Apply Changes and Restart JMeter
  • 被测服务器启动 ServerAgent
    • 上传并解压:unzip ServerAgent-2.2.3.zip && cd ServerAgent-2.2.3
    • 启动(默认端口 4444,可自定义):./startAgent.sh
    • 如需更换端口:./startAgent.sh --udp-port 9003 --tcp-port 9003 &
  • JMeter 中添加监听器并配置:
    • 测试计划 → 线程组 → 添加 → 监听器 → jp@gc - PerfMon Metrics Collector
    • 新增行:填写被测服务器 Host/IPPort(与 ServerAgent 一致)、选择要采集的 Metric(如 CPU、Memory 等)

三 监控指标与采集要点

  • 常用指标与含义:
    • CPU:combined 为总体 CPU 使用率(百分比);可用 Per Process 指定进程;可勾选 CPU Cores 监控单个核
    • Memory:usedperc/freeperc 为已用/空闲占比;其余为容量值(如 Mb);可指定进程
    • Disk I/O:queue 为等待队列长度;reads/writes 为每秒读写次数;readbytes/writebytes 为每秒字节数(Mb/s 更直观)
  • 采集策略与可读性:
    • 长时间测试建议将不同指标拆分到多个 PerfMon 监听器,便于分别导出与查看
    • 曲线设置常用项:勾选 use relative times(X 轴从 0 开始)、Auto-zoom rows for best fit(自动放大便于观察)、可限制 采样点数 与固定 Y 轴最大值
  • 自定义指标:
    • 选择 EXEC 类型,通过命令输出单个数值(如 /bin/sh:-c:free | grep Mem | awk ‘{print $7}’),ServerAgent 会执行并采集结果

四 运行测试与常见问题

  • 运行与验证:
    • 在 JMeter 中启动测试,PerfMon 监听器将实时绘制 CPU/内存/磁盘 曲线;如无数据,检查服务器防火墙与端口连通性
  • 常见问题与处理:
    • 端口被拦截或安全软件限制:临时关闭防火墙/杀软或更换端口;确保 JMeter 与被测服务器的 IP/端口 可达
    • 长时间运行占用资源:JMeter GUI 较耗资源,建议非必要时使用 命令行非 GUI 模式 执行压测(如 jmeter -n -t plan.jmx -l result.jtl),GUI 仅用于调试与查看图表

0