监控系统简介
2021-07-24 本文已影响0人
麟之趾a
监控系统作用
在一个成熟的系统中,监控系统,应准确无误的监控每一台主机,如果有网络设备,还应监控网络设备。在未接入监控系统的设备,不允许上线。
监控系统功能
-
采集功能
采集主机上的数据,每一个数据都为一个采样点。
举例:
cpu: us用户使用率 ,sy系统使用率,ni 根据优先级切换进程使用率,id空闲使用率,wa cpu等待io的使用率, hi 硬中断使用率,si软中断使用率,st虚拟化进程偷走的cpu使用率
memory: 总大小,已使用大小,buffer/cache占用大小,可用大小
disk: 每个分区空间,每个分区已使用空间,每个分区空闲时间,每一块硬盘的读写IO
网络流量: 通过 ifconfig 查看数据包的大小,这个数字是增量操作,所以需要手动计算每分钟的数据的速率
每一项都是一个采集点 -
存储功能
SQL: MySQL,PGSQL
NOSQL: mongodb,influxdb(时序数据库),promethues(时序数据库)
rrd: cacti监控软件用的 环形数据库 -
告警功能
email,短信,企业微信
告警升级 -
采集信道
++ 主机:
++++ 主机自带(ssh),监控软件的客户端 例: zabbix_agent(ZBX协议)/node_export(http协议)
++ 路由器,交换机:
++++ snmp 简单的网络管理协议 simple network manager protctol
++ 高级硬件
++++ iamp inter智慧管理协议
如zabbix还有 jmx,直接监控jvm虚拟机,比如堆栈内存的使用情况,GC的频率,以及young GC,old GC的频率
如promethues,对于许多软件,有单独的监控客户端
管理员应设置监控系统以下功能
-
分级报警功能
比如1个小时恢复5级报警,2个小时恢复4级报警,3个小时恢复3级报警.... -
数据可视化
当一波请求峰值来临时,管理员应该通过监控系统,知道整个系统,哪一个地方是短板。当下一波有更大的请求峰值来临时,管理员应该提前做预算,增加短板地方的服务器 -
简单自动修复
当服务器发生故障时,监控系统应该做一个简单的自动恢复功能。比如nginx服务挂了,它可以先做一个简单重启服务操作。 -
多次探测告警
如果出现告警,监控系统应该多探测几次,确实是出现了告警则通知管理员