一个老运维的心里话

2016-02-16 17:35:58 9512

[转载]原创 谭志宇 运维帮

作者简介

谭志宇,运维总监@胡莱游戏

熟悉运维自动化,擅长架构设计,熟悉各种云平台技术和产品、负责设计开发运维平台管理体系。

其实我本没有想过要写这篇文字,但有次和业内的一位技术朋友聊起当前互联网技术的话题,聊了很多东西,从互联网产业的崛起、蓬勃发展、未来的走向又聊到互联网技术起步、变化、开源、融合......等等。

    我本是运维出身,不可避免的会聊些运维类的话题,其中就有最近一两年运维工程师招聘难的现象,朋友说:你何不写篇文章让新入行的运维朋友看看你们这些搞了多年运维老人的一些看法、想法呢?当时我也只是端起桌上的水杯喝了一口,然后一笑而过,说了一个字:难!

    不难写,但难于让人理解。

    回家后我也没把这个事情当回事儿,直到有一天看不到不少运维的朋友在QQ群里喊:哪里有运维的坑啊而另一边微信群里很多公司的运维管理层也在喊:求推荐各种运维人才!才越发感觉这需求关系的不对称,为什么会出现这样的现象呢?我晚上回家仔细的考虑了下。

    任何一件事物的出现都有起因,要说明白运维这事儿还得从头说起我把运维的进化同互联网的发展结合在一起分成几个阶段来讲!

    2000年前:启蒙

    这个时候互联网公司极少,就几个门户网站,上网有56KbpsModem就已经很牛了,能出去向朋友炫耀的,那个时候QQ还不叫QQ,叫OICQ,那个时候的聊天室也不像现在的聊天室,都是本地化的叫什么xxx信息港,你想跟其他省市的人聊天?除了当时一些很牛逼的技术人士,其他人只能拿起当时的大哥大(模拟手机)或是bp机呼叫然后等回电话,那个时候运维貌似没有完整的概念,当时我碰到过两次,一个是中医大学的计算机老师,负责整个学校的网络建设,听说主要是搞Linux的,把我羡慕的不行,好牛逼啊,另一个是通管局系统开发兼职服务器维护,听说是国防科大出来的,膜拜啊。UNIX Server和小型机在那时都是高端货,一般人接触不到,大部分的服务器需求在于传统IT市场,如果企业、学校、政府等。

    几乎没有人说自己是搞运维的! 到2000年的这个时候已经开始有电子商务的概念了! 

    2000-2005年:发展

    这时期技术形态开始分散,开发和运维有明显的工作区分了。 网络层面,开始是ISDN,后来是ADSL,慢慢的光纤网络开始进入市场,家用电脑开始进入千家万户。

    互联网方面呢,网游开始进入国内,当时最出名和牛掰的就是盛大的《传奇》,那叫一个火的一塌糊涂; OICQ开始叫QQ了,用户数量呈爆发式增长;搜索、音视频网站、交友网站等开始出现。

    通讯行业由于手机快速迭代,带彩屏的数字机开始出现,BP机慢慢退出市场,由于手机功能的发展,开始 出现彩信、彩铃等电信增值业务。

    技术的实现方向也开始复杂化,高端存储、负载均衡、CDN等开始大量运用部署;运维职业化开始逐步的进 入人们视野,由后台走向前台,并开始发挥这个职业应有的专业性。

    这个时期运维人员的素质和技术水平还是相当值得信赖的,大部分是由开发因为公司需求和工作的细化转过来。而且五年时间的进化,这部分人不但带动了整个运维职业的转化,且使运维体系越来越成熟,在技术及业务稳定性管理等各方面都留传下了很多宝贵的经验。

    现在互联网行业内大部分中高层运维人员基本都是从这个时候出来的。

    2005-2010:开启火箭上升模式 

    这段时间互联网发展快的有点不像话,几乎让人跟不上节奏,也让局外人看得眼花缭乱。很多传统行业的朋友对互联网的评价就是两个字:金山。

    网络这时候家里如果没有个专线、光纤,出门都不好意思跟人说你是搞互联网的。

    行业内电商、社交、视频、婚恋社交、游戏、IM、垂直类产品、IDCCDN、分析类等互联网相关联的产品飞速发展,不仅产品越来越完善,技术也是跟着快速迭代,研发类的就不说了,运维类的如LVS、 HaproxyNginxApacheMySQL、分布式存储、分布式IDC、高并发等等,自动化运维的概念也开始兴起。

    由于互联网的发展需求更多带宽质量更好的基础网络,人们对于信息快速获取和交换有了更高的要求,于是通讯行业也红红火火起来,这个时候也是智能手机兴起发展的最好时机。

    由于是互联网的黄金期,越来越多的人加入到了互联网发展的大潮中,由于各个公司的人才需求量暴增,各种技术培训班也应运而生,网络类、研发类、运维类、设计类等。

    2010-2015:已经升到太空啦

    电商、社交、互联网金融、云计算、游戏、视频、手机APP等都已经是人们口中火的不能再火的词语了,如果你不知道这些,感觉你就是从火星来的一样,这个时候不光是开发、运维、设计、产品等职业人员大幅度 扩充,就连传统行业的各类大咖都开始加盟互联网公司了,很多人感叹互联网的春风来的真是不够温柔,够狂野!

    这是大数据、云计算的时代:人的欲望是跟着获得的多少来决定的(当只有一个馒头的时候,他的欲望是获得一顿好吃的饭菜,当能做飞机了,他的欲望可能是遨游太空),当人们不再满足普通的信息获取、信息交换时,更多的欲望需求随之而来,商业公司的产品也不可能一成不变,他们需要更多的概念,用不断更新更加人性化的产品来满足人们不断膨胀的需求和投资人对未来的期望。

    这个时候整个产业的转变和人思想的变化将是划时代的里程碑,比如将改变人们生活习惯、进化生产力、彻底满足人类惰性的等等想法和产品开始出现了。

    大数据、云计算、智能穿戴、智能机器人、无人驾驶汽车等就是其中的一部分。

    产业的变化带动产品变化,同样带动技术的变化,你变我也变,大家一起变也能变的更好,否则你就要被淘汰了。

    结合上面说的互联网环境,加上最近几年的经历,让我觉得云计算遮天蔽日的现在,技术行业受到最大的冲击、威胁和变化的就是运维职业。

    为什么呢?我们来看看以前运维的一些主要工作。

        基础工作:

        评估产品 

        选择IDC公司 

        采购服务器 

        安装配置服务器 

        把服务器送IDC上架

        调试网络

        上线代码、配合研发调试代码

        监控服务器、各种业务应用、收集日志和报警 

        根据收集到各种日志信息,配合研发做优化 

        解决日常问题,如服务器、交换机、硬件、网络等 

    更高级的工作:

        编写各种自动化脚本

        自动化部署

        开发运维管理平台

        开发运维衍生产品

        改变运维模式,提升服务意识 

    现在云计算出现了,上面这15项目工作内容,云平台能抹杀掉所有的基础类工作。因为这部分工作对于像 AWS、腾讯云、阿里云之类的云技术公司来说,只要给他们一点时间,我相信他们会做的更好更稳定更加完善。

    那么从事这部分工作的运维人员将何去何从?而且目前这部分的运维人员占了相当大的一部分数量。 

    我将目前从事运维职业的朋友按时间大致分了三个类别

        第一批:2007年之前,目前这类朋友基本占据各公司中高层职位 

        第二批:2008-2013年,这部分运维朋友基本是公司的中流砥柱,在主要的技术或是管理岗位 

        第三批:2013年之后从事运维工作的朋友,基本在做最基础的运维工作

    按来源也分了三个类:

        第一类:学校里计算机学习成绩不错的一般都往BAT一二线公司去了,大部分还是从事研发类工作,留下一部分学习成绩一般的学生勉强去面试运维工作。

        第二类:由于当前互联网搞的如火荼毒,薪水高,工作自由(吹的)等吸引了一大批初高中毕业,大学辍学的小伙子参与的培训班,当然这里面也有不少学的还不错的同学。

        第三类:在其他行业搞不下去,或是公司内部转岗干运维的。

     这三类运维人员里面,第一类的朋友如果能努力学习,会出几个非常不错的好苗子,但就是这样寥寥的几个也都是希望往BAT一二线互联网公司挤。 

    第二类和第三类,基础相对来说很薄弱,薄弱到什么程度呢,数据结构的书都没有摸过,高等数学就不用多说了,这类的运维人员上岗了,除了系统操作,搞搞配置,能力强的可以搞搞phppython的基础页面开发,其他研发类东西基本就是不行,而且很多东西没有学过,在解决问题和考虑问题上思维也很有局限性。 当然我不是指所有人,妖孽总会有那么一两个的!

    关键是目前第二三类的朋友刚好处于公司一线,数量不少。

    那么在云计算时代,第二类和第三类大部分的运维朋友(这类朋友占了很大一部分比例,预计有60%)如果 自己不努力的话,近几年一定是会被淘汰的。

    如何保证将来不太淘汰,并且能更进一步呢,我个人提几点建议,如果你能看到这篇文章,且能从现在开始实施行动,我相信将来你一定会很好!

    一、转变思想:放弃不切实际的想法

    不要认为搞了运维就是为了找份工作养活自己,或是期望自己走了狗屎运找一家公司能混到上市实现财务自由后享受养豪车包二奶的生活,你也不想想国内这么多家创业公司,每年能有几家上市?你一定要把它当成自己未来几十年的职业!是自己赖以生存,并能体现自己价值的根本。

    二、从现在开始学习:从基础学

    温习以前学过的,学习以前没有学过的基础知识,比如微机原理、数据结构、算法、TCP、网络、程序设计 等等,这些东西就是你将来更上一层的根。虽然会很枯燥,但是只要坚持下来,一定会有很多收获。

    三、少看网上的文章:形成自己的知识点

    网上发表的技术文章少看,并不是说网上的文章怎么怎么不好,而要形成的知识,就必须自己多思考多做实验,在各种出错成功后你才能记忆深刻,才能成为你自己的知识。

    如果你非要完全照搬的话,那你就给在脑子里全记下来。现在很多人面试的时候让他说下某个配置怎么做,怎么优化,都是回答在笔记里,或是百度,我听到这些实在是无语,难不成出现紧急故障需要你修复的时候你还去翻笔记、用百度?

    四、纵向学习:深入某一个点

    现在很多初学者喜欢广撒网,看别人搞这个也学,看别人搞那个也学,甚至有部分运维人员还专门喜欢猎奇,搞别人不知道或是非常小众的技术,以此来炫耀自己。说的难听点,在我看来这非常的幼稚,首先不说这东西你现在是否适用,关键是你把精力耗在这上面,自己经常用的那些技术点都没有整明白,出了问题还要请教别人。

    我曾经就碰到过某个创业的公司运维朋友,公司小架构也简单,开始我就告诉他,先把各种业务关系和功能 理清,能拆分的拆分,把监控报警做好,有时间做好自动化,多考虑未来的扩展性,结果他没事一阵儿整 openstack,一阵儿搞分布式存储,一阵儿又搞其他的,也不会写代码,一个人也没整出啥堂,然后过了 半年再跟他聊的时候,公司拿到钱了急剧扩张,以前的架构要改造,如何改造他自己没有一点思路,很多细 节搞不清楚,结果本来是他妥妥的运维经理位置,自己担不起来只能拱手让给别人。其实只要他把这半年的 时间利用起来把自己现有的架构(多和研发沟通)和用到的技术点研究透彻,我相信也不至于如此尴尬。

    五、成为专家:你就牛逼

    如果你上述四点做好,那么你就离某一方面的专家仅一步之遥,这个时候你需要更加努力的学习,把某个方 面的技术发展史,代码的优缺点弄的明明白白,如果能修改代码或是二次开发那就更牛逼了,你需要多吸取 与此技术相关联的知识,多和研发前辈们交流,然后老老实实沉浸于此几年时间,之后在某个鸡鸣狗叫的时 刻,你会突然发现自己涅槃重生了,受到各种膜拜,各种高薪offer

    知识无止境,你知道越多发现学的越少。

提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: