运维监控体系
作为一个运维,做监控的时候一定要了解我们需要监控的对象,我们监控的范围,以及我们根据业务判定监控要达到的精准度。
监控对象:
1. 监控对象的理解:CPU是怎么工作的,原理
2. 监控对象的指标:CPU使用率 CPU负载 CPU个数 上下文切换
3. 确定性能基准线:怎么样才算故障?CPU负载多上才算高
监控范围:
1.硬件监控服务器的硬件故障
2.操作系统监控 CPU、内存、硬盘、IO、进程
3.应用服务监控 nginx、MySQL、等服务
4.业务监控
监控报警精度:
1.什么样的情况报警,一达到阈值就报警?根据监控指标的重要性去设置,对于次要性的指标尽量减少误报。对于重要指标,可以设置敏感一些。
2.什么样的报警方式,微信?短信?电话?邮件?还是得根据报警的级别来定。
硬件监控
- 使用IPMI
- 机房巡检
硬件监控,最常用的就是机房巡检,我们公司也是这么干的。
高端的可能会用IPMI。
系统监控
- cpu
- 内存
- I/O(网络、磁盘)
系统监控就是监控主机的健康情况,但是我们需要明确的是监控的阈值在哪里,cpu什么样才叫不正常,内存利用率多少比较合适。
还有磁盘的监控往往使用的zabbix自带的模板。
但是网络的监控是最复杂的,因为从整个系统来说,我坚信网络是整个系统运行的基石,而且网络是一个相互以及流动的过程,不能以单概全,所以网络的监控不能仅仅通过点对点的可达性去判断整个系统的运行情况。
应用监控
- nginx
- tomcat
- php
- mysql
- oracle
- web
应用监控主要就是监控应用的可靠性、可用性。
总结
其实一个完整的监控体系应该是包括:
- 硬件监控
- 系统监控
- 服务监控
- 性能监控
- 日志监控
- 安全监控
- 网络监控
- 业务监控
- 流量监控
但是对于一个中小型公司来说,没有必要分的那么细,搞好基础的 硬件、系统、服务监控就足以支撑公司的运维体系了。