这个要分情况具体看待:
第一种情况,如果只是一个公司的网络运维,类似网络管理维护岗位的话,那么基本包括:
1 、熟悉主要几种品牌的交换机、路由器、防火墙等硬件设备的配置,具备构建小型局域网的能力;
2 、计算机、打印机、无线 AP 等设备的基本故障排除、 IP 配置、硬件维护的能力;
3 、公司服务器的系统安装、调测、配置、维护能力;
4 、基本的综合布线、实地操作能力。
第二种情况,如果是运维工程师类,需要掌握的不论是理论知识,或者操作能力上,都有更高的要求;各类操作系统的深度精通;精通主要几种编程语言;精通网络系统、数据库的开发;网络安全的配备等。
网络运维工程师需要掌握的应该不仅仅是软件,范围应该扩大,包括一些程序之类。
1.Nginx 、 Apache 、 Tomcat 等,很多时候需要运维人员搭建开发环境并进行优化,不过对这些操作一般都需要写命令。
2.MySQL 、 SQL server 、 Oracle 、 mangodb 、 redis 等数据库的搭建、优化、维护肯定是必不可少的。
3.LVS ( Linux 虚拟服务器),可能有的公司要采取 LVS 实现负载均衡。
4.Jenkins (持续集成引擎),用于监控持续重复的工作,听说非常重要,但也难学。
5.OpenStack 云计算管理平台,这个搭建及操作还是比较麻烦的,不过同上面,也非常重要。
6.zabbix 是一个基于 WEB 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。一般公司里都会用到这个,搭建熟悉使用一个多周即可上手,当然系统监控的软件不仅仅只有这个。
7.SVN 、 Git 版本控制需要会,不过现在似乎 git 用的比较多。
8.docker 、 elasticsearch 、 Kubernetes ( k8s )、 VMware vSphere 等虚拟化的知识,虚拟化还是比较热的。
9.SaltSack 等自动化运维工具,自动化运维是运维进阶的方向,当然自动化运维还要会写脚本。
10.Linux 、 unix 、 win server 等各种服务器系统必须熟练掌握, python 、 shell 等脚本语言,现在运维不仅仅是需要写命令,而且要求会编程, python 已经成为运维工程师招聘的必要条件。
知乎上是一群对未知领域充满渴望,对熟悉领域乐于分享的一群人,是网络精神的体现。是Web2.0时代的领跑者与追随者。