一、检查事件日志输出
服务器事件日志中记录着丰富的信息,尤其是细节问题。如果没有仔细审查系统日志,恶意软件日志和其他日志,服务器维护是不完整的。当然,关键的系统问题应该引起IT管理员和技术人员注意,但也有无数的非关键问题,可能是慢性或严重问题的信号。
如果你在维护服务器,那么请检查报告设置,并验证告警与告警接收人地址正确。例如,如果某个技术人员离开服务器组,你需要更新服务器的报告系统。双重检查联系名单和联系方式也很重要,仅仅将关键错误报告发送到技术人员公司电子邮箱地址是完全不够的,需要确保其在非工作时间也能联系的上。
要积极主动的分析日志数据。当日志检查发现慢性或反复出现的问题,积极主动的寻找解决这个问题的方案,避免问题升级。例如,如果服务器日志显示一些内存模块的可恢复报告,那么不会触发严重告警。但报告说明了某个模块的问题,IT人员可以进行更详细的诊断程序以识别即将发生的故障。
如果问题影响轻微,无须关闭服务器,那么它可以返回到线上继续服务,直至需要更换硬件的时候。
第二、检查本地硬盘
许多服务器依赖内部硬盘,用于承载工作量和存储,保存用户数据以及其他功能。硬盘介质出现问题会严重影响负载性能和稳定性,最终会导致硬盘故障。
磁盘介质是不完美的,常见问题包括坏道和碎片化。RAID可以比较稳定地确保出现磁盘故障时数据稳定与一致性,但更小型的服务器,如1U的机架式服务器可能无法提供足够的空间来实施RAID。使用如CHKDSK(Check Disk)这样的工具来检查硬盘完整性,还可以尝试修复其中损坏的扇区。
磁盘碎片不会消失,只要使用NFS并且文件分配表或FAT,文件系统会使用首个可用集群的磁盘空间。碎片可能会降低服务器磁盘速度并引发故障。
第三、定期安装补丁与更新
服务器软件栈——BIOS、操作系统、虚拟机管理程序、驱动程序、应用程序、支持工具——必须确保所有互动与协作。不幸的是,软件代码很少完美或没有任何问题,所以此类软件问题需要经常通过修补或更新来修复错误、提高安全性、简化操作性、提高性能等。
不是所有软件都可以自动更新,管理员需要确认哪些补丁或升级包是必要的,然后评估和测试更新效果。如果更新包修复的是服务器不存在的问题,那么无须多此一举冒这个险。
软件开发者无法测试到每个软硬件兼容性以及补丁、更新的潜在问题,因此可能会导致更多的问题,这种情况可能在特定的服务器或软件集中发生。例如监控软件的代理补丁可能导致某个重要应用程序的性能问题,因为新代理需要比预期更高的带宽。
转换到DevOps后,更小、更频繁的更新过程加剧了潜在的问题。在部署之前仍然要在实验室环境内测试任何补丁或更新。始终要确保可以撤销原来的更改,并可以恢复修改前的软件配置。
第四、确保服务器可以呼吸
一旦服务器关机,目视检查其内部和外部的空气流动路径。清除任何积累的灰尘和杂物,确保冷却空气通行顺畅。
从外部空气出入口开始,然后继续到系统机箱CPU散热器和风扇组件,内存模块和所有冷却风扇叶片与风道路径。防静电工作区用清洁、干燥的压缩空气去除尘和碎屑。不要在机架中清洁服务器。
除尘是个历史悠久的传统过程,但这并不意味着它已经过时。灰尘是一种热绝缘体,需要清除掉,现代的替代冷却方案以及ASHARE建议已经提出了调高数据中心工作温度。灰尘和其他空气流动的障碍物会导致服务器使用更多能源,甚至沉淀积累导致某些组件过早出现故障。
第五、坚持例行维护
服务器管理员往往忽视计划好的例行维护。不要等到实际出现故障才进行维护,预留时间进行日常维护可以防止问题。
维护频率取决于设备年龄、数据中心环境、待维护的服务器容量和其他因素。例如,放置在设备间的旧设备会比放置在配有HEPA过滤器、良好冷却设施数据中心里的设备需要更频繁的检查。组织可以根据供应商或第三方的例行巡检策略来安排日常维护表,如果供应商合同中约定没4个月或6个月检查,那就按该时间表执行。
虚拟化之前,设备维护打乱了工作量,迫使IT员工在夜间或周末做保养。使用虚拟化服务器进行工作负载迁移,替代中断时间是个好方法,这样每当服务器维护时,应用程序是安全的。
数据中心服务器是复杂的机器。就如任何机器一样,它们需要定期维护以保持最佳状态。执行简单的维护操作可以降低呼叫故障服务电话次数,并延长服务器工作寿命。