我认识的运维工作

运维这个工作对于非运维岗位的人来讲,一直都是神秘的,大家对于运维的工作内容其实并不了解,或者了解的比较片面。其实算是一种工作类别了,除去互联网软件行业的运维人员不说,一般的机关事业单位也有相应的岗位配置,即信息处,科技处之类维护单位IT系统的团队,他们与互联网公司的运维人员工作有类似之处。这里我主要介绍下国内互联网公司的运维。

国内互联网公司的运维工作大致有以下几个内容:1)资源管理,2)变更部署,3)监控告警,4)故障响应;除去这4个必备的内容外,很多公司的运维还需要参与系统的架构设计,推动系统性能,成本等优化以及系统安全等工作。

1.资源管理

资源管理其实最简单的理解就是机器的管理,包括采购,规划,调度等。对于开发团队来说,他们不需要关心机器从哪里来,只需要找运维要机器就好,运维会根据开发的需求给出相应的服务器资源。当然提到资源当然就涉及到成本,运维人员需要根据开发的业务重要程度合理的分配资源,保证采购回来的机器足够使用。

2.变更部署

这个部分其实包含的内容非常多而且也非常复杂,包括业务的部署,变更,发布,回退等等。先说部署工作,部署工作不仅仅是将开发生产出来的软件直接丢到机器上跑起来就完事的,这里需要运维解决环境问题,比如系统,依赖(包括库以及组件),网络等等,否则服务无法正常运行。变更其实是制定规则的一个过程,对于互联网公司来说,大多数故障都来源于变更,开发上线程序,运维迁移数据等等。为了降低变更的影响面,提高成功率,运维需要制定一系列的变更规则出来,比方灰度时间间隔不能太短,一次不能灰度太多机器等。

3.监控告警

除了基础监控(cpu,内存,磁盘等)以及开发自己上报的监控外,运维人员还需要对系统的关键部位安插告警点,对于敏感业务可能需要运维自己写脚本进行更加细致,及时以及定制化的监控以便及时发现和定位系统的异常

4.故障响应

这部分是运维最常见的工作,当系统发生故障时,运维需要进行定位和修复,运维一般是进行系统级别的操作,比方切换网络,切换机房等。代码层面的问题需要配合开发一起解决。

以上工作属于大多数运维人员的基本工作内容了,运维即运营维护,运营层面需要做到以最低的成本做到高可用和高性能,维护层面需要最及时的发现系统问题以及推动解决问题。这个岗位需要的不仅是技术,还需要一些管理能力,工作日常非常琐碎,单个运维一般会对接多个开发。

这个团队离老大比较远,一般是部门老大不怎么关注的团队,如果老大哪天找你了,相信我一般不会是好事

=============================更新======================

对于互联网公司来说,最初不存在所谓的运维工程师,相关工作由后台开发工程师承担。公司规模小的时候,这种模式运行的很好。开发自己购买资源,上架机器,部署,发布,监控等等。

公司规模大了以后,问题就出现了,人多手杂,发布流程没有人去推进和落实,系统经常莫名其妙的因上线出现各种问题,排查和修复工作异常艰难;资源利用率低下,忙的机器负载高到死机,闲的机器常年吃灰;现网环境管理混乱,开发在生产环境调试软件,任意修改系统参数;数据,网络,系统没有安全可言,漏洞日益增多;容灾高可用得不到保障,死一台服务器,整个业务受到影响;研发流程低级问题频发,代码相互覆盖,回退,联调环境相互干扰,效率很低。为了彻底治理这种乱象,DO分离,出现了运维工程师这个职业,本质上是后台工作的劳动分工。

研发和运维工作的界限比较模糊,以前的运维工作比较简单,部署服务,管理资源,7*24监控等等,对于研发侧的工作基本不会涉及,研发部门与运维部门通过交付文档来接口,当然很多情况是没有文档的,只是开发的口头交付而已,这种做法的痛点比较多,最明显的,开发更关注业务的快速实现,很多时候会忽视安全,容灾,性能,可维护性这些方面,当一个有上述缺陷的模块发布到线上后,系统稳定性就会面临很大威胁,但是在业务时间压力面前,又不得不放行,最终的结果要么是运维苦逼的人肉支撑,要么是系统出现故障,研发运维一起背锅。运维的话语权较弱,存在感非常低。

近年来DevOps概念盛行,希望运维可以将工作多向研发侧延伸一截,谷歌提出了SRE,本质上也是DevOps的具体实践,和传统的运维不同的是,SRE除了传统运维的工作内容之外,会参与到研发工作当中,相关ITIL流程系统化落地,研发管理,持续交付体系建设,架构评审,混沌工程,容量管理等等。本质上是扩大运维的影响力,更大范围更深层次的推进标准化和稳定性建设。与传统的运维工作相比,与业务融合度更高,从过去的被动响应式变成主动干预,相当于在之前的try catch之前加入了大量的if else防御性拦截。

不过DevOps在国内的实践有点尴尬,符合要求的人确实很少。传统运维价值有限,入行门槛低,很多人把运维工作干了一个又穷又苦又LOW的民工职业。导致现在有实力的人大多不愿意去做运维,而事实上,一个合格的运维首先应该是一个合格的开发工程师(很多同行不赞同,欢迎来探讨:)),除专业相关技能之外,还需要兼备管理,沟通,协调,方法论等多个方面的能力。

小公司重敏捷,大公司重稳定。在实践中,敏捷和稳定是一对相互冲突的范畴,只能是折中的艺术。运维工程师的核心职责是稳定,风控,成本。所有工作内容都是围绕这个核心展开的,根据公司对于这个职业的定位不同,能力范围不同,工作内容也有所不同。

最后推荐1本适合运维新人看的书籍:《凤凰项目,一个IT运维的传奇故事》, 书本身非常轻松,但是涵盖了很多运维的工作日常,以及运维工作的一些思考,值得一看

(0)

相关推荐

  • JAVA | 什么是微服务?

    前言 最近公司某个项目的架构越来越庞大,维护起来非常难受.领导提出要把这个项目重构,在工作中需要把原来的项目重构成微服务架构,因此学习微服务相关知识,在这里记录下来,权当笔记的同时也希望能对你有启发. ...

  • 一文读懂云上DevOps能力体系

    简介: 阿里云ECS自动化运维套件架构师,深度拆解云上运维能力体系建设:自动化运维等级金字塔.自动化运维的进阶模式.DevOps的基础核心.云上标准化部署三大能力-- 序言 云计算行业已经有十多年的发 ...

  • 运维工作每天需要做什么?Linux运维岗位职责!

    运维工作清闲吗?每天都需要做什么?其实很多人都会关注这样的问题,小编为大家详细的介绍一下吧. 其实没有任何一份的工作是非常清闲的,想要在行业内拥有更好的发展,都需要不断地进步,真正清闲的工作是不挣钱的 ...

  • 运维工作中,Linux用户信息查询命令有哪些

    Linux运维工作中常用的Linux命令很多,用户信息查询命令有哪些?互联网时代发展迅速,Linux运维技术的需求更多推进不少.掌握Linux运维知识是混迹it行业的技能之一.对于运维学习Linux命 ...

  • Linux高级运维工作职责是什么?

    Linux运维是目前非常火的工作岗位,虽然说Linux运维的工作并不是很难,但是同样需要掌握相应的技术,同时Linux运维分为初级和高级,不同级别的岗位工作职责是不同的,那么高级Linux运维工程师日 ...

  • 近期多起环保维护事故,如何合理进行环保设施运维工作?

    近两个月来,全国各地厂区事故频发,有污水管道检修.废水池清理等,均是有限空间作业引起的中毒事件,那么如何有效且保证安全的进行环保设施的运维工作呢? 案例一 2021年7月3日,浙江某材料公司在停产期间 ...

  • Linux运维人员的工作职责是什么?

    运维人员的基本工作原则:简单.易用.高效.稳定.安全.作为Linux运维工程师,运维人员的工作职责是什么?1.企业数据安全企业数据是现代各个IT企业的生命线,作为Linux运维人员,不但不能丢失任何数 ...

  • Linux运维工程师工作内容有哪些?

    随着社会的进步互联网的发展,Linux运维工程师变得越来越受欢迎了,其岗位也在企业中受到了足够的重视,薪资待遇也在不断的提升中,正因为这样越来越多的人想要加入Linux行列中,那么Linux运维工程师 ...

  • Python运维工程师工作职责及要求!

    很多人应该都听说过Python工程师.Linux运维工程师,那么你知道什么是Python运维工程师吗?它的工作职责以及岗位要求是什么呢?我们一起来看看吧. Python运维工程师是什么? 运维工程师最 ...

  • Linux运维---1.Ceph分布式存储架构及工作原理

    Ceph理论 Ceph 简介 Ceph 是一个开源项目,它提供软件定义的.统一的存储解决方案 .Ceph 是一个具有高性能.高度可伸缩性.可大规模扩展并且无单点故障的分布式存储系统 . Ceph 是软 ...

  • 运维工程师工作

    ​大神谈不上,只是想到点小建议. 从题目的描述,看得出来题主,是一个积极向上的人,遇到了工作中的瓶颈期.应该是当前工作比较顺风顺水,是自己的一个舒适圈,现在题主想走出舒适圈,寻求更高级别的发展. 运维 ...