云和运维(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…...
mybatis-plus使用拦截器实现sql完整打印
shigen坚持更新文章的博客写手,擅长Java、python、vue、shell等编程语言和各种应用程序、脚本的开发。记录成长,分享认知,留住感动。 个人IP:shigen 在使用mybatis-plus(mybatis)的时候,往往需要…...
GPT-4并非世界模型,LeCun双手赞同!ACL力证LLM无法模拟真实世界
一直以来,支持LLM的观点之一是模型可以集成海量事实知识,作为通往「世界模拟器」的基础。虽然也有不少反对意见,但缺乏实证依据。那么,LLM能否作为世界模拟器? 最近,亚利桑那大学、微软、霍普金斯大学等机构…...
第 6 章: Spring 中的 JDBC
JDBC 的全称是 Java Database Connectivity,是一套面向关系型数据库的规范。虽然数据库各有不同,但这些数据库都提供了基于 JDBC 规范实现的 JDBC 驱动。开发者只需要面向 JDBC 接口编程,就能在很大程度上规避数据库差异带来的问题。Java 应用…...
[C++ STL] vector 详解
标题:[C STL] vector 详解 水墨不写bug 目录 一、背景 二、vector简介 三、vector的接口介绍 (1)默认成员函数接口 i,构造函数(constructor) ii,析构函数(destructor࿰…...
PHP简约轻型聊天室留言源码
无名轻聊是一款phptxt的轻型聊天室。 无名轻聊特点: 自适应电脑/手机 数据使用txt存放,默认显示近50条聊天记录 采用jqueryajax轮询方式,适合小型聊天环境。 访问地址加?zhi进入管理模式,发送 clear 清空聊天记录。 修改在…...
代码随想录算法训练营day23|669.修剪二叉搜索树、108.将有序数组转换为二叉搜索树、538.把二叉搜索树转换为累加树
669.修剪二叉搜索树 这道题目需要考虑当前节点是否在[low,high]之间, 因为是平衡二叉树, 所以当当前节点值小于low时,那么其左节点肯定更小,因此删除该节点的方式是给root节点返回其右节点的递归,注意:这里…...
实时通信websocket和sse
microsoft/fetch-event-source是一个JavaScript库,用于处理服务器发送的事件(Server-Sent Events,简称SSE)。它提供了一个简单易用的API,使得客户端可以与服务器进行实时通信。这个库主要用于浏览器环境 安装依赖npm i…...
(超详细)基于动态顺序表实现简单的通讯录项目
前言: 我们在上一章节用c语言实现了线性表中的的动态顺序表,那么顺序表就只是顺序表吗?当然不是,使用顺序表结构可以实现很多项目,许多项目的数据结构都会用到顺序表,本章节我们就要使用顺序表实现一个简易…...
修改SubVI的LabVIEW默认搜索路径
在启动顶级VI后,LabVIEW可能会遇到找不到subVI的情况。这通常是由于subVI的路径发生了变化或没有被正确配置。 LabVIEW默认搜索路径 默认情况下,LabVIEW会按以下顺序搜索文件位置(*表示LabVIEW将搜索子目录): <t…...
基于python深度学习的CNN图像识别鲜花-含数据集+pyqt界面
代码下载: https://download.csdn.net/download/qq_34904125/89383615 本代码是基于python pytorch环境安装的。 下载本代码后,有个requirement.txt文本,里面介绍了如何安装环境,环境需要自行配置。 或可直接参考下面博文进行…...
小米手机如何做游戏视频网站/百度竞价推广思路
luxiaolai UID: 55425最后登录: 2013-02-03登录IP: 27.128.21.143退出 设置 短消息 本站淘宝店铺无图版会员列表统计排行论坛帮助网站首页 高级论坛友善官网软件下载常见问题客服中心A8来啦!淘宝店铺等级:新手上路, 帖子:22, 我的主题, 我的回复 更多黄天一笑 编辑 热门版块: …...
陕西响应式网站建设公司/网站推广优化怎样
本篇文章给大家带来的内容是关于vue和iview以及less如何实现换肤的功能(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。项目搭建用的vue—cli,css框架选择的iview1、首先安装less支持npm install --save-…...
哪些网站是用vue做的/郑州搜索引擎优化公司
五. 收到退信错误提示为"554 5.7.1 Rejected xxx.xxx.xxx.xxx found in dnsbl.sorbs.net",怎么办?这是因为收件人所在的邮件服务器使用RBL过滤垃圾邮件,而您的邮件服务器IP地址在RBL列表中,因此被拒绝了。一般此类的退信…...
徐州品牌网站建设/今日新闻国内大事件
word条形码 换行Tables can be difficult to read. Adding shaded bands to a table improves readability and really just makes it look better. Here’s how you can add striping to your Excel tables. 表格可能很难阅读。 在表中添加阴影带可提高可读性,实际…...
要维护公司的网站该怎么做/免费注册网址
2019独角兽企业重金招聘Python工程师标准>>> 今天决定看看开源中国安卓版app,并试着重构一下。好的进入主题。 创建MainActivity public class MainActivity extends ActionBarActivity implementsNavigationDrawerFragment.NavigationDrawerCallbacks,O…...
网页设计做音乐网站/seo网站搭建是什么
继续刷LeetCode 热题 HOT 100 的题目,并且在博客更新我的solutions。在csdn博客中我会尽量用文字解释清楚,相关Java代码大家可以前往我的个人博客jinhuaiyu.com中查看。 题目:全排列 给定一个不含重复数字的数组 nums ,返回其 所有…...