请选择 进入手机版 | 继续访问电脑版

IT运维管理,ITIL,ITSS,ITSM,ISO20000-ITIL先锋论坛

 找回密码
 微信、QQ、手机号一键注册

扫描二维码登录本站

QQ登录

只需一步,快速开始

艾拓先锋
搜索
查看: 267|回复: 0

敏捷文化--我们在实施DevOps时遇到的挑战

[复制链接]
来自- 巴西

参加活动:0

组织活动:0

发表于 2018-10-19 10:39:53 | 显示全部楼层 |阅读模式 来自- 巴西
本帖最后由 adminlily 于 2018-10-19 10:41 编辑
& ]; k4 K! o- z0 P% K; b0 ^5 N
1 h; i. Q' {) K: s4 ?, l
1.png
题图:敏捷看板

! _" _: \! g& P3 L( I: @  o
1 e5 L- V' k, L* W7 N7 C
现在只要搞开发的人,都在谈微服务,只要搞运维的人,都在谈DevOps,但对于大部小伙伴来说几乎没什么经验,对于大部分企业来说也只处于尝试阶段,虽说如此,可感觉大家在制定目标时,都不太喜欢给自己留余地,把规划写得很大,功能很全,甚至恨不得一夜之间所有问题都会通过微服务与DevOps的设想凭空消失。
3 x, x0 f4 G" O. {8 H$ M2 X+ L/ u
+ g( G- }. s; r; U
早在上半年,我曾向大家介绍过好买在这几年中实施DevOps的一些经验与教训,但绝大多数内容偏向于技术,对于其他方面说的太少,从本文起,我将通过一个系列向与大家聊一聊 “我们在实施DevOps时遇到的挑战”
% ?1 B* ?9 K% s8 O/ l' m0 G) q

; ]+ g( q' e) W# M6 Z
切换敏捷之前的过渡区
  j/ @7 P% v! l1 g
- y4 m) \, g1 x$ n: j0 f. \
对于许多草根程序员来说,提到敏捷所能带来的收益,条件反射的会说 “能快呀”、“不用写文档啦”

; ?. u1 }- ~: |3 O
+ R# H# A; W/ m9 E! _9 s. O2 k1 W, J0 ]% O
不能说这种说法有问题,只是不够专业,在实际的工作中,我们是否经常会听到这样的对话?
" ?. D9 u" d2 h- _% }, I" V; n

4 F5 z( `) s4 ?9 |, z3 W/ \/ G9 B
行,就按照你说的做,我写个需求规格说明书给你
; F5 d3 e4 L# x4 @6 [, V. B

" f: G7 l& A) m  v, @) ~
好的,写完别忘记给领导审批,然后我按照需求做个设计给你看下
……

9 {) r$ s! p* `8 V/ s. ~) z
1 C/ q+ |8 _1 u0 d1 A
开发结束啦,已经提测了,你问问测试吧
……
) N9 Q  [: G$ t5 D" I. t) v
6 J( w2 Y* _' c- y
问问测试吧,什么时候可以发布仿真环境
……

4 t  _- h& {/ A3 s9 H/ g9 S
. j% }7 n, v/ f' M) ^* L5 t* ?" Q3 j
又改需求了?别忘记先改需求规格说明书,要不然代码和文档对不上了,改完我再开发
……

4 }  S  }! T% B
# s% q$ h( o6 |: H( S
对于长期适应于「需求 -> 设计 -> 开发 -> 测试 -> 运维」的企业来说,直接切换至敏捷模式,无论对业务、技术及架构都是非常具有挑战的,这种挑战多半来自于业务场景与公司文化的限制,甚至是组织结构的局限性,不但不能快起来,甚至会带来一些意想不到的灾难& F3 H7 q  i5 x  N
1.png
(图文:职能化筒仓式组织结构)

0 b/ t8 A" ?) ?' f0 @
+ h1 }5 c& C! I& D) y
先用迭代让业务快起来,敏不敏捷不着急

% y) Z0 Z  b, K8 R1 |

$ s8 L( X6 ~# q
对于金融类企业来说,多半是业务驱动模式,业务关心的是 “快上线” 、 “别出事”,至于技术是用什么实现,敏捷也好,糊上墙也罢,他们其实并不关心

* |) g8 _3 x$ Y& V1 ~
/ O. y; [- [) B8 N
为了快速让业务获得收益,在采用敏捷之前我们选择迭代进行过度
1 W) s: G& C/ H: l3 o7 C9 r
( b3 Q5 M9 V/ Z- F
举例说明下迭代给业务带来的价值:要计划制造一辆汽车,它最核心的功能是可以在路上跑,所以我们可以先制造一个踏板车,依次迭代为滑板车,自行车,摩托车,汽车
1.png
(图文:正确理解迭代的方式)
7 H/ r. A( M+ j* T* m1 K  i

5 j$ m9 P# Z" T
瀑布 - 迭代 - 敏捷,三者的差异是啥呢?
1.png
(图文:瀑布与迭代的区别)
" ?5 Q' d9 \8 i; Y) M
1.png
(图文:瀑布的特点)
1.png
(图文:迭代的特点)
1.png
(图文:迭代与敏捷之间的区别)
2 J9 G/ x% m* M" m; ^
+ V. e, j5 x8 U4 g# q) ?  h

( A8 n, Z! U: m1 L, ~2 V0 [: S7 p
大家都缺乏敏捷文化

" c% y: x0 G0 D% k) C1 J0 B: U
3 l' o& x: Y, o8 N& n# @
从某种角度来讲,目前我们还是按照 「职能化筒仓式组织结构」进行分工协作的,开发和运维部门经常会坐在一起探讨,就运维流程如何改变、自动化能力如何建设等,然而自始至终无法突破的终极问题就是:无论我们如何改变,如果万一生产环境出了问题,谁承担责任?因为DevOps能力的建设需要一个过程,开发团队不敢承诺完全承担责任;而运维因为弱化审批和控制力,也认为不该为其承担责任。最终不了了之。

  }9 y; z$ |( ^& K3 Q! D. ?. V
* G" [2 ^  {: q3 C' b1 H& B
其实,使用迭代过度也只是权宜之计,真正的问题出在文化上,旧有的组织治理模式产生了各扫门前雪的官僚文化,没有责任共担,以及出现问题必然问责的文化。这种文化可能源自惯性的职能化思维,可能源自组织的绩效考评和激励制度。
1.png
(图文:跨职能产品化的组织结构)


( m, y# I* y! k* U


1 z6 j. G. e  f# |

现代关于“系统论”的研究已经在很多著作中强调,一个组织就是一个由人构成的复杂系统,组织中每一个人所能获得的信息是有限的(包括最高管理者也是),每个人或团队都只能基于自己有限的经验、有限的信息做出决策和行动。

1 t  ]) e: x" O* \3 ]3 v3 F* T

2 G* g/ b+ e8 L: I/ V

如果系统发生失败,例如生产环境出现问题,这必然是由于系统各个部分相互作用(从想法提出到软件投产各个环节的相互作用、系统与其它系统间的相互作用)产生的结果,对其中任何局部进行惩罚无非是寻找替罪羊,有害而无益。这时候组织真正应该做的,是相信每一个人都已经做出了最大努力,将相关干系人拉到一起对问题的根因进行分析,找到能够有效避免类似问题再次出现的解决方案,并确保该方案得到实施,对其效果进行验证。

, N: e  I  p5 P9 |6 O+ Z8 P4 s  |9 e7 v

% i1 L  G3 O) I+ t0 ~+ H

这是ThoughtWorks在一篇DevOps文章中所提到的,我觉得一针见血,不过对于大部分企业,尤其是金融类企业,实践落地所付出的周期与成本可能会更大一些。
$ l1 }. U  Z9 j7 O6 \' t; k; F


+ T" u9 m0 s8 h3 c


3 C; B% @4 c+ o  b0 i

再举个例子,我曾经说过,我们的架构部模仿饿了么的 “随机故障测试系统(Kennel)” 自研了一套 “混世魔王”,英文名叫“ChaosDevil”,这个 “魔王” 会根据策略每隔一段时间随机将生产环境服务器关闭,以此来测试生产环境的快速恢复能力,促使各团队提升系统的稳定性;

1.png

(图文:网络游戏 - 混世魔王形象照)

$ A6 N8 a8 v" T; Q# b0 r

7 e" ]; b/ t( o% H. {) x4 Q6 p

有趣的是被指定优先使用的团队口头全力支持,但实践起来却迟迟延误,当然大家都比较忙,这也是可以理解的。不过我们可以设想下,如果没有这个“魔王”,大家可以给领导讲自己的系统很稳定(只要没出问题);

' Y. a5 b2 e& c; @: I' Y/ L0 {


, M! r% h) G6 V1 x* C2 L7 T

然而这个 “魔王” 可能会随时暴露出自己的系统并不像自己所宣称的那样稳定,会降低自己在上级心目中的“有能力”印象,随之而来的可能就是问责、惩罚;


- R, C* Z4 T. v( p8 \  t# x; U

6 d7 M1 x2 |& D& d

这样的文化下,大家真正关心的是如何给领导“表现”,而不是在真正的系统稳定性上追求卓越。


5 W2 a* F: d* v0 ?/ r6 C: J

- V+ \- v9 _0 F5 \$ G! |

所谓敏捷文化是个啥?

6 N2 P# w; H9 a$ F( {


- `# c# f, o! E* z

抄袭一张图吧,简单点
1.png
(图文:敏捷,乃至DevOps所需要的文化)

8 n- b' O, Y8 ]# u" o
原创: 王晔倞

本版积分规则

选择云运维时代的王牌讲师-长河老师,助你轻松入门ITIL Foundation培训课程

QQ|小黑屋|手机版|Archiver|艾拓先锋网 ( 粤ICP备11099876号-1|网站地图

Baidu

GMT+8, 2019-2-24 13:42 , Processed in 0.212676 second(s), 31 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表