作为一个一毕业就从事运维相关工作的人也来回答下吧。

15年毕业,至今一直在做运维相关的工作,由于运维是一个领域很广的行业,所以虽然一直是运维相关的工作,但其实具体的事情都是不同的。

通常情况下来讲,大厂的运维一般会分运维部或技术运营部,但不论叫什么,做的都是运维相关的事,而通常下属部门会分为如下几个分支:

SRE

其实SRE最早是从谷歌传过来的,在WEB2.0时代是负责网站的可靠性工程的,到互联网和移动互联网时代后就衍生成对系统的可靠性保障的角色,而该角色的要求也比较高,需要对计算机技术体系比较了解,同时对运维,业务,开发技能都有一定的要求,工作内容也基本上运维和开发工作对半。通俗来讲就是对负责的目标系统以技术的手段来进行运维保障。

但是国内在前几年对于运维行业的重视程度和人才梯度的建设导致很少有人能达到真正谷歌SRE的要求,所以在很长一段时间,国内的互联网企业里都会有应用运维(PE)或业务运维的角色来负责目标系统的稳定性建设,唯一的区别可能就是对于开发技能上稍微有点弱。

而对于SRE来讲,通常也会分为具体目标系统,比如负责业务系统的SRE,以及具体某个中间件的SRE,两者对于具体的人员要求也是不一样的。比如QQ邮箱这个业务SRE,需要对整个邮箱的业务架构,以及技术体系有很好的理解之后才能进行很好的实施运维保障,而邮箱这种业务系统可能每家企业的业务架构都是不相同的,还有就是比如像Kafka,Redis,ElasticSearch等中间件的SRE,虽然可能上面承载的业务场景不同,但大体类似,而且中间件都是开源形态的移植,大体都是相同的。

网路运维

负责整个公司办公网和IDC机房网路的架构设计和规划,以及网路质量保障。到整个云时代后,网路运维就只存在于大厂了,因为通常云上都会提供相关的产品以及相关的服务来保障网路。

系统运维

在以前,系统运维更多的负责硬体机器的选型,机器上架,安装和优化操作系统等等,但是到整个云时代后,各大云厂商直接提供虚拟机服务,也就导致了该角色也只存在于大厂中了。

DBA

DBA即资料库管理员,通常会管理企业内部的各种资料库服务,比如Oracle,MySQL,Mongo,ElacticSearch,Redis等等,算是属于运维里比重要的角色了,因为数据重要性想必大家很清楚了。

运维开发

运维开发通常就是在整个运维或技术运营部门专职负责开发的人,只是开发的系统的业务场景都是应用在各种运维场景,比如监控系统,构建发布系统,网路管理系统等等。

不过随著近两年整个行业对运维行业的重视,导致各个领域的运维角色基本都会开发技能,因此更多开发需求,也都基本上被各个需求方内部自己解决了。

大的分类就是以上几种了,但不论是那种运维,大家的最终目的都是稳定性、可用性、成本、效率,质量。那在具体做事的时候,很多软技能也都是相通的。

接下来回答两个问题。

1.运维工作很无趣吗?

讲真,不论是那种运维,通常来讲都会有一段无趣的时光,但这不代表运维工作就很无趣,实际上得看个人的一个喜好。

在企业内部,通常一个项目或者一个技术刚开始的时候,还是非常有趣的,在这个过程中我们会接触不同的技术和业务,同时也会由于业务的增长会不断对运维和技术架构进行升级和改造,在这个过程中会学习到很多新知识和技能,当然也会有很多挑战(通常加班加点都是很平常的),所以有这样的机会通常是非常有趣的,而且也意味著你会变得更有价值。

但是一旦业务区域稳定,或者长期负责某一块(也有可能需求多,但运维人员少),就会发现其实工作有点无趣,因为工作内容基本都是日常操作,有点日复一日操作工的感觉,此时可能需要关注自己的状态,及时反馈或在团队内部重新寻找有趣的事情。

不过有趣这件事,好像对于整个技术行业来讲都是如此。如果既学不到东西,也没机会做一些新东西,那好像都挺无趣的。

2.运维工作值不值得做

很确定的说,如果你想在整个技术领域有一定的追求,那运维工作是很值得去做一做的。

前面也说到了,整个运维的目标是稳定性、可用性、成本、效率,质量。想要做到如上几个目标,除了技术本身之外,其实需要考虑很多复杂的因素,在这个过程中,会让人有著更全面、更缜密的思考,而且随著整个互联网的发展,越来越多的公司对运维工作也越来越重视了,而且通常来讲,只要整体不错,运维的待遇也是相当好的。

当然运维工作也有一些定性的特征,比如通常需要7*24 on call,并不是说24小时不睡,而是需要时刻准备著战斗;同时也可能会有背锅的嫌疑,这就需要我们不断寻找蛛丝马迹,来证明不是我们的锅,这个过程其实挺有趣的。

既然能问这个问题,说明对运维有一定了解,如果你能接受7*24的on call,并且对技术有一定追求,那运维工作非常值得做。

希望回答能帮到你。


漫漫长路之运维工程师从入门到删库

作者:palomino

首发:牛客网

入门介绍

运维这职位比较适合不断学习的筒子,打个比喻,码代码的职业发展曲线是平滑上升,那么相比之下,运维就是阶梯式的,需要各位掌握非常全面的知识,学习成本非常高,要等到当前所有技能点都点满才能到下一阶段。

举个栗子,SQL执行效率慢的原因排查,有主机性能差导致负载高,索引问题效率低下,资源分配等。

简单的SFTP传输文件为何失败率高的解决思路,就涉及伺服器ssh内部配置,域名解析,TCP/IP的并发数检查。

可以看到运维招聘职位要求可能非常多,但高级的人才非常难找,基本跑去大厂了,还换著职位title抢人。

随著互联网行业的「工具化」水平越发达,更迭越快,企业开放的中级职位也就越容易被初级突击培训的新人取代。

即便干了十几年的老员工,一旦懈怠下来的,估计连基础命令都快忘得差不多了。

所以这一行非常讲究持续学习,否则到年纪还是转管理岗比较合适。

半路出家的可能转开发还顺利,但为什么难转运维?

就是因为计算机方面很多体系架构东西没有学过,碰到问题用什么方法解决就会有局限性。

单单一个SQL执行问题分析,要靠对资料库的流程理解,包括登录、解析、执行、提交返回,分别在这几个阶段进行横向对比。

职业经历

我第一家公司是外企,基本上伺服器的分配管理,业务软体包括版本更新,资料库导出报表分析等都有专人负责。业务系统里面的东西万年不变,到点自动运行服务,操作资料库CURD实现下工单的要求,查看一下监控系统日志是否报错,基本没有啥工作,报错就通知下相关负责人,技术上也用不到太多。工作相对轻松稳定,一年差不多有20天的休假,所以主管过了年中,有一个重要的工作内容就是劝人休假。国外的team基本被印度人把持,可见低端的运维工作也会逐渐被外包。所以尽管收入一般但福利实在好到不好意思用,很多老员工如果没碰上大的变动基本不会换人。责任都是大家一起背,操作流程特别多,删库的难度是比较大的。

下家公司是电商方向的,主要负责tomcat和一些故障处理的脚本编写,替开发测试背锅,每逢过节和上线版本部署都要通宵确认没有异常,其他时间就是开会,处理下面提交的工单,培训新人,流动性真的大。干个二三年,你会发现运维工作开始转向开发和少量一线人员,要是一直满足现状,公司服务量起来后,个人知识储备没法满足需求,自己的位置恐怕还是要让给新人的。也不要想著一口气吃成胖子,不要以为当上主管,就可以为所欲为。推动新的CI/CD架构也要得到老板支持,毕竟让人跳出熟悉的模式也是阻力非常大的。尽管一线运维待遇比开发平均薪酬要低,不过运维主管还是很高的,毕竟整个部门是独立的,主要理顺上下级人脉,各种对外服务对接都需要这么一个人,无可替代。

再往上走,估计就涉及业务公有云、私有云、混合云,都能拿来玩玩,涉及接触各种docker,k8s应用。以后集中管理大势所趋,动态分配业务,加上新架构模式上的改进。领先的智能化运维公司有BMC等,可惜人家看不上咱。应对大幅增加的服务复杂性,为了跟上新需求,安全性、成本、性能都要考虑。技能方面Python,Go,JAVA不需要顶级码农水平,但基本的代码编写,环境搭建还是要会的。

删库后如何跑路

干了一段时间发觉职位不合适的社会人,想转开发建议先混到大厂,那里职位多,选择也多。

运维主要的瓶颈就是会发现学的太多消化不了,容易陷入投入太多产出太少的焦虑,出来也没什么项目可以吹嘘。

可以尝试要跳出固有工作节奏,我现在就断断续续的编写定制适合自己公司环境的监控维护系统。

远眺山头又是一山头,漫漫长路慢慢走吧,不急,自己开心最重要。


干了6年多运维的人来答一波……

首先银行、保险、金融类公司的运维跟互联网公司不太一样(百信银行、微众银行那种除外)我说的有一定局限性,仅限参考。

Q1:运维工作很无趣吗?

运维有很多不同的工作要做,分工也比较明确。比如伺服器、存储、网路、资料库、中间件、相关软体、脚本、自动巡检工具、监控工具等等。伺服器还分IBM的Z、AS400、AIX还有最常见的红帽suse、solar这种LINUX系统,想完全搞明白一个系统能从底层分析问题已经是大神一样的存在了。再加上现在的集群越来越大,已经根本不是人肉操作能完成的了,必须得接触新的东西,学习新的技术。好的DBA现在也是很难招到。网路我感觉搞安全的那几个大哥是真屌,不做这两个不太懂行,不瞎说。批量自动化、自动化的巡检、可视化监控这些倒是市场上有很多解决方案,也有很多开源的东西,但是想完全搞明白也得花很多功夫,而且没有一定的开发基础和运维经验确实比较难想的周全。

大多数工作熟了之后就都是重复,IT已经算是比较与时俱进不断学习的行业了。运维工作中需要你能看能理解业务,看的懂日志,能读的懂代码,其实还挺复杂的。比如我当年就得自学会计,不然连账务的借贷都不懂,根本没法查问题。

综上,有趣吗?能让你研究的东西还挺多的,而且解决问题的成就感还挺好。年底一总结,您所负责的系统从不出问题,对外服务时间能做到99.99999%,那就跟您编译的时候看到0 error(s), 0 warning(s)一样。

Q2:值不值得做?

运维工作跟其他IT岗位比起来,发展空间肯定是有,各个银行都有自己的运维中心(应监管要求,运维和开发要分离开来,这点跟互联网公司有区别)运维的老大也是副行级别。薪水也不见得少。而且跟开发不太一样的是,在运维团队中,一个老的运维人员依然不会被嫌弃,即使他对新的技术已经不如年轻人了解,熬夜加班也不如年轻人,但是他对于业务逻辑、相关系统关联、处理故障的分析定位、制度流程建设、数据等方面的经验是很有用的。

缺点是7*24小时on call,有可能某天晚上,你正美美得搂著你漂亮的媳妇儿睡著觉,做著春秋大梦。一个刺耳的电话铃声突然响起……「哥,系统宕了。」你就得起来干活儿了,而且不算加班哦。。。手机里永远是各种系统报警简讯。有可能还需要定期值班什么的。平时投产、变更、演练什么的大多都半夜或者休息日做(尽量减少对业务影响的风险,其他类型的公司可能不需要)。突发问题有可能得大半夜赶过去。

至于值不值呢~自己看。反正三百六十行,行行出状元。


关于运维有没有兴趣,当然是要看运维工作者的评价了,特意找了一下大家对于运维的工作评价,来看看大家都怎么说的:

图片来源于网路,侵删

有兴趣其实就会觉得有趣,如果只是单纯的做一份工作,不从中获取成就感,可能就觉得无趣了!

想要学习Linux运维的小伙伴们,可以看看这个学习路线图及必备技能哦!

2020年运维工程师必备技能

点击可查看大图

2020年运维工程师学习路线图

点击可查看大图

2020年运维工程师学习路线图配套视频地址:

Linux云计算+运维开发经典教程_Linux云计算+运维开发教程从入门到精通_黑马程序员?

yun.itheima.com图标


因人而异

做运维的时候一直想,既然可以远程办公,那要是在家里办公,不用到公司就好了。 今年的疫情实现了远程办公,but还是有很多人觉得在家太无聊了,事又多,还是去公司办公好。

很多人觉得这份工作不是我的兴趣,我要做我感兴趣的工作,but 你都不知道自己的兴趣是啥,怎么找到感兴趣的工作,甚至很多人连离职都不知道为什么要离职。

很多人不知道自己会选择运维工作,工作从未做过规划,不知道未来的路该如何走下去。遇到好心老板跟他谈个理想, 他又觉得:

每天上班无非两件事: 干活和想辞职。

只有运维行业这样吗? 并不是,所有的行业干久了都会觉得无趣,就像一首你喜欢的歌,百听不厌,那你设为闹钟试试。

工作即修行,任何一份工作最低层次是解决温饱问题,其次是为了让自己和身边的人过得更好,最后才是实现自己的价值。如果一份工作连温饱问题都解决不了,那就不值得做。


推荐阅读:
相关文章