我 2017 年毕业,毕业后也是从事的运维工程师,当时自己也不知道什么方向,只有一个大致的目标,就是以后成为架构师(^_^),当时我们有几个同学一块来到了深圳,平时周末都是一起吃个饭,偶尔有一个同学聊到他的领导,4 年工作经验,月薪 25k。
当时的我有了一些触动。于是我也定了目标,4-5 年也要拿到 25k。有了目标之后,自己平常工作的有了很大不同,之前都是做好自己应该做的,也学习新的知识,只是都是东看看西看看,不够系统,也不够细致。从那之后,我都会定一个短期的目标,从而去完成它。
过程是痛苦的,但是如果每天都能感觉自己进步了一点点,那感觉还不错。慢慢工作下来,我也逐渐找到了自己的方向,偏向持续集成,敏捷开发,结合 docker 和 k8s 以及一些自动化工具以及集成工具,最后再向架构师靠拢。
总结一下运维阶段性的技能吧。
1. 计算机组成原理,计算机操作系统(系统任务调度,进程与线程方面,以及用户态内核态的区别等等)
2. 计算机网络原理(TCP/IP 协议族,以及数据包在网络上是如何流动的)
3. 各种开源服务,包括但不限于 http,nfs,dns,mq,nginx,php,tomcat,elk, zabbix。除了会搭建维护之外,建议还要理解他们各自实现的协议原理(因为我感觉还是挺重要的,知其然还要知其所以然)
4. 版本控制工具 git,以及 git 工作流和它实现的原理
5. 持续集成工具 jenkins,CI/CD 流程控制,敏捷开发及代码发布流程
6. 开发脚本,shell 是最基础的,就目前来说,python 也成为标配了,出了平时写写脚本之外,还可以自己写点其他的东西(还是蛮有趣的),当然精力足够的话前端知识和 js 看看也不多,个人觉得全栈工程师还是挺帅的,还有一点就是理解整个的开发流程也可以帮助你快速定位问题。
7. 负载均衡以及高可用技术,比如说 lvs,haproxy,nginx,keepalived,要分清楚四层负载以及七层负载的区别,以及其中的分发算法的区别及联系(这个没得说了吧,服务可用性不是运维的最希望的吗)
8. 容器技术及容器编排工具,docker,k8s。一个人要想进步,不学习肯定是不行的吧,况且容器这些知识现在也不算新了。
9. 分布式文件系统,以及分布式服务,缓存系统等等,如果有高负载高并发的处理经验还是很吃香的呀。
大致就是以上所说的了的吧,当然肯定还有其他一些方面,需要自己结合自己的工作去总结。
共勉。
当时的我有了一些触动。于是我也定了目标,4-5 年也要拿到 25k。有了目标之后,自己平常工作的有了很大不同,之前都是做好自己应该做的,也学习新的知识,只是都是东看看西看看,不够系统,也不够细致。从那之后,我都会定一个短期的目标,从而去完成它。
过程是痛苦的,但是如果每天都能感觉自己进步了一点点,那感觉还不错。慢慢工作下来,我也逐渐找到了自己的方向,偏向持续集成,敏捷开发,结合 docker 和 k8s 以及一些自动化工具以及集成工具,最后再向架构师靠拢。
总结一下运维阶段性的技能吧。
1. 计算机组成原理,计算机操作系统(系统任务调度,进程与线程方面,以及用户态内核态的区别等等)
2. 计算机网络原理(TCP/IP 协议族,以及数据包在网络上是如何流动的)
3. 各种开源服务,包括但不限于 http,nfs,dns,mq,nginx,php,tomcat,elk, zabbix。除了会搭建维护之外,建议还要理解他们各自实现的协议原理(因为我感觉还是挺重要的,知其然还要知其所以然)
4. 版本控制工具 git,以及 git 工作流和它实现的原理
5. 持续集成工具 jenkins,CI/CD 流程控制,敏捷开发及代码发布流程
6. 开发脚本,shell 是最基础的,就目前来说,python 也成为标配了,出了平时写写脚本之外,还可以自己写点其他的东西(还是蛮有趣的),当然精力足够的话前端知识和 js 看看也不多,个人觉得全栈工程师还是挺帅的,还有一点就是理解整个的开发流程也可以帮助你快速定位问题。
7. 负载均衡以及高可用技术,比如说 lvs,haproxy,nginx,keepalived,要分清楚四层负载以及七层负载的区别,以及其中的分发算法的区别及联系(这个没得说了吧,服务可用性不是运维的最希望的吗)
8. 容器技术及容器编排工具,docker,k8s。一个人要想进步,不学习肯定是不行的吧,况且容器这些知识现在也不算新了。
9. 分布式文件系统,以及分布式服务,缓存系统等等,如果有高负载高并发的处理经验还是很吃香的呀。
大致就是以上所说的了的吧,当然肯定还有其他一些方面,需要自己结合自己的工作去总结。
共勉。