明人不说暗话:在云原生和DevOps成熟的今天,运维作为一个岗位和团队已经完成了历史任务,应该退出舞台了。
没人招聘运维岗了
我不是说正在吭哧吭哧写脚本搬机器的运维同事们马上就会被补偿N+1护送出数据中心,但是确实,运维岗位的招聘越来越不少了。以Scania为例,这家卡车制造商并不是Spotify那样的先进IT企业,但是他们的IT部门已经停止招聘Ops岗位了。扩展到Scania所在的瑞典斯德哥尔摩市,基本已经不再看到运维岗位的招聘了,而对DevOps岗位的需求激增。
那么,为什么呢?原因也很直白:传统专职运维团队的工作任务,在现代工具的帮助下,已经可以由开发团队更好更快更便宜的实施了。
发版本的运维被机器取代了
运维届老兵王津银先生在《运维自动化平台深度解码》讲述:“运维是有很多种场景的,但从业务的角度来说,核心的几种业务场景就那么几种,如:业务上线、业务下线、业务扩容、业务缩容、应用升级等五种”。
其中业务上线下线升级三个场景,不客气的说,一个持续部署管道就可以取代了。尤其有了Docker技术后,CI/CD变得非常容易。如果你不想管理Jenkins,gitlab甚至提供pipeline as a service。国内阿里云也有持续集成与交付解决方案。我身边的案例,K公司共有1000个微服务,每天部署一千余次,全部是由Dev团队触发cd pipeline完成,并不需要运维团队参与。实际上,这个公司根本没有运维团队。
而业务扩容和缩容(两者实际上是一个场景),通过云厂家提供的Auto Scaling服务,可以做到完全自动化,既不需要Ops,也不需要dev参与。上述K厂家的基础设施部门的员工,往往答不出“你们部门有多少台虚拟机”这个简单问题,原因就是他们重度依赖AWS Auto Scaling和Application Auto Scaling两个服务做自动扩缩容,以至于他们已经不太关注虚拟机数量,就像各位运维已经回答不出“你们部门有多少个进程”一样。
在工具如此成熟的今天,如果还有运维团队的价值建立在王先生描述的五个场景下,CIO可能需要对自己的组织架构做一个严肃的检讨:汽车都这么成熟了,我为什么会养这么多马夫在拉马车?
运维已经无力保障系统可靠性
上述引文中,王先生遗漏了一个更重要的场景:保障系统可靠性。
新版本发布并不是软件生命周期的终点,而只是持续迭代中的一个小环节。与发布版本同样重要的一个工作是保证软件能以满意的SLA对目标客户提供服务。
为了这个目标,谷歌特意创造了Site Reliability Engineer这个岗位<此处请自行脑补Site Reliability Engineering, The Site Reliability Workbook和Building Secure & Reliable Systems三本SRE圣经的图片>。很多聪明的运维工程师,自己缝一个SRE的帽子戴上,出门都神气很多了。
但是在微服务流行的今天,SRE也力不从心了。原因有三:
微服务数量巨大,设置专职SRE成本巨大。一个SRE能理解25个服务的话,5000个微服务需要200 * 3(三班倒)总计600个SRE, 这个成本不是一般的大。有些不太遵守劳动法规的公司,自然就在人头上动脑筋,于是我们就经常看到运维岗位的招聘广告里有“吃苦耐劳,积极完成领导交代的其他工作任务”之类的奇葩需求。
SRE对服务的了解有限。在快速迭代的今天,50%以上的故障是软件bug造成的,而SRE由于不参与应用服务的开发,对软件bug天然的缺乏敏感度,这就导致SRE很难快速处理大部分故障。实际上,在《The Site Reliability Workbook》的一个案例中,SRE们忙活了20多个小时,交接了三个SRE团队,怀疑了七八个方向,最终却还是dev团队找到并且修复了自己的bug。
另外,由于SRE不参与开发,而Dev不对可靠性负责,两个团队天然有目标冲突。我们经常看到的是,Dev写的日志和业务指标基本是摆设,该有的没有,不该有的一大堆,其根本原因就是:Dev在可观测性上拉稀,并不影响自己的生活之类,SRE会来擦屁股,而倒霉的SRE擦了屁股也还是无法影响Dev拉下一场稀。
对于如何解决这两个问题,业界观点比较一致,就是让Dev承担起Ops的责任,称DevOps。让Dev对SLO负责,会驱动他们在设计和编码阶段投资于可维护性,降低后期维护成本。这表现在几个方面:
开发者会更积极的拆分巨型单体应用。
开发者会更多的建设可观测性:提升日志的信噪比,更主动的输出业务层指标,以及开启分布式追踪。
开发者会更多管理上下游依赖,避免非关键依赖妨碍关键流程。
开发者会更精准的建设监控系统,比如引入Monitor as code提升监控质量。
实施上述动作之后,再结合成熟的可观测性平台,Dev一般就可以兼任Ops工作了。这个模式下,不论是发版本的速度,还是平均故障恢复时间(MTTR),都能得到显著的提升。
有兴趣的朋友可以去翻阅《Accelerate: The Science of Lean Software and DevOps》和Google每年发布的《DORA’s State of DevOps report》,可以看到更系统的阐释。
运维的其他工作任务也消失了
我手头有一本赵旻先生的《IT基础架构系统运维实践》,算是比较权威的运维工具书,我们逐一打开运维还有什么工作内容:
一部分是数据中心,硬件的管理和维护(第二,三,五,六,十二章),毫无疑问,已经被公有云厂家彻底替代了。对于非云厂家的IT公司,此类知识不过是屠龙之技。所以,此处不需要运维了。
一部分是建设包括域名解析之类的基本IaaS服务(第七,八,九,十,十一章)。现在都2021年了,显然选用云厂家的成熟服务,成本更低,稳定性更好。所以,此处不需要运维了。
一部分是最佳实践(第四章网络规划和第13章信息安全),这本就不是工作内容,在云时代,应该是Infrastructure架构师做决策,而开发工程师予以实施。所以,此处不需要运维了。
最后一部分是性能调优。这其中硬件调优工作已经转移到了云厂家,而留存的软件调优,显然dev更在行。所以,此处不需要运维了。
综上所述,没有哪个地方需要专职运维了。
在运维圈子,一直流传一个半开玩笑的笑话:运维的一部分功能就是替开发团队背锅。对CIO来说,这其实是一个组织架构上的失败。为了避免这种甲团队犯错打乙团队板子的错置,取消运维团队,显然是一个釜底抽薪的办法。
笔者身边有很多成功从运维转行网络安全的例子!因接下来我将分享如何运维如何学习网络安全。
1入门基础阶段
入门的第一步是系统化的学习计算机基础知识,也就是学习以下这几个基础知识模块:操作系统、协议/网络、数据库、开发语言、常用漏洞原理。
中华人民共和国网络安全法
Linux操作系统
计算机网络
SHELL
HTML/CSS
JavaScript
PHP入门
MySQL数据库
Python
2 渗透阶段
掌握常见漏洞的原理、使用、防御等知识。Web渗透阶段还是需要掌握一些必要的工具。
SQL注入的渗透与防御
XSS相关渗透与防御
上传验证渗透与防御
文件包含渗透与防御
CSRF渗透与防御
SSRF渗透与防御
XXE渗透与防御
远程代码执行渗透与防御
3 安全管理(提升)
主要包括渗透报告编写、网络安全等级保护的定级、应急响应、代码审计、风险评估、安全巡检、数据安全、法律法规汇编等。
渗透报告编写
等级保护2.0
应急响应
代码审计
风险评估
安全巡检
数据安全
3
提升阶段(提升)
主要针对已经从事网络安全相关工作需要提升进阶安全架构需要提升的知识。
密码学
JavaSE入门
C语言
C++语言
Windows逆向
CTF夺旗赛
Android逆向
## 题外话
黑客&网络安全如何学习
今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。
1.学习路线图
攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。
2.视频教程
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。
内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。
(都打包成一块的了,不能一一展开,总共300多集)
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源
3.技术文档和电子书
技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源
4.工具包、面试题和源码
“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。
还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。
🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源
最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。
这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。
参考解析:深信服官网、奇安信官网、Freebuf、csdn等
内容特点:条理清晰,含图像化表示更加易懂。
内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。