运维工程师必须掌握的基础技能有哪些
1、系统安装、优化、配置:windows,linux,unix,aix
2、自动化开发:shell,python,lua,go
3、编写配置格式:xml,json,yaml
4、服务集群安装、优化、配置:lvs、nginx、apache、zookeeper、kafka、redis、mq、ha、haddoop、keepalived等。
5、运维:git、svn、jenkins、mvn、jira、saltstack、ansible等。
6、监控:zabbix、nagios、cacti、小米open-falcon等
7、安全:openvas、nessus、iptables等
8、虚拟化:kvm,vmware,docker,k8s等
9、数据库:mysql,mongo等
10、网络知识:whisker、tcpdump等
11、云使用:腾讯、青云、阿里、aws等
还有一些概念的itil、cmdb等等吧,要再会vue弄个展示个页面就完美了。
网络运维需要会什么
这个要分情况具体看待:
第一种情况,如果只是一个公司的网络运维,类似网络管理维护岗位的话,那么基本包括:
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已经成为运维工程师招聘的必要条件。