DevOps 之工程化实践

DevOps is not so simple

DevOps - 没那么简单

2017.06.xx

黄庆兵

网易云

What is DevOps?

2

Perfect confusion of ideas

3

Dev+

4

DevOps bible

5

So?

6

Why DevOps?

7

Top 5 Needs of an Admin

1.  Give me my peace and quiet!

2.  Don‘t make me think!

3.  Let me see that everything is fine!

4.  Show me the problem – now!

5.  Tell me what to do!

8

Top 5 Needs of an Admin (translated)

1.  Give me my peace and quiet!


The application should just run smoothly

2.  Don‘t make me think!


Rollout, setup and operation of the application should be easy

3.  Let me see that everything is fine!


The application should show its state

4.  Show me the problem – now!


The application should provide concise error messages and enable easy root cause drilldown

5.  Tell me what to do!


The application should be documented properly – including error handling instructions
9

Traditional IT organization

10

DevOps IT organization

11

DevOps IT organization (optimized)

12

Rotate your IT organization by 90°

13

How do DevOps?

14

Top 3 Challenges & 10 Design Principles

1.  Manageability

I     Deployment
II    Configuration
III   Backup

2.  Resilience

IV    Bulkheads
V     Redundancy
VI    Loose Coupling
VII   Fallbacks
VIII  Scalability

3.  Transparency

IX    Monitoring
X     Logging
15

The 3 ways of DevOps

16

Sounds good, but how does it work?

17

“Okay, let’s start with DevOps …”

18

---

19

目录

20

Why?-为什么要做工程化?

21

图:时间+复杂度图

22

图:时间-金钱图

23

What?-什么是工程化?范围?

24

How?-如何做工程化? 有没有线索,头绪?基于 12-factor?

25

TODO

26

DevOps 是什么?

27

对 DevOps 的混乱解读

1. 。。。

28

解决谁的问题?

29

老板的 5 大需求

1.  Give me my peace and quiet!
- 尽量别烦我!
2.  Don‘t make me think!
- 不要让我想太多!
3.  Let me see that everything is fine!
- 我要看到一切正常
4.  Show me the problem – now!
- 随时给我看问题 - 就现在!
5.  Tell me what to do!
- 告诉我怎么做?

30

解读老板的需求

31

1.  Give me my peace and quiet!


(The application should just run smoothly)
- 应用要跑的好好的

2.  Don‘t make me think!

(Rollout, setup and operation of the application should be easy)
- 应用要操作起来简单

3.  Let me see that everything is fine!

(The application should show its state)
- 应用应该要时刻展示它的状态

4.  Show me the problem – now!

(The application should provide concise error messages and enable easy root cause drilldown)
- 应用应该提供简明的错误消息

5.  Tell me what to do!

(The application should be documented properly – including error handling instructions)
- 应用要配有合适的文档,包括错误处理部分

32

DevOps 人员的 3 大挑战

1. 可管理(Manageability)
2. 可恢复(Resilience)
3. 可透明(Transparency)

33

DevOps 应用的 10 个设计原则(角度)

- 部署(Deployment)
- 配置(Configuration)
- 备份(Backup)
- 隔板(Bulkheads)
- 冗余(Redundancy)
- 松耦合(Loose Coupling)
- 预设机制(Fallbacks)
- 扩展性(Scalability)
- 监控(Monitoring)
- 日志(Logging)
34

devops 小结

35

三条通往 DevOps 的路

1. Systems thinking
2. Amplify feedback loops
3. Culture of continual experimentation & learning

36

但是,仅仅只有 DevOps 是不够的!

37

DevOps 带来的变化: IT 组织架构

38

DevOps 会一步步带来哪些变化?

39

“好的,让我们从 DevOps 开始 ...”

40

“但是我们的 IT 部门太大,我们需要重新组织”

41

“怎样使团队变得更快(敏捷)?”

42

“如何管理这些团队”

43

“如何保证团队一直在正确的方向?”

44

“我们需要重新思考整个管理模型!”

45

“什么样的架构能更好的支持团队自治?”

46

“什么样的技术理念能让团队更敏捷?”

47

“什么样的基础设施能保证所需的速度和灵活性?”

48

“如何确保更快速和更高质量的交付?”

49

“如何确保生产环境的高可用?”

50

“如何在生产环境管理这些活动部件?”

51

“如何确保不同的团队能流畅紧密的工作?”

52

“如何确保我们的成效可持续发展?”

53

“如何从改进中获取足够的价值?”

54

“如何建立这些快速反馈循环?”

55

“最后,对参与其中的人,有怎样的意义?”

56

整张图出来,震撼全场

57

DevOps 小结

58

引出工程化实践

59

Thank you

DevOps is not so simple

DevOps - 没那么简单

2017.06.xx

黄庆兵

网易云

Use the left and right arrow keys or click the left and right edges of the page to navigate between slides.
(Press 'H' or navigate to hide this message.)