- 使用 Spring Initializr 创建 Spring Boot 应用程序
- 在Spring Boot中配置Cassandra
- 在 Spring Boot 上配置 Tomcat 连接池
- 将Camel消息路由到嵌入WildFly的Artemis上
**摘要:**随着云业务的发展,今后会有越来越多的工程师深入到SRE领域。
本文分享自华为云社区《浅谈SRE角色认知》,作者: SRE确定性运维。
SRE(Site Reliability Engineer)从2003年被谷歌公司提出,已经将近20年,它不仅是一个岗位,而是一个体系化的工程。最早谷歌公司提出SRE是为了解决两个核心冲突点:1、开发、运维两个团队在上线速度和现网系统稳定性之间的冲突;2、软件的快速上线,模糊了运维和研发的边界。谷歌SRE通过软件工程技术,持续改进现网可用性和自动化运维能力,SRE作为一个新的技术岗位走上历史舞台。
SRE是站点可用性工程师:强调软件和系统工程能力,SRE需要编写自动化脚本,优化和改进配置。写代码是必须的技能要求,因为代码是支撑工具开发和自动化的手段,但不鼓励写大量代码,希望能通过简单的工具或者配置解决问题。
SRE素质能力模型主要有:软技能(合作、沟通、独立解决问题),实践经验(IT运维、基础设施、安全等),流程和框架(DevOps、敏捷等),新技术(CICD工具、微服务升级与API)。
云业务相较传统业务存在两个变化,运维对象和运维模式都发生了本质改变,传统运维模式已不能满足要求,运维专业必定向SRE发展。
1)传统产品局点规模海量,单局点规模有限。但云业务单系统就支持几十上百万的服务器规模;
2)传统IPD版本周期长达半年,DevOps模式1~4周一个版本;
3)云计算L0~L4堆栈复杂,系统整体可用性依赖全栈可用性;
4)运维对象不是可批量交付的成熟产品,而是微服务架构下的不断演进的服务组件,同时各个行业的特质也会发生变化。
1)商业模式转变导致运维的责任边界产生变化,传统模式客户服务运维,厂家做二线保障。现在需要端到端负责可用性设计以及1/2线运维,这种模式下,仅靠后端保障可用性是不够的,需要介入前端顶层架构设计。
2)传统模式只对交付的产品可靠性负责,不需考虑周边可用性制约因素,但是作为服务运营商,需要对服务全栈可用性负责。
3)传统模式,运维人员只是对运维系统的使用者,但是现在除了使用者外,还是运维系统的建设者,由最懂现网业务的SRE主导设计和开发运维工具。
有别于传统运维工程师,SRE在服务生命周期中扮演以下三个关键角色:
1)现网可用性的守护者。是现网的Owner,守护现网稳定性是SRE的第一职责,围绕现网保障会建立一整套的事前、事中、事后的SLA保障体系和能力。事前:监控告警、变更管理、容量管理、重大保障、应急演练等一系列业务活动。事中:事件管理、warroom、应急恢复能力。事后:故障Postmortem、现网数据分析、通过现网数据持续驱动产品改进。SRE强调全栈、端到端能力,是系统性专家;
2)系统高可用性的设计者。是高可用设计的Owner,联合产品研发围绕SLI/SLO目标设计服务高可用,将高可用软件架构和工程方法应用到产品。SRE作为高可用性设计的专家参与到产品设计和上线活动中,运用系统和软件工程科学解决产品可用性问题;
3)运维软件工程能力的构建者。用软件工程的思维和方法管理现网,通过可信开发构筑系统可用性和自动化能力。打造安全可靠的运维平台,建设自动化运维服务,支撑云服务的高可用落地,提升运维安全和运维效率。持续关注业务和技术发展,引入并采用业界新软件技术,引导系统优化演进,围绕运维业务目标,构筑运维领域技术竞争力。
相对传统运维,SRE需要既懂开发,又懂运维,能端到端参与产品研发生命周期全过程,围绕高可用和自动化建立四大关键能力。
1)编码能力是SRE的基本技能要求,强调软件和系统工程能力;
2)具备“软件工程”思维,要有站点和服务高可用设计能力,同时将高可用架构和软件工程方法应用到产品研发过程;
3)有能力进行自动化研发,用自动化软件完成运维和系统高可用性工作;
4)SRE要有SLI/SLO体系化设计能力,通过SLO将服务可用性显性化度量。
同时,SRE要将现网优秀实践经验固化到流程规范中,形成一套可复制的标准化运维体系。
在 PHP 中,开始破解并弄清楚页面上发生的事情非常容易。只需输入一堆回声和 print_r,仅此而已。看来这种技术在 python 中对我不起作用。我通过在 python 照片上传模块中进行黑客攻击
程序员/后端开发方向Java 跳槽注意事项(简历和面试经验分享) 应届生面试经验参考:https://www.cnblogs.com/rainbow-1/p/16779048.html 简历: 1、
上图的意思: 百战百胜,屡试不爽. 故事 程序员小张: 刚毕业,参加工作1年左右,日常工作是CRUD 。 架构师老李: 多个大型项目经验,精通各种开发架构屠龙宝术;
周末了开心一下 谈到程序员,对于外行人来说一贯的印象就是格子衫大裤衩外加人字拖,蓬头(秃头)垢面黑眼圈,还有就是“人傻钱多死得快”🤣,这是外界对程序员固有的思想,但是作为新世纪的程序员,我们可没那么
我从事C++编程已有5年了,现在我意识到知道如何“不同地”思考的值(value)。 这个问题适用于尝试其他编程语言并遇到过类似情况的C++程序员: “哇,这太酷了!我不知道我可以那样编程。” “哇,我
互联网已经渗入我们生活的方方面面,于是我们就免不了会思考:如果有一天网络断了怎么办呢? 英国 Cable.co.uk 曾进行了一项有趣的"断网"调查,调查发现在 2500
这些是 “程序员可见” x86-64 寄存器: (来源:usenix.org) 隐形寄存器呢?刚刚才知道MMU寄存器,Interrupt Descriptor Table(IDT)使用了这些不可见的寄
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 9 年前。 Improve
有没有办法将 Dragon NaturallySpeaking 合并到事件驱动程序中?如果我使用 DNS 记录用户语音输入而不将其写入屏幕并直接保存为 XML,我的老板会非常喜欢它。我已经研究了好几天
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎与 help center 中定义的范围内的编程无关。 . 关闭 8 年前。 Improve
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 9 年前。 Improve
这个问题在这里已经有了答案: 关闭12年前。 Possible Duplicate: Should I learn C before learning C++? 作为一名专业 (Java) 程序员和重
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 6年前关闭。 Improve thi
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
很难说出这里问的是什么。这个问题是含糊的、模糊的、不完整的、过于宽泛的或修辞性的,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开它,visit the help center 。 已关
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我正在将一个使用串行端口的 C++ 程序(更准确地说是 Borland“组件”)“转换”为 Java。该程序使用一个线程来监听串行端口,并在收到给定的“事件字符”之一(可能是回车、ACK、NACK .
我是克里斯。我对编码很陌生,我不知道很多术语,这是我第三次也是最成功的学习 Java 的尝试。是的,如果我还年轻,效果就不太好。无论如何,我正在尝试创建游戏,但遇到了一个小问题。 我制作了一个 16
我是一名优秀的程序员,十分优秀!