转载:一个老运维的心里话
https://tieba.baidu.com/p/4356267156?red_tag=3195727331
功能介绍 互联网技术分享平台,分享的力量。帮主一直坚信技术可以改变世界,从毕业到现在干了15年运维,有许多话要和你说。
熟悉运维自动化,擅长架构设计,熟悉各种云平台技术和产品、负责设计开发运维平台管理体系。
正文其实我本没有想过要写这篇文字,但有次和业内的一位技术朋友聊起当前互联网技术的话题,聊了很多东西,从互联网产业的崛起、蓬勃发展、未来的走向又聊到互联网技术起步、变化、开源、融合......等等。
我本是运维出身,不可避免的会聊些运维类的话题,其中就有最近一两年运维工程师招聘难的现象,朋友说:你何不写篇文章让新入行的运维朋友看看你们这些搞了多年运维老人的一些看法、想法呢?当时我也只是端起桌上的水杯喝了一口,然后一笑而过,说了一个字:难!
不难写,但难于让人理解。
回家后我也没把这个事情当回事儿,直到有一天看不到不少运维的朋友在QQ群里喊:哪里有运维的坑啊? 而另一边微信群里很多公司的运维管理层也在喊:求推荐各种运维人才!才越发感觉这需求关系的不对称,为什么会出现这样的现象呢?我晚上回家仔细的考虑了下。
任何一件事物的出现都有起因,要说明白运维这事儿还得从头说起: 我把运维的进化同互联网的发展结合在一起分成几个阶段来讲!
2000年前:启蒙
这个时候互联网公司极少,就几个门户网站,上网有56Kbps的Modem就已经很牛了,能出去向朋友炫耀的,那个时候QQ还不叫QQ,叫OICQ,那个时候的聊天室也不像现在的聊天室,都是本地化的叫什么xxx信息港,你想跟其他省市的人聊天?除了当时一些很牛逼的技术人士,其他人只能拿起当时的大哥大(模拟手机)或是bp机呼叫然后等回电话,那个时候运维貌似没有完整的概念,当时我碰到过两次,一个是中医大学的计算机老师,负责整个学校的网络建设,听说主要是搞Linux的,把我羡慕的不行,好牛逼啊,另一个是通管局系统开发兼职服务器维护,听说是国防科大出来的,膜拜啊。UNIX Server和小型机在那时都是高端货,一般人接触不到,大部分的服务器需求在于传统IT市场,如果企业、学校、政府等。
几乎没有人说自己是搞运维的! 到2000年的这个时候已经开始有电子商务的概念了!
2000年-2005年:发展
这时期技术形态开始分散,开发和运维有明显的工作区分了。 网络层面,开始是ISDN,后来是ADSL,慢慢的光纤网络开始进入市场,家用电脑开始进入千家万户。
互联网方面呢,网游开始进入国内,当时最出名和牛掰的就是盛大的《传奇》,那叫一个火的一塌糊涂; OICQ开始叫QQ了,用户数量呈爆发式增长;搜索、音视频网站、交友网站等开始出现。
通讯行业由于手机快速迭代,带彩屏的数字机开始出现,BP机慢慢退出市场,由于手机功能的发展,开始 出现彩信、彩铃等电信增值业务。
技术的实现方向也开始复杂化,高端存储、负载均衡、CDN等开始大量运用部署;运维职业化开始逐步的进 入人们视野,由后台走向前台,并开始发挥这个职业应有的专业性。
这个时期运维人员的素质和技术水平还是相当值得信赖的,大部分是由开发因为公司需求和工作的细化转过来。而且五年时间的进化,这部分人不但带动了整个运维职业的转化,且使运维体系越来越成熟,在技术及业务稳定性管理等各方面都留传下了很多宝贵的经验。
现在互联网行业内大部分中高层运维人员基本都是从这个时候出来的。
2005年-2010年:开启火箭上升模式
这段时间互联网发展快的有点不像话,几乎让人跟不上节奏,也让局外人看得眼花缭乱。很多传统行业的朋友对互联网的评价就是两个字:金山。
网络这时候家里如果没有个专线、光纤,出门都不好意思跟人说你是搞互联网的。
行业内电商、社交、视频、婚恋社交、游戏、IM、垂直类产品、IDC、CDN、分析类等互联网相关联的产品飞速发展,不仅产品越来越完善,技术也是跟着快速迭代,研发类的就不说了,运维类的如LVS、 Haproxy、Nginx、Apache、MySQL、分布式存储、分布式IDC、高并发等等,自动化运维的概念也开始兴起。
由于互联网的发展需求更多带宽质量更好的基础网络,人们对于信息快速获取和交换有了更高的要求,于是通讯行业也红红火火起来,这个时候也是智能手机兴起发展的最好时机。
由于是互联网的黄金期,越来越多的人加入到了互联网发展的大潮中,由于各个公司的人才需求量暴增,各种技术培训班也应运而生,网络类、研发类、运维类、设计类等。
2010年-2015年:已经升到太空啦
电商、社交、互联网金融、云计算、游戏、视频、手机APP等都已经是人们口中火的不能再火的词语了,如果你不知道这些,感觉你就是从火星来的一样,这个时候不光是开发、运维、设计、产品等职业人员大幅度 扩充,就连传统行业的各类大咖都开始加盟互联网公司了,很多人感叹互联网的春风来的真是不够温柔,够狂野!
这是大数据、云计算的时代:人的欲望是跟着获得的多少来决定的(当只有一个馒头的时候,他的欲望是获得一顿好吃的饭菜,当能做飞机了,他的欲望可能是遨游太空),当人们不再满足普通的信息获取、信息交换时,更多的欲望需求随之而来,商业公司的产品也不可能一成不变,他们需要更多的概念,用不断更新更加人性化的产品来满足人们不断膨胀的需求和投资人对未来的期望。
这个时候整个产业的转变和人思想的变化将是划时代的里程碑,比如将改变人们生活习惯、进化生产力、彻底满足人类惰性的等等想法和产品开始出现了。
大数据、云计算、智能穿戴、智能机器人、无人驾驶汽车等就是其中的一部分。
产业的变化带动产品变化,同样带动技术的变化,你变我也变,大家一起变也能变的更好,否则你就要被淘汰了。
结合上面说的互联网环境,加上最近几年的经历,让我觉得云计算遮天蔽日的现在,技术行业受到最大的冲击、威胁和变化的就是运维职业。
为什么呢?我们来看看以前运维的一些主要工作。
基础工作:
1.评估产品 2.选择IDC公司 3.采购服务器 4.安装配置服务器 5.把服务器送IDC上架6.调试网络7.上线代码、配合研发调试代码8.监控服务器、各种业务应用、收集日志和报警 9.根据收集到各种日志信息,配合研发做优化 10.解决日常问题,如服务器、交换机、硬件、网络等
更高级的工作:
1.编写各种自动化脚本2.自动化部署3.开发运维管理平台4.开发运维衍生产品5.改变运维模式,提升服务意识
现在云计算出现了,上面这15项目工作内容,云平台能抹杀掉所有的基础类工作。因为这部分工作对于像 AWS、腾讯云、阿里云之类的云技术公司来说,只要给他们一点时间,我相信他们会做的更好更稳定更加完善。
那么从事这部分工作的运维人员将何去何从?而且目前这部分的运维人员占了相当大的一部分数量。
我将目前从事运维职业的朋友按时间大致分了三个类别:
■第一批:2007年之前,目前这类朋友基本占据各公司中高层职位 ■第二批:2008年-2013年,这部分运维朋友基本是公司的中流砥柱,在主要的技术或是管理岗位 ■第三批:2013年之后从事运维工作的朋友,基本在做最基础的运维工作
按来源也分了三个类:
■第一类:学校里计算机学习成绩不错的一般都往BAT一二线公司去了,大部分还是从事研发类工作,留下一部分学习成绩一般的学生勉强去面试运维工作。■第二类:由于当前互联网搞的如火荼毒,薪水高,工作自由(吹的)等吸引了一大批初高中毕业,大学辍学的小伙子参与的培训班,当然这里面也有不少学的还不错的同学。■第三类:在其他行业搞不下去,或是公司内部转岗干运维的。
这三类运维人员里面,第一类的朋友如果能努力学习,会出几个非常不错的好苗子,但就是这样寥寥的几个也都是希望往BAT一二线互联网公司挤。
第二类和第三类,基础相对来说很薄弱,薄弱到什么程度呢,数据结构的书都没有摸过,高等数学就不用多说了,这类的运维人员上岗了,除了系统操作,搞搞配置,能力强的可以搞搞php,python的基础页面开发,其他研发类东西基本就是不行,而且很多东西没有学过,在解决问题和考虑问题上思维也很有局限性。 当然我不是指所有人,妖孽总会有那么一两个的!
关键是目前第二三类的朋友刚好处于公司一线,数量不少。
那么在云计算时代,第二类和第三类大部分的运维朋友(这类朋友占了很大一部分比例,预计有60%)如果 自己不努力的话,近几年一定是会被淘汰的。
如何保证将来不太淘汰,并且能更进一步呢,我个人提几点建议,如果你能看到这篇文章,且能从现在开始实施行动,我相信将来你一定会很好!
一、转变思想:放弃不切实际的想法
不要认为搞了运维就是为了找份工作养活自己,或是期望自己走了狗屎运找一家公司能混到上市实现财务自由后享受养豪车包二奶的生活,你也不想想国内这么多家创业公司,每年能有几家上市?你一定要把它当成自己未来几十年的职业!是自己赖以生存,并能体现自己价值的根本。
二、从现在开始学习:从基础学
温习以前学过的,学习以前没有学过的基础知识,比如微机原理、数据结构、算法、TCP、网络、程序设计 等等,这些东西就是你将来更上一层的根。虽然会很枯燥,但是只要坚持下来,一定会有很多收获。
三、少看网上的文章:形成自己的知识点
网上发表的技术文章少看,并不是说网上的文章怎么怎么不好,而要形成的知识,就必须自己多思考多做实验,在各种出错成功后你才能记忆深刻,才能成为你自己的知识。
如果你非要完全照搬的话,那你就给在脑子里全记下来。现在很多人面试的时候让他说下某个配置怎么做,怎么优化,都是回答在笔记里,或是百度,我听到这些实在是无语,难不成出现紧急故障需要你修复的时候你还去翻笔记、用百度?
四、纵向学习:深入某一个点
现在很多初学者喜欢广撒网,看别人搞这个也学,看别人搞那个也学,甚至有部分运维人员还专门喜欢猎奇,搞别人不知道或是非常小众的技术,以此来炫耀自己。说的难听点,在我看来这非常的幼稚,首先不说这东西你现在是否适用,关键是你把精力耗在这上面,自己经常用的那些技术点都没有整明白,出了问题还要请教别人。
我曾经就碰到过某个创业的公司运维朋友,公司小架构也简单,开始我就告诉他,先把各种业务关系和功能 理清,能拆分的拆分,把监控报警做好,有时间做好自动化,多考虑未来的扩展性,结果他没事一阵儿整 openstack,一阵儿搞分布式存储,一阵儿又搞其他的,也不会写代码,一个人也没整出啥堂,然后过了 半年再跟他聊的时候,公司拿到钱了急剧扩张,以前的架构要改造,如何改造他自己没有一点思路,很多细 节搞不清楚,结果本来是他妥妥的运维经理位置,自己担不起来只能拱手让给别人。其实只要他把这半年的 时间利用起来把自己现有的架构(多和研发沟通)和用到的技术点研究透彻,我相信也不至于如此尴尬。
五、成为专家:你就牛逼
如果你上述四点做好,那么你就离某一方面的专家仅一步之遥,这个时候你需要更加努力的学习,把某个方 面的技术发展史,代码的优缺点弄的明明白白,如果能修改代码或是二次开发那就更牛逼了,你需要多吸取 与此技术相关联的知识,多和研发前辈们交流,然后老老实实沉浸于此几年时间,之后在某个鸡鸣狗叫的时 刻,你会突然发现自己涅槃重生了,受到各种膜拜,各种高薪offer。
六、学会做事:
有的公司小,实行的是扁平化管理;有的公司大,实行的是层级式管理。两种管理方式在公司不同的发展阶段有不同的优缺点。有不少刚入门或是已经在公司干了一两年的朋友肯定听过前辈们谈论公司的办公室政治,如何如何复杂等,其实就如同有人的地方就有江湖一样,有办公室的地方就一定会有办公室政治。
对我们刚刚进入公司的朋友来说,在这样的情况怎么好好工作呢?其实很简单---搞清自己的位置,做好自己的事情。这句话说起来很简单,但是真正做到的却没有几个人。不管是哪种管理模式的公司,真正放心放权的管理人也没有多少,大家平时可能会碰到越级安排工作,或是越级汇报的情况。如何处理呢?
一、跨部门情况:
有别人的部门领导自以为跟老板关系好,喜欢越过你部门的领导直接让你接活,这个时候你直接拒绝也不好,直接答应也很尴尬,那么你可以委婉的说自己手头上还有其他的事情,先看下时间安排,待会儿答复;或是先接下来,跟自己部门领导汇报后听领导安排。
二、本部门内的越级汇报和越级安排(领导的领导)
这样的事情我相信很多人碰到过,而且很多人经常喜欢这么干,那么作为小小弟的我们怎么办?先接下,然后跟自己的直接领导说下这个事情的原委,这样事情也办好了,自己的直接领导也知道事情的原因该知道怎么做了。
但是如果你不说,掖着瞒着的话,迟早会出问题的。至少部门内氛围不谐和是肯定的,时间长了会直接导致部门内部四分五裂,大家都会想着直接给大领导汇报、刷脸、邀功,时间一长这个部门主管基本就没什么威信了;但是大领导又不可能每天都关注下面各部门每个人的工作细节,还是得通过部门主管去安排,这个时候下部门主管已经没有威信了,那么这个部门的执行力就会大大降低,大家明面不反对,各种阴奉阳违就必须的。
这样就会经常出问题,出了问题部门主管就会挨骂,整个部门的KPI就会不好看,那么作为部门里的员工就会 过的很好嘛?肯定不会,因为你的KPI还得你的部门主管来评定。最终苦的还是自己!
结论:多汇报、多沟通、多做少说、按时完成。
七、与人为善:做一个平和的人
有句俗话说:伸手不打笑脸人,意思是说不管在何时都要记得与人为善,与人交往面带微笑,与人交谈诚恳倾听。就算你以后出点差错,别人也会给你一条退路。如果做不到,或是看不惯某些事,也要保持中正平和的心态。但是现在很多初中级的运维人员,一旦发现自己知道的技术点别人不知道,立马尾巴高跷,各种讽刺嘲弄、看不起别人,还有的如藏家珍,怎么问都不说;反而那些老一辈的研发,高级的运维工程师,每次跟别人交谈不管自己是否知道,都会侧耳倾听,等别人说完了才说出自己的看法。给与别人足够的尊重,这就是处世最基本的原则。
当然如果你正好知道某一个别人不知道的而去帮助别人,总有一天你也会得到别人的帮助。
知识无止境,你知道越多发现学的越少。
(完)
附:以上内容纯属个人观点,互联网这个产业越来越大,包罗了太多的东西,某些内容我只能取一点来说,可能有些地方也并不完善,如果此文能帮助到一些运维朋友有所进步,我甚感欣慰;如果有的朋友觉得不值一提,那就请一笑而过吧。