一个合格的运维工程师应该掌握哪些技能?

1.基础扎实:如果基础不扎实,这门课很难掌握。如果没有扎实的基础,就要思考如何检查文件类型,检查系统运行状态,创建用户等。,所以一定要有扎实的基础,才能走的更远。

2.构建服务:Linux服务有很多种,由不同的公司使用。所以一定要掌握常用的基础,比如ftp,Bind,DHCP,SAMBA服务。我们必须了解简单的配置,不仅是构造,还要熟悉服务内部的配置。

3.掌握脚本语言:shell语言是这个行业必备的,一些相对简单的系统管理shell脚本是最常用和使用最多的。另外,使用的语言是目前比较流行的Python,程序效率高,语言简洁明了,可以实现自动化运维。

4、网络服务:网站运维,当然WEB是核心,这一块需要Nginx和Apache来掌握。

Web服务必须精通,对应的组合是LNMP和LAMP。我不是说简单的搭建,而是需要熟悉里面的配置,深入了解内部的运行机制和原理。因为网站公司最重要的肯定是WEB服务,nginx和apache必须熟悉,尤其是nginx。有些公司(很多游戏公司)也用tomcat,所以最好学这个,JVM。

5.网站集群服务:现在大部分公司都有集群环境,尤其是网站公司。大并发、高性能是主旋律。如果你想开发好这些服务,你必须了解它们,如LVS,NGINX,KEEPALIVED集群软件,Memcached和Redis。

6.数据库:数据库是所有网络服务的核心,一定要学好。这里推荐首选mysql。不要问我为什么不学oracle,因为MySQL绝对是互联网公司用的最多的,安装、基本维护命令、主从复制、引擎、备份、恢复、增量恢复都要学。

7、防火墙:防火墙,不学不会。防火墙也是一个难点。说难不难。说难也不容易。最重要的是理解规则。如果你学过CCNA,可能会更渴望学习,因为iptables也有NAT表,原理是一样的。使用最多的是过滤表。反正不学肯定不及格。