一、ServerAgent
1、服务器监控方式
ServerAgent、nmon、influxdb、zabbix、prometheus+grafana+xxx_exporter
2、ServerAgent
jpgc插件,引入了一些新的线程组,同时,它还引入了一些监听器和扩展函数,如PerfMon
PerfMon Metrics Collector, 性能监控收集器,显示我们性能监控数据(图像界面显示)
add row: 填写IP地址(服务器IP)、端口(监控软件)、监控项(选择需要监控的资源)
ServerAgent就是要被放到被监控的服务器上,因此所选的监控软件资源消耗较低
(1)服务端安装与启动
把ServerAgent.zip包上传到被测服务器上并安装,端口为4444,可在运行时修改默认端口
./startAgent.sh --tcp-port 9898 --udp-port 0
(2)使用监听多项时,使用多个监听器
二、nmon
1、只能监控linux
2、nmon有三种运行模式
(1)实时屏幕交互模式
执行nmon运行命令、快捷键cmdn
(2)数据收集模式
用的最多的命令,后面-f , 默认收集24小时,结果输出到 .nmon文件,并需要分析工具
可以分析cpu、内存、磁盘、网络、io,但是没有应用和数据库的数据
只能在性能结束之后,才能分析出来
(3)定时执行模式
-x 每隔15分钟获取数据一次,总共获取96次,即24小时后,就自动退出
-X 每隔30秒收集一次数据,总共收集120次,即1小时就自动退出
三、监控平台(grafana+jmeter+influxdb)
1、grafana
前端展示平台,通过不同的模板,来改变展示效果
2、influxdb
时序数据库,每一行的数据,都有一个时间戳
3、jmeter的后端监听器,实现数据的收集已经发送数据的功能
4、环境搭建
请单独使用一台linux机器,不要使用kyj机器,即不要安装在被测服务器上
(1)准备一个空的 linux机器
(2)把云盘中性能监控 grafana + influxdb(1.3以上,不超过2.0)文件上到新的机器上
(3)安装grafana并通过网页访问
(4)安装influxd并启动,再打开influx进入数据库命名模式
(5)jmeter中后端监听器里选择influxdb,并进行连接
看到db=jmeter时,我们的数据就写入jmeter库中,当执行性能测试时,就会将数据入表
(6)在grafana中显示数据
添加数据源-》type选择influxdb-》URL-》database:jmeter-》引入模板(菜单import 5496)
四、监控平台(grafana+prometheus+export)
1、prometheus是一个时序数据库,存数据库
2、export是收集器,来收集被监控的数据,想要监控不同平台的内容,就是用不同的exporter,这个exporter放在被测服务器上
(1)后台执行,端口9100
nohup ./node_exporter &
(2)与prometheus的集成
修改prometheus.yaml
job_name: 'node_exporter'
static_configs:
-targets : ['grafana_ip_port','export_ip_port']
(3)grafana的界面配置
添加promethous的数据源-》引入模板
(4)常见问题
机器间出现时间差,可能会在监控平台上看不到数据,这个时候需要去修改右上角的时间范围大于8小时
监控界面JOB、instance没有选项,则是yml配置问题