起因是使用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
好了 监控成功,程序运行正常
总结:缺少久经沙场的磨练,被服务器虐的太少。。。