Linux运维最佳实践

胥峰 杨俊俊
前言 为什么要写这本书 《论语·卫灵公》有言:“工欲善其事,必先利其器。” 在Linux运维领域中,什么是广大系统管理员们的“利器”呢?在我看来,系统管理员的“利器”有3个,一个是方法论,一个是经验,最后一个是积极饱满的学习精神。 我们面对的是一个不断变化的世界,业务需求在变,技术架构在变,开源工具与商业系统异构部署,新工具和技术概念层出不穷,唯有一套科学的技术方法论才能应对这些变化。很多时候,我们在面对新的问题时,会束手无措,这恰恰也是方法论缺失导致的结果。从事运维工作10余年,我逐渐体会到在运维领域中总结一套问题排除方法论是一件至关重要和有意义的事情。在我的工作中,经常听到有工程师问:“网站访问不了了,是什么问题?”此时,我会把我的故障定位方法告诉他,依次实施这些方法,基本都能够有效定位并及时解决问题。我想,若能把这些方法论分享给初入这个行业的人或者在这个领域中工作了多年但仍未打通“任督二脉”的人,将会是一件极有意义的事。 经验是另一个有意思的话题。很多时候,我们对一个问题的判断,是基于以前的思考和处理方法的。有时候经验并不完全正确,但对经验的总结和归纳,却可以给我们提供新的思考方向,因为从经验中获取的知识和技能在未来也是通用的。自2006年毕业后,我一直从事与运维相关的工作。在我最开始从事的局域网内网管理工作中,看到了使用ARP欺骗竟然可以让一台计算机失去网络连接;看到了Andrew.S.Tanenbaum先生所著的《Computer Networks》中所讲的每个知识都活了起来。到后来,我加入了一家创业型的公司,全面负责公司的网站和业务运维,从每天上千次网站访问量到日PV超过千万,我经历了高性能网站构建、监控、安全和运维自动化等各个方面的实践,使得自己在各个层面都有了丰富的经验积累。再后来,进入盛大游戏,我接触到了大型端游的上线运维、现象级手游的发布运维,使自己又…