首先,谢谢你邀请我。
运维工程师现在越来越多元化。不是每个阶段掌握的技能都是一样的,不同发展方向掌握的技能会有所不同。以下不包括特种设备运维方向,如网络运维、it运维、存储网络/安全等。,并列举了几种常见的运维发展方向。从基础、高级到进阶,一般需要掌握的技能可能并不全面。
应用操作和维护
:
基础:linux基础/相应的语言环境,如tomcat/lamp/lnmp,应该能掌握安装、配置和日常维护操作。
高级:linux存储管理/安全加固/进程资源管理/网络管理,其他应用中间件如缓存(redis/memcached),mq(activemq/rabbitmq)等。)、服务发现和治理中间件(如zookeeper)和配置管理工具(如puppet/saltstack/cfengine等。).
高级:shell脚本可以轻松获取,linux内核/网络等常用参数的配置原理和优化场景,资源消耗的调查和优化,iptables、pam、selinux等安全机制的掌握。java运行时环境也需要熟悉jvm优化,gc日志分析,java线程栈分析等等。
此外,你需要知道一些事情:
虚拟化技术,如vmware/virtualbox/kvm。
虚拟化管理技术,如vsphere/convirt/ovirt/opennebula等。
docker的基本使用和管理
私有云平台,比如openstack/cloudstack。
公共云平台,如阿里云/aws
网络基础技术,如ip网络基础、osi七层、http/https/rpc协议、vlan、路由、nat、acl等概念及相关配置技术。
虚拟化和云运维方向
,如以商业化的vmware为例:
基础:esxi安装、配置和单主机管理;各种概念,如vm/datastore/vswitch;vcenter的基本管理,如模板、网络配置、克隆、迁移等。
高级:vcenter高可用性、vsphereha高可用性、vsphere容错、vmotion;如果您使用共享存储,您还需要了解fcsan/iscsi存储网络知识。
高级:vsphere站点恢复/vsphere数据保护/vsan管理等。
此外,如果您使用vmware的其他产品,如nsx/vrealize,您必须了解更多信息。
全面发展
,有如下一些需求主人:
基础:监控,如nagios/zabbix等基础配置;dns/nfs/ftp等服务配置;docker的基本使用和管理
高级:网络分析,如tcpdump/wireshark;;性能分析工具,如nmon/iftop/iotop;负载均衡,比如nginx/lvs/haproxy。学习一门脚本语言,比如python/perl/go。
高级:进程跟踪和故障分析,如strace/kdump/gdb。docker安排系统,如kubernetes/swarm等。还有日志分析麋鹿;;索引数据库influxdb/promethus等。
看起来很炫,但并不是什么都需要掌握。以下几个方面可以作为单独的发展方向。如果你能独立获得一个方向,你就已经进入运维架构师的级别了。
虚拟化和私有云管理方向
如果你独立获得openstack上的产品,它不会。;不要指望只是建立一个测试环境来玩。
docker与编排系统的方向
,比如在kubernetes上独立制作。
精细监控报警器的设计与实现
它不仅是一个单一的监控工具,如zabbix,也是一个简单的资源,网络和应用程序可用性的监控工具。它还应该包括日志分析和精细索引监控。
例如,领导标准日志的研究和开发,使用elk进行日志分析,并针对详细的业务场景发布准确的监控和业务数据可视化报告。
再比如使用influxdb/grafana或promethus收集硬件传感器/cpu/mem/io/eth/vm/docker等信息,然后构建精细化的资源使用报告。
然后集成日志分析/精细化资源监控,打通从业务-gt应用-gt资源-gt硬件的集成监控联动。
自动配置管理方向
,简单的用puppet/saltstack之类的平台加上一些定制的脚本来管理,开发一个高级的管理平台,和ui。
取决于实际工作中的应用场景、管理规模、自动化程度和监控要求。每个人美国人的精力是有限的。一个优秀的运维最需要的是一颗时刻保持学习的心和强大的自学能力。
主要工作如下:1.为linux下的各种网络服务、应用系统、监控系统开发自动化脚本,并根据项目优化系统性能;
2.负责网站项目中linux服务器的部署和维护,解决linux系统下的版本兼容问题。3.熟练部署和维护linux服务器,在linux服务器上设置各种服务;
4.写shell脚本5,lamp,lnmp和mysq。l、oracle数据库维护