运维经验分享:关于系统运维监控的几点建议
目前很多企业信息化系统都有自己的监控平台和监控手段,无论是采用哪种手段去实现对系统的实时监控和故障告警,大多采用的方式也只有两种:集中式监 控和分布式监控。本文作者根据自身公司监控存在的问题,总结了一些经验并提出一些在监控平台的建议,以供大家参考学习,如有考虑不周的地方还希望大家多多 批评指正。
为了更好、更有效的保障系统上线后的稳定的运行。对于服务器的硬件资源、性能、带宽、端口、进程、服务等都必须有一个可靠和可持 续的监测机制,统计分析每天的各种数据,从而能及时反映出服务器哪里存在性能瓶颈、安全隐患等。另外是要有危机意识,就是了解服务器有可能出现哪些严重的 问题,出现这些问题后该如何去迅速处理。比如数据库的数据丢失,日志容量过大,被黑客入侵等等。
一、上线之前的准备工作
1、首先是备份,做好定时备份策略,备份所有你认为重要的数据,并且定期检查你的备份是否有效、全面;
2、日志轮换,无论你想用哪种轮换方式,控制日志增长避免驱动器已满是你的目的;
3、做一定的安全措施,如防火墙iptables的访问控制,用denyhosts防止黑客远程暴力破解;
4、mysql远程登录权限等等;
5、最后就是服务器、网元设备的监控。
二、监控策略
1、定义告警优先级策略
一 般的监控到的结果是成功或者失败,如Ping不通、访问网页出错、连接不到Socket,发生时这些称之为故障,故障是最优先的告警。除此之外,还能监控 到返回的延时、内容等,如Ping返回的延时、访问网页的时间、访问网页取到的内容等。利用返回的结果可以自定义告警条件,如Ping监控的返回延时一般 是10-30ms之间,当延时大于100ms时候,表示网络或者服务器可能出现问题,引起网络响应慢,需要立即检查是否流量过大或者服务器CPU太高等问 题。
2、定义告警信息内容标准
当服务器或应用发生故障时告警信息内容非常多,如告警运行业务名称、服务器 IP、监控的线路、监控的服务错误级别、出错信息、发生时间等。预先定义告警内容及标准使收到的告警内容具有规范性及可读性。这点对于用短信接受告警内容 特别有意义,短信内容最多是70个字符,要在70个字符完全知道故障内容比较困难,更需要预先定义内容规范。如:“视频直播服务器10.0.211.65 在2012-10-18 13:00电信线路监控第到1次失败”,清晰明了的知道故障信息。
3、通过邮件接收汇总报表
每天收到一封网站服务器监控的汇总报表邮件,花个两三分钟就大致了解网站和服务器状态。
4、 集中监控和分布式监控相结合
- 主动(集中)监控虽然能不需要安装代码和程序,非常安全和方便,但缺少很多细致的监控内容,如无法获取硬盘大小、CPU的使用率、网络的流量等,这些监控内容非常有用,如CPU太高表示有网站或者程序出问题,流量太高表示可能被攻击等。
- 被 动(分布式)监控常用的是SNMP(简单网络管理协议),通过SNMP能监控到大部分你感兴趣的内容。大部分操作系统支持SNMP,开通管理非常方便,也 非常安全。SNMP缺点是比较占用带宽,会消耗一定的CPU和内存,在CPU太高和网络流量大情况下,无法有效进行监控。