转贴过来,个人觉得非常现实,简单明了,很有见地!
运维工作,特别是Linux运维,其实是最考验你能力的一个部分,因为要学的东西实在是太多了。
你需要了解网络:思科、华为设备的配置;
你必须了解性能调优:包括lamp或者lnmp的性能调优,以及Linux操作系统的调优;
你需要了解数据库MySQL或者NoSQL(比如MongoDB):
你需要了解编程语言:Shell是最基础的,但你还需要学习perl、python,甚至ruby和C++(因为有些软件是用这些语言写的),同时你还需要熟练掌握awk、sed、grep和正则表达式;
你需要知道如何使用一些调试和故障排除命令工具,例如 htop、dstat、strace、systemtap、iostat、sar 等。
你需要有良好的英语水平:因为很多软件或工具以及故障排除的答案都不是中国人做的,你甚至可能需要与原作者沟通,在Google群组留言讨论
你需要有强大的体力和加班的心理准备:升级维护是在大家还在做梦的时候进行的,网站瘫痪的时候你得凌晨2点起床,手机不停地收到各种报警短信……
要有承担责任的耐心:运维一直是公司不太看好的岗位,别人做好了与你无关,自己做好了就是你的错。人力资源、财务是技术部门的服务,而运维是各个技术部门的服务,小到线上运维,大到帮助其他使用Linux桌面的同事、公司内部机房、IDC维护(跑腿搬服务器)。做好了就好,做不好就会有好多人在背后骂你。
你还需要有积极的学习心态(这是最重要的),因为技术的发展不允许你停滞不前,如果你不是一个技术极客,认为 Shell + Apache 就是一切,我觉得你不做运维也能做得很好,哈哈……
当然在Linux运维方面也有建树:
一般情况下,工作变动都是交由猎头来处理;
工资涨幅最大最快,其他行业很少有一两年就能挣上万块钱的工作吧?
我知道很多事情……换工作和职业很容易。