Jmeter启动Serveragent报错PerfMon Metrics Collector,提示java.net.ConnectException: Connection timed out:

起因是使用jmeter进行性能测试,需要连接华为云的应用服务器,监控服务器的资源使用情况。

配置ServerAgent

1、上传ServerAgent-2.2.3.zip至服务器;
2、使用命令 unzip ServerAgent-2.2.3.zip 解压压缩包;
3、解压后cd进入ServerAgent-2.2.3文件夹;
4、命令chomod 777 startAgent.sh 授权;
5、命令./startAgent.sh启动成功,默认端口4444。

启动不了,提示lib目录下缺少libsigar-aarch64-linux.so这个文件,不知道为什么会缺。
在这里插入图片描述
下载libsigar-aarch64-linux.zip 把解压后的so文件放到工程的lib目录下
链接: https://pan.baidu.com/s/1i4YB-TLzPA3C-o0vd4fT6Q?pwd=7ur4 提取码: 7ur4

./startAgent.sh启动
在这里插入图片描述
后台运行启动命令

nohup  ./startAgent.sh  nohup.out &

PerfMon Metrics Collector配置

很简单,填写ip和端口
注意:一定要写入文件路径,不然会报错
在这里插入图片描述
非常幸运的情况下,运行脚本就能看到监控情况了
在这里插入图片描述
然而不幸的是,我的报错连接超时,开始找原因

一、检查防火墙是否关闭

1、查看防火墙的状态 ,dead–关闭 ,running–运行中

systemctl status firewalld

2、关闭防火墙

systemctl disable firewalld

检查完毕,我的防火墙是关闭状态

二、 端口是否被占用

1、查看全部已用端口

netstat -tpln

2、如果被占用可使用以下命令杀死进程,189878是进程号

kill -9 189878

3、或者指定一个端口启动Agent

./startAgent.sh --udp-port 4555 --tcp-port 4555

检查完毕,默认监听端口4444未被占用,且更换端口后还是连接超时。

4、后来又尝试了防火墙开放端口(需要先启动防火墙)

firewall-cmd --permanent --add-port=4444/tcp

重启防火墙

firewall-cmd --reload

好了,依然超时,之前监控别的服务器也没这么难搞呀,愁了一天,本来就不多的秀发又雪上加霜了。。。网上查查查找找找。。最终::::(设置了防火墙开放指定端口的情况下,这个端口同时需要在服务器端开启,或者直接关闭防火墙,使用服务器端已开放的端口–我理解的)

三、云服务器开放端口

查看云服务器开放了哪些端口,用已经开放的端口监听就行喽
在这里插入图片描述
点击服务器的名字链接
在这里插入图片描述
点击安全组
在这里插入图片描述
查看方向-入方向,类型IPv4,协议TCP、UDP的端口范围/ICMP类型,监控端口要从端口范围/ICMP类型这个范围内取值,且确保未被其他进程使用。
在这里插入图片描述

假设12345在端口范围,指定12345端口运行serveragent

./startAgent.sh --udp-port 12345 --tcp-port 12345

将PerfMon Metrics Collector中的监听端口也修改成12345
在这里插入图片描述

好了 监控成功,程序运行正常

总结:缺少久经沙场的磨练,被服务器虐的太少。。。