年底了,身边的许多同事都已经回家了,也就在这个时候才有闲下来的时间,作为一名一直从事于互联网运维行业的人来说,经常有人问到,作为一名运维人员,需要掌握哪些技术呢?
现在就来回答下运维人员需要掌握的知识和能力:
1. 操作系统知识
对于操作系统来说目前很多,我主要从事的是linux服务相关的运维工作,但平常也有一些windows相关的问题需要处理
对于操作系统原理我们也需要相应的有所了解,这样对于我们深入了解操作系统的运行情况以及分析和定位问题也有一定的帮助
2. 开源组件知识
对于一个大型的互联网架构一般会分成接入层,逻辑层,数据层。对应我们就需要掌握以下知识和:
接入层:
DNS, LVS, Nginx, Apache, PHP, squid
逻辑层:
这里一般是C++等一些业务处理程序的逻辑
数据层:
memcached, mysql, oracle, postgresql, FileSystem
3. 监控相关知识
相信大家都知道运维人员需要对所负责的业务系统和相关服务器有一个全方位的实时监控,以确保业务24*7的正常运行,所以以下监控系统就少不了:
nagios, cacti
其实这里主要是目的是能收集监控数据,并实现数据的实时告警和展示,所以也就有很多公司自己实现相应的监控系统。
4. 编程知识
对于运维人员来说,shell应该是我们最常使用的脚本语言,但平常我们也会接触到perl, python等其它语言
不过如果一名运维人员能使用C或C++进行编程,对于日常运维工作会有很大的帮助,至少可以写一些底层工具,实现批量操作和自动化,这个效率是比脚本语言相对要好。
5. 沟通能力
运维人员需要面向所有的开发人员以及客服人员和外部的第三方合作,这样对我们的沟通能力就有一定的要求。平时工作经常需要推动程序bug的修复以及帮客服解决一些无法解决的客户技术服务,这样如果有良好的沟通能力对事情的解决会有很大的帮助。
6. 抗压能力
运维人员的工作由于需要确保业务的24*7正常运行,所以经常会处于一种高压状态下,尤其当现网出现一些故障的时候,需要面向来自各方的压力恢复服务,所以运维人员本身需要有一种良好的心态和抗压能力。
运维人员在许多人眼里看来是苦B的,但我认为运维这份工作对于我来说,能全面的掌握系统架构其中也其乐无穷!希望各位运维人员在新的一年更上一层楼,工作顺顺利利。