惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Darknet – Hacking Tools, Hacker News & Cyber Security
博客园_首页
T
The Blog of Author Tim Ferriss
罗磊的独立博客
The Register - Security
The Register - Security
IT之家
IT之家
D
Docker
爱范儿
爱范儿
Apple Machine Learning Research
Apple Machine Learning Research
Hugging Face - Blog
Hugging Face - Blog
博客园 - Franky
L
LangChain Blog
J
Java Code Geeks
博客园 - 三生石上(FineUI控件)
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
K
Kaspersky official blog
Latest news
Latest news
博客园 - 聂微东
酷 壳 – CoolShell
酷 壳 – CoolShell
Cyberwarzone
Cyberwarzone
人人都是产品经理
人人都是产品经理
C
CERT Recently Published Vulnerability Notes
The Hacker News
The Hacker News
T
Tailwind CSS Blog
S
SegmentFault 最新的问题
MongoDB | Blog
MongoDB | Blog
Scott Helme
Scott Helme
L
LINUX DO - 热门话题
Spread Privacy
Spread Privacy
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
D
DataBreaches.Net
Project Zero
Project Zero
H
Hackread – Cybersecurity News, Data Breaches, AI and More
G
Google Developers Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
C
Check Point Blog
S
Schneier on Security
NISL@THU
NISL@THU
T
Tor Project blog
P
Proofpoint News Feed
N
News and Events Feed by Topic
Last Week in AI
Last Week in AI
N
Netflix TechBlog - Medium
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
U
Unit 42
C
Cybersecurity and Infrastructure Security Agency CISA
T
The Exploit Database - CXSecurity.com
L
LINUX DO - 最新话题
Help Net Security
Help Net Security
Blog — PlanetScale
Blog — PlanetScale

顾宇的博客

用 AI 重启生活 初始化 MacOS 关于我 再次见面,期待相遇 演讲和分享 如何通过政策红利获利?——海南发展(SZ.002163)交易复盘 2025年的总结 2024年的总结 2023年的总结 2022年的总结 《敏捷测试价值观、方法与实践》序 【翻译】函数式编程中的领域驱动设计 【翻译】通过跟踪技术债来改进你的开发实践 【翻译】不要把测试用例自动化 【翻译】持续部署 vs 持续交付 【翻译】测试替身 【翻译】做多少测试才足够 【翻译】蓝绿部署的起源 【翻译】持续部署 【翻译】作为演进式架构的微服务架构 【翻译】gRPC 的动机和设计原则 【翻译】分布式计算谬误 【翻译】微服务和分布式对象第一法则 采用 Multipass 管理本机虚拟 K8S 集群 博客主题升级到 Congo 2.0 【翻译】Terraform 最佳实践:模块组合 【翻译】Kubernetes 部署语言(Kubernetes Deployment Language) 通过 Vagrant 一键初始化 K8S 集群 2021年的总结 通过 Github Actions 部署 Mkdocs 文档 博客迁移到了新的 Hugo 主题 2020年的总结 2019年的总结 千人规模组织级 DevOps 演进的 9 个实践技巧 从技术雷达看 DevOps 的十年——容器技术与微服务 DevOps 模式 - 引入 DevOps 顾问 DevOps 模式 - 索引 DevOps 模式 - 定义你的DevOps 从技术雷达看 DevOps 的十年——基础设施即代码与云计算 从星巴克店面运营学习 DevOps 从技术雷达看 DevOps 的十年——DevOps与持续交付 【翻译】微服务安全:所有应该被问到的问题 云原生下的 DevSecOps 实践 【翻译】软件定义交付宣言 微服务演进中的经验和反思 迟到的 2018 年终总结 成功微服务实施的组织演进 从第19期技术雷达看 DevOps 的发展趋势 成功微服务实施的技术演进 我们如何衡量微服务的成功? 关于四周四 AWS 架构工作坊的设计和实践 讨论微服务之前,你知道微服务的 4 个定义吗? 公有云(AWS)上的生产环境架构优化案例和迁移套路总结 公有云(AWS)上的生产环境性能分析案例 一怒之下,我又写了一个开源流量测试工具 采用 DevOps 故事落地 DevOps 测试驱动开发 Nginx 配置 云原生 DevOps 翻译-混沌工程的原则 Serverless 风格的微服务的持续交付 从最新一期技术雷达看 DevOps 的发展 关于 DevOps ,咱们聊的可能不是一回事 Serverless 风格的微服务的架构案例 提升微服务实施效率的 7 个步骤 微服务实施常被忽视的 5 个难点 你的 CI 在挖矿吗? DevOps前世今生 - 4. DevOps 的文化 DevOps发展的九个趋势 不要让你的持续集成服务器成为安全隐患 DevOps 前世今生 - 3. DevOps 的目标和核心 DevOps 前世今生 - 2. DevOps 矛盾从何而来 DevOps 前世今生 - 1. DevOps 编年史
DevOps 模式 - 采用模式语言讨论 DevOps
顾宇 · 2019-05-18 · via 顾宇的博客
  1. 顾宇的博客/
  2. Blogs/
  3. DevOps 模式 - 采用模式语言讨论 DevOps/

2018年的5月,DevOps 实践手册作者"四人帮"之一的 John Willis 来到了北京,在 DevOps 国际峰会上做了一场名为"DevOps:Almost 10 Years - What A Strange Long Trip It’s Been"的演讲([原 SlideShare 已下线,此为历史存档])。除了这个演讲的 PPT 只有一张很长的图片以外,坐在台下的我对他在这篇演讲中 DevOps 的定义有了共鸣。在这次演讲中,他将 DevOps 定义如下:

John Willis 演讲 PPT 的一部分

翻译过来就是"DevOps 是一组实践和模式,用来将人力资本转化为高效能的组织资本" 。

关于这段定义,我深以为然。

然而,在不同的场合和其他人交流时,我对 DevOps 的实践产生了忧虑。一方面,我看到很多朋友在落地某些 DevOps 实践中,由于缺乏经验,出现了种种阻碍 DevOps 产生效益的问题。另一方面,尽管论述如何做 DevOps 的材料足够多。但几乎都是告诉我们"成功的 DevOps”是什么样的,而“出现了问题怎么办”的内容却乏善可陈。

我发现很多问题在不同组织的 DevOps 转型中反复遇到,而解决这些问题的方式和碰到的问题也大同小异。因此,我开始把这些常见有效的做法和常见的错误做法总结下来,并采用模式的语言对其进行分类整理和描述,形成了 “DevOps 模式”。

下面,我将这套 DevOps 模式语言的基本格式介绍给你。

DevOps 模式类别 #

DevOps 的模式分为以下五类:

  • **策略模式:**在设计长期的 DevOps 改进中的方向。
  • **组织模式:**在不同类型、不同规模的组织下的团队分工合作方式。
  • **管理模式:**提升组织表现的日常工作的流程、活动和制度。
  • **技术模式:**服务于管理模式的工具及其实践。
  • **文化模式:**用于提升团队 DevOps 文化的一些活动和方法。

DevOps 模式的格式 #

DevOps 模式的将采用下述格式描述:

模式名称:用来描述模式的正式名称,这个名称描述了该模式的特征。

模式别名:其他方便记忆的其他名称,别名一般包含了某种助记隐喻。

模式类别: 策略模式、组织模式、管理模式、技术模式和文化模式的其中一种。

风险: 采用该模式可能会带来的风险。风险包括以下三种:

  • 低 - 不用担心,放心采用。该模式没有特殊的场景和附加条件。
  • 中 - 采用的时候要注意场景和条件,否则会出现反模式。
  • 高 - 请在实践过 DevOps 的专家指导下采用,轻易采用会带来严重的后果。

**价值:**采用该 DevOps 模式的转型收益。转型收益包括以下三种:

  • 低: 采用该模式只会产生短期的收益。
  • 中: 采用该模式产生中期固定的收益,但要持续做。
  • 高: 采用该模式会对组织产生长期的收益。

**见效时间:**采用该 DevOps 模式的转型收益。转型收益包括以下三种:

  • 慢: 4 周内看不到显著改进。
  • 普通: 2 - 4 周可看到显著改进。
  • 快: 2 周内可看到显著改进。

说明: 对模式的描述和说明。以及产生的收益和风险。

**相关模式:**和该模式相关的其他模式。

相关反模式: 可能出现的常见错误做法和后果。

**引用:**相关资料的引用。

DevOps 的反模式 #

相对应的,每一个模式都有对应的反模式。反模式是一些常见的错误做法,这些做法一定会导致负向的收益。

反模式的格式如下:

反模式名称:用来描述模式的正式名称,这个名称描述了该反模式的特征。

反模式别名:其他方便记忆的其他名称,别名一般包含了某种助记隐喻。

反模式类别: 同模式类别。

不良后果: 对反模式产生的不良结果的说明。

**常见原因:**导致这种反模式的常见原因分析和说明。

修正模式:采用相应的模式修正。

相关模式:和该模式相关的其他模式,其他模式也会导致同样的反模式。

相关反模式:和该模式相关的其他反模式,有可能多个反模式顺序出现。

**引用:**相关资料的引用。

案例 #

在不同的模式后面,我会采用不同的案例对模式和反模式进行说明。案例包含我过去亲自实践过的项目以及从他人那里听说且经过我详细考证的案例。为了保密起见,相关的企业,项目人员的名字均以其他形式代替。

采用 DevOps 模式所要达成的目标 #

最后,在我正式介绍这些模式的时候,需要先声明一下 DevOps 的目标。那就是:

“通过一系列行之有效的管理实践和技术实践,以消除软件全生命周期的中的浪费,提升软件及其过程的质量、效率和反馈频率。从而使组织能够更好的适应外部的变化。”

当我在文章中讨论 DevOps 的目标时,指的就是上面这句话。

我会在后续的文章里把我这 5 年在 DevOps 转型中碰到的经验和陷阱通过模式的方式分享给您。

首先,让我们从 DevOps 的策略模式开始。

关于 DevOps 模式 #

DevOps 模式的索引在 Github 上开源,地址是https://github.com/wizardbyron/devops_patterns

欢迎通过 issue 和pull request 提交你的建议。

你可以通过关注我的公众号了解 DevOps 模式和反模式,也可以加入我的付费知识星球“DevOps 模式” 和所有 DevOps 的实践者共同交流,我将在知识星球中定期回答那些最受关注的问题。