云和运维(SRE)的半生缘-深读实证02
这个标题不算太夸张,云计算和很多IT岗位都有缘,但是和运维(SRE)岗位的缘分最深。
“深读实证”系列文章都会结合一些外部事件,点明分析《云计算行业进阶指南》书中的内容。本次分享介绍了下列内容:
我以运维/SRE的身份而自豪,感谢诸位运维大佬把我当做自己人。
运维是最主要的云用户,天然了解云产品,也最多接触云厂商。
最值钱的云产品都是资源型云产品,而运维是最了解IT资源的工程师。
运维交付的就是业务承载能力,这种心态更适合做企业技术服务。
云计算重度改变了甲方的运维工作,比如DevOPS和多云冗余。
结束语和本次活动宣传海报。
注意:本文的运维指的精通IT技术的业务运维,我个人更习惯将此岗位叫做“运维”,而SRE-elite的朋友们更习惯叫SRE。那些只负责盯监控、打网线、上架设备的“运维”,我尊重每一个劳动者,但这些工作和本文没有任何关系。
1. 老运维从云端回家看看
我经常说自己天生适合做云,其中一多半原因是我做运维(SRE)时的技术水平还不错。在云产品规划设计、云用户促销推广、云资源调度分配等等工作,都需要用到我做运维积累的知识。
很高兴接到SRE-elite的邀请,我将参加6月22日小米科技园举办的“SRE精英联盟北京站”活动,能够现场学习《SRE实践白皮书》,也期待能认识一些参会的新朋友。这本《SRE实践白皮书》非常硬核,全部都是体系化的SRE工作标准。
SRE-elite确实是个“精英联盟”,包含了成哥、书记、宇聪、黄亮、亚丹、石鹏等运维高手。这几位高手都愿意和我商业互吹,主要是因为我至今能够胜任SRE技术专家工作,我和他们是“自己人”,只是我的志向是做云计算而已。
本次开会时会介绍,《SRE实践白皮书》更新到了到1.0.3版。这本白皮书介绍都是最硬核的运维工作,深入介绍了“可靠性架构设计”“研发保障”“入网控制”“发布管理”“故障应急”等等工作流程。
我上篇文章刚解释,我写的“进阶指南”不会包含实操过程,然后我看了看SRE白皮书……嚯……这本白皮书比我的书还要硬核,全部介绍的是“这一流程有哪些步骤,这些步骤要做到什么程度”。
这本白皮书是一座无言的丰碑,它不会讨好读者,但读者想做好SRE工作,就要一板一眼的执行操作步骤。这些操作步骤的关键词已经足够清晰,很方便读者自行搜集实操资料;但如果读者投机取巧想想省几个步骤,那就是自己在给自己挖坑……。
为保障阅读体验,活动相关海报放在文末了。

2. 运维是云计算的主要用户
我的书《云计算行业进阶指南》中出现了50多次“运维”这个词。因为运维是最主要的云用户,天然了解云产品,和云厂商的接触也对最多。
我对云计算的定义,云产品的操作员必须是计算机工程师。这个工程师群体包括运维、架构、后台开发。抛开全能个人开发者来看,运维的人数远比其他工程师要多得多。
运维天然了解云产品,这是因为IaaS云产品的设计目标就是“模拟基础设施”,PaaS产品的工作就是“模拟中后台服务”。研发不会跟运维抢基础设施的工作,中后台服务从搭建到维护到监控到备份也是SRE运维的工作范畴。
在甲方技术团队中,运维和云厂商打交道的经验最多,既要面对云销售和云售前套消息,还要找云售后投诉,还要面对云产研来访谈和忽悠,就算是PaaS云也要做好监控、多云冗余和对账。因为总和云厂商打交道,在日常交流中,运维工程师也最容易发现“云厂商养了一堆草包,彼可取而代”的事实。
下图选自本书第13页,在第一章就有连续多段内容都提到了“运维”。

3. 运维天生更理解资源
要做好运维工作,必须深入了解软硬件IT资源的质量特性和承载能力,而云厂商能带来大额营收的云产品只能是资源型云产品。这种天然理解资源的技能底蕴,让运维工程师转岗到云厂商时,有充分的择业自由空间。
只有资源型云产品才能为云厂商贡献大额营收,无论是制作还是使用资源型云产品,都要掌握理解IT资源的特性、用量和状态。《SRE实践白皮书》中高频率用到了“资源”“群集”“平台”“用量”“成本”“账单”等等IT资源相关的技术用语,我也在向SRE-elite的大佬们提意见,在后续版本的白皮书中,很可能会加入专门的资源定义章节。
当站在甲方客户、云销售、云售前、云售后这些产品外部视角工作时,我们需要评估云产品的资源质量,优先使用优质或廉价资源,并监控用量余量等信息,这些信息也会广泛的应用到云厂商商务PK和用户保障工作中。
当站在产研内部视角看问题时,“掌握理解IT资源”这个技能的价值就更大了。首先云产品线也需要资深SRE工程师;产品经理需要掌握资源相关技能,才能完成产品设计、销售、实施的一系列工作;我比较看重的资源运营岗位,那更是直接写明了优先招聘运维工程师。
请注意,运维跳槽到云厂商有广泛的选择空间,并不代表我推荐各位运维去所有岗位都实验一遍,云职场没那么宽容,每个人的职场选择都要具体问题具体分析,比如我专门写过《工程师为什么不转销售》。
下图选自书稿的16.1章节,276页:

4. 运维思维更适合做技术服务
我写过多篇强调云厂商要做好技术服务的文章,本文是谈运维的,所以换个角度解释技术服务。
云厂商给客户吹嘘“我能提供无限服务”时,根本不是服务思维,而是产品经理对未知领域随手画大饼的习惯;云厂商实际执行过程中萎缩成“我只提供产品和资源”,这是标准的研发心态,只保障自己100%能保障的工作。相比之下,运维向公司承诺的是“保证平稳承载业务”,这种兜底心态和积极的工作范围更适合做好企业服务。
我的书中多次强调,“云产品、云资源、云服务”,这三个名词在很多语境下可以无缝互换。但是,很多云从业者只尊重云产品,不了解云资源,对云服务那是肆意随性的画大饼但永不兑现,就是因为他们对服务没有任何概念。但运维出身的朋友,对服务承诺都有天生的敬畏之心。
企业客户最烦云厂商的并不是虚假承诺,而是云厂商认栽摆烂。比如,云厂商出现意外后,产研销售很容易做好赔偿、丢单甚至失业的准备,然后蹲在路边等事态进展。这几个角色的工作习惯就是“只有认栽,没有兜底”,而运维的工作心态是“认栽没意义,必须本人兜底”。
除了工作心态之外,运维跳槽到云厂商做服务,还有个天然的优势;云厂商的服务对象也是运维,老熟人不仅仅是产品技术的沟通效率高,对很多职场潜台词也是心意相通的。我在书中第290页对这种默契做了明确的介绍,下图虽然提到都是“技术服务专家”,但该岗位最佳的人力来源就是甲方运维。

5. 云计算改变甲方运维的工作
要跳槽到云厂毕竟是个长期规划,云计算也深刻影响着运维的日常工作。大家读我的书能理解很多云产品的资源秉性,也知道如何更顺畅的和云厂商打交道。云产品是各位运维开展工作必须依赖的资源,基于这些资源,我们才能做好DevOPS、多云冗余等务实技术。
我在云主机的产品介绍中就明确解释了,只有软件定义的虚拟硬件,外加弹性极大的公共资源池,运维工程师才能够施展开DevOPS技术。如果是固定锁死的资源池、缓慢变更的真实硬件,SRE能做的资源调度工作会极大受限。
各位SRE不要盲目信任单云可靠性,多云冗余是必须做的技术选型;《SRE实践白皮书》制订过程中也有对“多云”“混合云”的重度考量。云厂商出不出故障,不影响运维要为业务稳定性兜底,跨云弹性部署,是运维圈最流行的技术。
云厂商面向客户确实有很多不实宣传,但客户也要适度理解一下,供应商老实坦白的话,在你们眼里就变成了土鳖和摆烂。本书中对很多云产品、云岗位进行了祛魅揭露,让大家能减少被不实宣传误导的概率,这也是一个重要的帮助。

6. 结束语和活动海报
我年轻时做运维工程师,做过很多稀奇古怪、毫无价值的“瞎折腾工作”。从事云计算行业以后,那些无聊苦涩的经历,居然都兑现成了工作能力和认知深度。因此我很感谢云计算行业,这让我的折腾变得更充实有意义;当然,我也忘不了运维,因为这些工作折腾都是在强化兜底思维和服务意识,也让我比大部分云从业者更了解资源和技术。
下图是SRE精英联盟北京站的活动海报,时间下周六,地点小米科技园,我也会去现场。我不会尬聊推销图书,但也不会摆谱装高冷,所以我选择在会议茶歇时段,循环播放一段无声视频,有兴趣的朋友可以看看,会议间歇也可以当面聊聊这本书。

相关文章:
云和运维(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客户端组件提供一系列完善的配置项如连接超时࿰…...
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…...
AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...
【JVM】- 内存结构
引言 JVM:Java Virtual Machine 定义:Java虚拟机,Java二进制字节码的运行环境好处: 一次编写,到处运行自动内存管理,垃圾回收的功能数组下标越界检查(会抛异常,不会覆盖到其他代码…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...
学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...
令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...
Map相关知识
数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
云原生安全实战:API网关Kong的鉴权与限流详解
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关(API Gateway) API网关是微服务架构中的核心组件,负责统一管理所有API的流量入口。它像一座…...
MinIO Docker 部署:仅开放一个端口
MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...
