当前位置: 首页 > news >正文

云和运维(SRE)的半生缘-深读实证02

这个标题不算太夸张,云计算和很多IT岗位都有缘,但是和运维(SRE)岗位的缘分最深。

“深读实证”系列文章都会结合一些外部事件,点明分析《云计算行业进阶指南》书中的内容。本次分享介绍了下列内容:

  1. 我以运维/SRE的身份而自豪,感谢诸位运维大佬把我当做自己人。

  2. 运维是最主要的云用户,天然了解云产品,也最多接触云厂商。

  3. 最值钱的云产品都是资源型云产品,而运维是最了解IT资源的工程师。

  4. 运维交付的就是业务承载能力,这种心态更适合做企业技术服务。

  5. 云计算重度改变了甲方的运维工作,比如DevOPS和多云冗余。

  6. 结束语和本次活动宣传海报。

注意:本文的运维指的精通IT技术的业务运维,我个人更习惯将此岗位叫做“运维”,而SRE-elite的朋友们更习惯叫SRE。那些只负责盯监控、打网线、上架设备的“运维”,我尊重每一个劳动者,但这些工作和本文没有任何关系。


1. 老运维从云端回家看看

我经常说自己天生适合做云,其中一多半原因是我做运维(SRE)时的技术水平还不错。在云产品规划设计、云用户促销推广、云资源调度分配等等工作,都需要用到我做运维积累的知识。

很高兴接到SRE-elite的邀请,我将参加6月22日小米科技园举办的“SRE精英联盟北京站”活动,能够现场学习《SRE实践白皮书》,也期待能认识一些参会的新朋友。这本《SRE实践白皮书》非常硬核,全部都是体系化的SRE工作标准。

  • SRE-elite确实是个“精英联盟”,包含了成哥、书记、宇聪、黄亮、亚丹、石鹏等运维高手。这几位高手都愿意和我商业互吹,主要是因为我至今能够胜任SRE技术专家工作,我和他们是“自己人”,只是我的志向是做云计算而已。

  • 本次开会时会介绍,《SRE实践白皮书》更新到了到1.0.3版。这本白皮书介绍都是最硬核的运维工作,深入介绍了“可靠性架构设计”“研发保障”“入网控制”“发布管理”“故障应急”等等工作流程。

  • 我上篇文章刚解释,我写的“进阶指南”不会包含实操过程,然后我看了看SRE白皮书……嚯……这本白皮书比我的书还要硬核,全部介绍的是“这一流程有哪些步骤,这些步骤要做到什么程度”。

  • 这本白皮书是一座无言的丰碑,它不会讨好读者,但读者想做好SRE工作,就要一板一眼的执行操作步骤。这些操作步骤的关键词已经足够清晰,很方便读者自行搜集实操资料;但如果读者投机取巧想想省几个步骤,那就是自己在给自己挖坑……。

  • 为保障阅读体验,活动相关海报放在文末了。

c0d956d1c2eaddd8eab6a8e30e096418.gif


2. 运维是云计算的主要用户

我的书《云计算行业进阶指南》中出现了50多次“运维”这个词。因为运维是最主要的云用户,天然了解云产品,和云厂商的接触也对最多。

  • 我对云计算的定义,云产品的操作员必须是计算机工程师。这个工程师群体包括运维、架构、后台开发。抛开全能个人开发者来看,运维的人数远比其他工程师要多得多。

  • 运维天然了解云产品,这是因为IaaS云产品的设计目标就是“模拟基础设施”,PaaS产品的工作就是“模拟中后台服务”。研发不会跟运维抢基础设施的工作,中后台服务从搭建到维护到监控到备份也是SRE运维的工作范畴。

  • 在甲方技术团队中,运维和云厂商打交道的经验最多,既要面对云销售和云售前套消息,还要找云售后投诉,还要面对云产研来访谈和忽悠,就算是PaaS云也要做好监控、多云冗余和对账。因为总和云厂商打交道,在日常交流中,运维工程师也最容易发现“云厂商养了一堆草包,彼可取而代”的事实。

下图选自本书第13页,在第一章就有连续多段内容都提到了“运维”。

31591ce58497dbdfd4af4b603e8e2a13.png


3. 运维天生更理解资源

要做好运维工作,必须深入了解软硬件IT资源的质量特性和承载能力,而云厂商能带来大额营收的云产品只能是资源型云产品。这种天然理解资源的技能底蕴,让运维工程师转岗到云厂商时,有充分的择业自由空间。

  • 只有资源型云产品才能为云厂商贡献大额营收,无论是制作还是使用资源型云产品,都要掌握理解IT资源的特性、用量和状态。《SRE实践白皮书》中高频率用到了“资源”“群集”“平台”“用量”“成本”“账单”等等IT资源相关的技术用语,我也在向SRE-elite的大佬们提意见,在后续版本的白皮书中,很可能会加入专门的资源定义章节。

  • 当站在甲方客户、云销售、云售前、云售后这些产品外部视角工作时,我们需要评估云产品的资源质量,优先使用优质或廉价资源,并监控用量余量等信息,这些信息也会广泛的应用到云厂商商务PK和用户保障工作中。

  • 当站在产研内部视角看问题时,“掌握理解IT资源”这个技能的价值就更大了。首先云产品线也需要资深SRE工程师;产品经理需要掌握资源相关技能,才能完成产品设计、销售、实施的一系列工作;我比较看重的资源运营岗位,那更是直接写明了优先招聘运维工程师。

  • 请注意,运维跳槽到云厂商有广泛的选择空间,并不代表我推荐各位运维去所有岗位都实验一遍,云职场没那么宽容,每个人的职场选择都要具体问题具体分析,比如我专门写过《工程师为什么不转销售》。

下图选自书稿的16.1章节,276页:

4512d2b4cc5137f08e20cf48106df0bf.png


4. 运维思维更适合做技术服务

我写过多篇强调云厂商要做好技术服务的文章,本文是谈运维的,所以换个角度解释技术服务。

云厂商给客户吹嘘“我能提供无限服务”时,根本不是服务思维,而是产品经理对未知领域随手画大饼的习惯;云厂商实际执行过程中萎缩成“我只提供产品和资源”,这是标准的研发心态,只保障自己100%能保障的工作。相比之下,运维向公司承诺的是“保证平稳承载业务”,这种兜底心态和积极的工作范围更适合做好企业服务。

  • 我的书中多次强调,“云产品、云资源、云服务”,这三个名词在很多语境下可以无缝互换。但是,很多云从业者只尊重云产品,不了解云资源,对云服务那是肆意随性的画大饼但永不兑现,就是因为他们对服务没有任何概念。但运维出身的朋友,对服务承诺都有天生的敬畏之心。

  • 企业客户最烦云厂商的并不是虚假承诺,而是云厂商认栽摆烂。比如,云厂商出现意外后,产研销售很容易做好赔偿、丢单甚至失业的准备,然后蹲在路边等事态进展。这几个角色的工作习惯就是“只有认栽,没有兜底”,而运维的工作心态是“认栽没意义,必须本人兜底”。

  • 除了工作心态之外,运维跳槽到云厂商做服务,还有个天然的优势;云厂商的服务对象也是运维,老熟人不仅仅是产品技术的沟通效率高,对很多职场潜台词也是心意相通的。我在书中第290页对这种默契做了明确的介绍,下图虽然提到都是“技术服务专家”,但该岗位最佳的人力来源就是甲方运维。

0f7a2fa62eca4555742e01070501e0de.png


5. 云计算改变甲方运维的工作

要跳槽到云厂毕竟是个长期规划,云计算也深刻影响着运维的日常工作。大家读我的书能理解很多云产品的资源秉性,也知道如何更顺畅的和云厂商打交道。云产品是各位运维开展工作必须依赖的资源,基于这些资源,我们才能做好DevOPS、多云冗余等务实技术。

  • 我在云主机的产品介绍中就明确解释了,只有软件定义的虚拟硬件,外加弹性极大的公共资源池,运维工程师才能够施展开DevOPS技术。如果是固定锁死的资源池、缓慢变更的真实硬件,SRE能做的资源调度工作会极大受限。

  • 各位SRE不要盲目信任单云可靠性,多云冗余是必须做的技术选型;《SRE实践白皮书》制订过程中也有对“多云”“混合云”的重度考量。云厂商出不出故障,不影响运维要为业务稳定性兜底,跨云弹性部署,是运维圈最流行的技术。

  • 云厂商面向客户确实有很多不实宣传,但客户也要适度理解一下,供应商老实坦白的话,在你们眼里就变成了土鳖和摆烂。本书中对很多云产品、云岗位进行了祛魅揭露,让大家能减少被不实宣传误导的概率,这也是一个重要的帮助。

271c9279e773da03f3e305b3a27d8844.gif


6. 结束语和活动海报

我年轻时做运维工程师,做过很多稀奇古怪、毫无价值的“瞎折腾工作”。从事云计算行业以后,那些无聊苦涩的经历,居然都兑现成了工作能力和认知深度。因此我很感谢云计算行业,这让我的折腾变得更充实有意义;当然,我也忘不了运维,因为这些工作折腾都是在强化兜底思维和服务意识,也让我比大部分云从业者更了解资源和技术。

下图是SRE精英联盟北京站的活动海报,时间下周六,地点小米科技园,我也会去现场。我不会尬聊推销图书,但也不会摆谱装高冷,所以我选择在会议茶歇时段,循环播放一段无声视频,有兴趣的朋友可以看看,会议间歇也可以当面聊聊这本书。

82897f6847b8dba658349dfc729d9358.jpeg

相关文章:

云和运维(SRE)的半生缘-深读实证02

这个标题不算太夸张,云计算和很多IT岗位都有缘,但是和运维(SRE)岗位的缘分最深。 “深读实证”系列文章都会结合一些外部事件,点明分析《云计算行业进阶指南》书中的内容。本次分享介绍了下列内容: 我以运维…...

java基础操作5——java自定义获取任意年、月、日的起始和结束时间

在实际项目开发过程中,获取任意时间的起始和结束时间是常用操作,尤其对于统计业务来说,更是必要操作,理解了时间自定义的规律,对于开发人员的效率提升是大有裨益的。 一.获取任意年的起始和结束时间 1.获取任意年的起…...

【Java04】引用变量数组初始化的内存机制

引用类型数组指向的元素也是引用。其本质是: 由一个在栈上的引用数组变量指向一块堆内存;这块堆内存里存储的元素是引用,又分别指向其他堆内存。 class Person // Person是一个自定义的类 {public int age;puiblic double height;public vo…...

基于JSP的足球赛会管理系统

你好呀,我是计算机学长猫哥!如果有相关需求,文末可以找到我的联系方式。 开发语言:Java 数据库:MySQL 技术:JSP技术 工具:IDEA/Eclipse、Navicat、Maven 系统展示 首页 个人中心 球队介绍…...

博客摘录「 AXI三种接口及DMA DDR XDMA介绍(应用于vivado中的ip调用)」2024年6月10日

关键要点: 1.AXI Stream经过协议转换可使用AXI_FULL(PS与PL间的接口,如GP、HP和ACP)。 2.传输数据类里就涉及一个握手协议,即在主从双方数据通信前,有一个握手的过程。基本内容:数据的传输源会…...

Bigtable: A Distributed Storage System for Structured Data

2003年USENIX,出自谷歌,开启分布式大数据时代的三篇论文之一,底层依赖 GFS 存储,上层供 MapReduce 查询使用 Abstract 是一种分布式结构化数据存储管理系统,存储量级是PB级别。存储的数据类型和延时要求差异都很大。…...

RAG下的prompt编写探索

针对特定领域的回答,编写抽象的prompt需要在细节和灵活性之间找到平衡。我们需要一个既能涵盖普遍步骤又能适应不同问题的框架。以下是如何在这种情况下编写抽象prompt的方法,以及适用于各种技术领域的通用策略。 一、编写抽象Prompt的通用策略 定义用户问题和背景信息: 明…...

【计算机组成原理】指令系统考研真题详解之拓展操作码!

计算机组成原理:指令系统概述与深入解析 1. 指令系统概述 计算机软硬件界面的概念 在计算机组成原理中,指令系统扮演着至关重要的角色,它是计算机软硬件界面的核心。软件通过指令与硬件进行通信,硬件根据指令执行相应的操作。指…...

北航第六次数据结构与程序设计作业(查找与排序)选填题

一、 顺序查找的平均查找长度ASL(1 2 …… n)/ n (n 1)/ 2 二、 这半查找法的平均查找次数和判定树的深度有关系。若查找一个不存在的元素,说明进行了深度次比较。 注意,判定树不是满二叉树,因此深…...

Optional详解和常用API

目录 一、Optional简介 二、构建Optional对象三种方式 2.1 Optional.of(value) 2.1.1 使用案例 2.2 Optional.ofNullable(value) 2.2.1 使用案例 2.3 Optional.empty() 2.3.1 使用案例 三、Optional常用的api解析和使用案例 3.1 isPresent 3.1.1 使用案例 3.2 ifPrese…...

Unity 3D 物体的Inspector面板

1、Transform:位置、旋转、大小 2、Mesh Filter:物体的形状 3、Mesh Renderer:物体渲染(物体的衣服) 4、Collider:碰撞体...

闪烁与常亮的符号状态判断机制(状态机算法)

背景说明 在视觉项目中,经常要判断目标的状态,例如:符号的不同频率闪烁、常亮等。然而常规的视觉算法例如YOLO,仅仅只能获取当前帧是否存在该符号,而无法对于符号状态进行判断,然而重新写一个基于时序的卷积…...

Hyper-V如何将文件复制到虚拟机?教您3个简单的方法!

需要将文件复制到虚拟机! “大家好,有谁知道Hyper-V怎么将文件复制到虚拟机吗?我有一些文件,想要从主机中复制进虚拟机中,但是我不知道该怎么操作,有谁可以帮帮我吗?谢谢。” Hyper-V虚拟机可…...

Vue主要使用-03

组件通讯 组件通讯也是我们需要了解的,在我们的实际开发中,我们使用的非常多,比如父组件内的数据传入到子组件,子组件的数据传入到父组件,什么是父组件什么是子组件?父组件内包含着我们的子组件,我们的父组件可以有多个子组件,父组件就是我们使用子组件拼接的。 …...

LoadBalance客户端负载均衡

1. 前言Ribbon Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端 负载均衡的工具。简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法和服务调用。Ribbon客户端组件提供一系列完善的配置项如连接超时&#xff0…...

Burp Suite Professional 2024.5 (macOS, Linux, Windows) - Web 应用安全、测试和扫描

Burp Suite Professional 2024.5 (macOS, Linux, Windows) - Web 应用安全、测试和扫描 Burp Suite Professional, Test, find, and exploit vulnerabilities. 请访问原文链接:Burp Suite Professional 2024.5 (macOS, Linux, Windows) - Web 应用安全、测试和扫描…...

逢3必过报数游戏-第13届蓝桥杯省赛Python真题精选

[导读]:超平老师的Scratch蓝桥杯真题解读系列在推出之后,受到了广大老师和家长的好评,非常感谢各位的认可和厚爱。作为回馈,超平老师计划推出《Python蓝桥杯真题解析100讲》,这是解读系列的第84讲。 逢3必过报数游戏&…...

解决Qt的multimedia库在clion中依赖库补全的问题

解决Qt的multimedia库在clion中使用报错的问题 在clion中,使用Qt的multimedia库时会报如下错误: defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer" 我猜测出现这个错误的原因很可能是因为…...

图像处理:Python使用OpenCV进行图像锐化 (非锐化掩模、拉普拉斯滤波器)

文章目录 非锐化掩模 (Unsharp Masking)拉普拉斯滤波器 (Laplacian Filter)效果对比总结 在图像处理中,锐化操作用于增强图像的边缘和细节,使图像看起来更清晰。常见的图像锐化方法包括非锐化掩模(Unsharp Masking)和拉普拉斯滤波…...

windows用脚本编译qt的项目

mingw的 cd build ::设置jom环境 set PATHC:\Qt\Qt5.15.2\Tools\mingw810_32\bin;%PATH% set PATHC:\Qt\Qt5.15.2\5.15.2\mingw81_32\bin;%PATH% ::设置Qt环境 amd64_x86 或者 amd64 ::CALL "D:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxilia…...

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

UE5 学习系列(三)创建和移动物体

这篇博客是该系列的第三篇&#xff0c;是在之前两篇博客的基础上展开&#xff0c;主要介绍如何在操作界面中创建和拖动物体&#xff0c;这篇博客跟随的视频链接如下&#xff1a; B 站视频&#xff1a;s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...

linux 错误码总结

1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

CMake 从 GitHub 下载第三方库并使用

有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

JS设计模式(4):观察者模式

JS设计模式(4):观察者模式 一、引入 在开发中&#xff0c;我们经常会遇到这样的场景&#xff1a;一个对象的状态变化需要自动通知其他对象&#xff0c;比如&#xff1a; 电商平台中&#xff0c;商品库存变化时需要通知所有订阅该商品的用户&#xff1b;新闻网站中&#xff0…...

iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈

在日常iOS开发过程中&#xff0c;性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期&#xff0c;开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发&#xff0c;但背后往往隐藏着系统资源调度不当…...

深度学习水论文:mamba+图像增强

&#x1f9c0;当前视觉领域对高效长序列建模需求激增&#xff0c;对Mamba图像增强这方向的研究自然也逐渐火热。原因在于其高效长程建模&#xff0c;以及动态计算优势&#xff0c;在图像质量提升和细节恢复方面有难以替代的作用。 &#x1f9c0;因此短时间内&#xff0c;就有不…...

【C++进阶篇】智能指针

C内存管理终极指南&#xff1a;智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...