服务器监控的良好介绍?
我目前正在使用
Linux,Apache,Django和
MySql开发一个小型Web应用程序.
作为一名对Linux / shell脚本/服务器监控知之甚少的开发人员,我不知道我想要做什么样的监控…但是,我喜欢做的一些事情是: >轻松访问CPU /内存使用的时间序列. 另外,我想知道是否还有其他日志文件/服务我应该留意? 解决方法
服务器监控取决于哪些指标对服务器的用途很重要.作为一个Web应用程序,有很多方面需要介绍.你可以想到无数的指标,但你通常会有这些最低限度的指标:
>服务器和服务的可用性 除了查看现在之外,监控的另一部分是记录过去.这使您能够: >规划未来 您是否会在未来两个月内以相同的增长耗尽磁盘空间?您是否看到CPU使用率的增加与新功能部署一致?为什么用户必须等待四秒才能查看页面? 我将介绍上述每个指标: 可用性 非常简单的可用性监视是通过ping命令进行的,但服务器ping这一事实并不意味着Web服务器之类的服务可用,因为它可能已经崩溃.更复杂的监控是每小时在网站上运行一次测试交易,以确保用户可以购买产品. 磁盘空间和使用情况 空间指标很明显,在应用程序停止工作之前,您需要提前知道.使用部分有点复杂.用法将是字节读/写,每秒输入/输出操作等指标.这些可能很重要,因为如果您发现与磁盘性能下降相关的站点延迟增加,您可能已经开发了一个需要多个磁盘的坏磁盘寻求或读取以满足请求.不要忘记测量inode的使用情况,这是我在OpenVZ中忘记了几次的指标. 网络使用 达到网络带宽限制?您是否看到了ISP所看到的相同数字? 内存使用情况 当系统开始耗尽内存时,它将开始交换.这会影响性能. CPU使用率 在高峰时段CPU是否飙升100%?也许您可以通过将服务器升级到更快的CPU或更多CPU来改善用户体验.性能是否会因CPU必须处理如此多的网络控制器中断而死亡?也许是时候投资购买TCP卸载卡了. 日志文件 > MySQL慢查询日志:查询运行速度低于阈值.查看此文件并根据需要进行改进.如果你无法改进它们并且查询时间与繁重的系统负载相对应,那么可能需要时间进行升级. 通常最好将系统日志发送到另一台服务器,以便无法覆盖轨道. 除此之外,还有许多可以监控的事情:每秒事务数,服务器温度,硬盘温度和温度. SMART,RAID状态,备份报告,批处理作业状态, 工具 有很多工具可以完成上述某些工作.其他更具体的指标要么需要自我编码,如果还没有可用(通过SNMP显示qmail队列大小就是我放在一起的一个这样的指标,因为有时qmail会半休息,仍接受新电子邮件但不发送任何). 我使用的一些工具可以轻松开始: > Nagios或Icinga – 最受欢迎的* nix监控工具之一.相当多的监控工具,比如mysql slave的监控.我通常将此专门用于所有服务的可用性监控.设置为电子邮件发送电子邮件至电子邮件地址以发送警报. Icinga是Nagios的一个分支.浏览器通过“命令”查看可以使用的命令. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |