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

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

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

扫描二维码登录本站

QQ登录

只需一步,快速开始

搜索
查看: 490|回复: 0

金融行业-KeyBank银行DevOps转型案例

[复制链接]
来自- 广东广州

参加活动:0

组织活动:0

发表于 2018-11-15 15:41:09 | 显示全部楼层 |阅读模式 来自- 广东广州
本帖最后由 adminlily 于 2018-11-15 15:42 编辑 0 {! `! W' u" A0 }& \, f
) B* Y1 {6 y9 s1 }3 e
本文根据John Rzeszotarski和Chris McFee在DOES16(DevOps企业峰会16)的演讲《Banking on DevOps》整理而成。
3 t. z: x7 i4 r, l: Q9 w# B
2 o8 [7 i* [% Y9 J# o7 i# w
背景:KeyBank是北美15家最大的银行之一,有超过190年的历史,主要服务于企业客户。总资产大约为940亿美元。Keybank银行及其子公司,提供了一系列的零售和商业银行服务,包括商业银行贷款,投资管理,金融,投资理财产品,以及个人服务等。 经过多年的发展和并购,该金融机构的IT系统变得异常复杂。

8 ~$ P7 R& Z0 ^3 t9 h
& m( n3 h8 n7 o7 h# K
灾难:2年前KeyBank经历了一次严重的系统停机事件,在修复该事件的过程中,由于对系统复杂度理解不足,导致更大的服务终止问题。该事件引起KeyBank高层高度重视。这也说明没有痛点企业很难下决心解决问题。

! n, n5 K+ H7 a; ^! Q
5 V1 q0 e( [! n# e
首先,KeyBank成立了一个4个人的资深技术小组(START),负责了解KeyBank采用的系统复杂度到底是怎么样的。

5 V) w  S" g" w# q8 ?* [

/ a! ]7 x: R; |* O: u
该小组历经三个多月的时间,把银行每个主要交易事务所涉及到的硬件(服务器,网络)和软件服务都绘制到一个图示中。结果发现历经多年发展,KeyBank维护的IT系统的复杂度着实惊人:仅仅一个用户登陆(Login)行为,就要经历190个网络跃点(见下图)
+ z" Q8 r: D9 O( O# f

8 K: V+ y6 K, a% ~( X" D
0?wx_fmt=png.jpg
: {3 H  c, `0 w+ F

! {' t0 |  K3 \( {! \% k
一个登陆动作会历经190个网络跃点
' ]9 j/ ^& Q( v7 ]  r

( M/ j5 ~# C8 y; p& I) S1 o
其它发现的问题主要包括:
& ^6 R- S2 F9 H5 D

& f- i0 y6 Y) c9 a. P. p1 l" o6 A9 |) o
·     缺少统一配置(服务器,网络等)
7 N! l8 d2 p( K* `: z
% @% y) }, v" |1 E7 v; H3 K
·     缺少自动化

$ a+ H2 ~$ F" O  m  O+ U6 M

; x( d' X/ B7 H1 |- o% d
·     团队之间职责不清、缺少沟通
' J" t7 W2 z0 i; R- k

6 F" P5 H+ ~' E, D/ {
·     不同环境迁入导致的高额技术债

; S  B3 Y+ |: r
% p* @5 B# `" E7 d4 f$ ~
这些问题使大家意识到要想类似(或更严重)的服务停止事件不再发生,需要从根本上解决这些问题。从此KeyBank开始了DevOps之旅。
$ ?" I  M/ Z* V1 W
7 v4 i. i( [/ p- ~  O' j; u
当然,首先这个小组要说服高层接受DevOps理念。他们用数据来说服老板们(下图):
9 g* k$ e# _* I' H* Y8 S

  z; |/ J- q1 M$ l7 r# J# s, s+ c
0?wx_fmt=png.jpg

- M0 |& M2 U2 B: X# C$ a6 R
& T" y1 r& y# ~2 v' X3 R, ~# T
给公司高层的DevOps好处分析
: L8 H8 K5 v  U$ ~& d

6 C5 Y0 C' B4 L) A3 I
基本上就是跟老板说,通过实践DevOps,可以:

* f% K2 e; W  I: f" }- `
  J: D/ Z! C8 h. s0 Q
·     优化50%的测试资源(想说可以减掉50%的人工吧??)

0 b. q# X1 y# x* {. }( T: j
% A2 _  f6 G: f' c2 C- u
·     优化40%的发布和代码管理工作
% T' `! U! z! X% I7 A2 h

" G1 X  }; I/ Y# F$ b
·     优化20%的基础设施工程师
. H2 ]5 N& p- t3 C) [
; C4 d) s9 ^. Y; t% X, D
·     降低85%的产品上线周期(测设、安全、发布)!
! C9 S* p! i& O  ~& Q

) [  b+ e6 S, V& G4 H
·     降低30%的新产品Defects!

; \  Q& f" o! g+ H* i8 m

/ R& C2 B5 q3 f3 p( c
·     再降低50%的部署失败率!
; q1 Z% c3 U+ P, u/ q* |

- J& t; d' P6 M
(这几个哥们够拼的,把自己都逼上绝路了)
' a9 z; o0 X. z3 b4 a
, r6 c; B0 C# n5 W; b( {
KeyBank的高层看了还是很心动的,但是搞DevOps要花钱,再增加IT预算也不现实(刚刚出了事故)。最后他们达成一致:

3 {3 j' r( u$ {+ a7 g1 L

; v  T4 X( U& x' a2 W
·     老板自掏腰包搞了个天使投资(估计是从现有IT预算里挤出来的)

# {! G) e; \. t  |

! E* X: {: @. N: B: c9 ^9 O% T
·     先成立一个4个人的DevOps小组(后面会说这个小组做什么),后期发展到10~12个人的规模

" m2 [0 P( d* J) i
3 O5 w% P) l2 a; D2 c
·     先找一个业务价值大的项目开始(网上银行)实践
: r3 m' K" k. Z1 Z" H& f9 A

; Q/ @3 i+ d0 W+ E) _
这个4人DevOps小组的重点攻关方向只有三个:容器,自动化测试,持续交付。
  w) i- h& z* r$ u; L8 s4 ~; T" C

9 [  B% k, X' n6 E4 `" g
关于这三个重点方向的确定,是KeyBank对该企业硬件和配置环境复杂度,测试质量和低测试效率(顺便说下,他们之前建了很多外包测试中心),还有自动化程度不足的深思熟虑的结果。当然对很多类似的企业也有很多参考价值。
: e' Z$ w1 w6 A$ D, g/ W3 A9 K
" ]3 Z/ w: D9 T0 M
0?wx_fmt=png.jpg
, ?' ]% l4 N& _, |) ^9 J! j$ J
* H. n3 D2 G0 J" g8 V
KeyBank的三个DevOps重点方向
, a2 V% K2 x/ m  b8 N7 m6 c

) T/ ^3 M. P4 X& s4 f+ s
容器使得KeyBank可以采用Immutable Server的策略,大大简化了环境管理的复杂度。另外在Docker之上,他们也采用Kubernetes来保证高可用性,热部署,和环境的自我修复。两位倾情推荐!
9 w7 ?1 T: P( @7 T9 Y
4 e$ O4 ~! Q  f4 E, R
# @7 ?+ h; Z1 I. L" ]
0?wx_fmt=png.jpg
5 t. j9 j1 X/ B* Z; [
: }/ n: L& ^% k7 K  S
通过Kubernetes把Docker连接和管理起来

1 h8 j3 l# y( _: r; T( _

2 w: V, [4 N4 {! i
两位继续谈到了自动化测试的重要性,也提到了转换到自动化测试需要比较长的培训和试错时间。但一切都是值得的。现在他们每个Build要运行超过5,000个测试,而执行时间只有15分钟!这在手工测试时代是不可想象的。

; R$ L2 D! Q6 \% h' U& I

5 W. ]9 V/ o5 K# y: J
接下来是持续交付。持续交付使得整个交付周期形成一个无缝的流,也让每个不同的部门/角色都能协同在一起工作。业务现在分析人员也开始写Gherkin代码,而运维人员则写基础设施即代码的脚本。
6 ?6 [: p0 @+ Z5 A

. R' }' x# B( ]6 i) j
经过一年半的努力(并不算长),KeyBank达成了以前不敢想象的IT能力:
  c9 \, j( E. c7 }' h

3 ~! }! i$ ~, X  v9 Y4 z* |& |
比如测试执行时间,以前的测试84个场景要执行1200小时,而新的自动化测试覆盖195个场景,只需要12分钟。
; u7 s1 f% L2 }2 E# S( }4 A: p

9 _  |- o/ w- }0 P% {) c3 \. f
最令他们骄傲的是,2016年KeyBank收购了First Niagara,一下子网上交易量暴增。而即使在并购后最初上线运行的前4天的高峰期,他们还热部署了10个发布到,结果没发现一个产品缺陷!更多见下图。
8 `# [% t1 s' r4 u4 f' I; }" o

8 [1 S: A! z; a+ E, R
0?wx_fmt=png.jpg

" e0 z( j! X  i) e+ E0 r1 `1 s

% D* m3 D0 }2 E  b9 @
只用了一年半时间,KeyBank的IT就达到了非常惊人的结果

$ F$ u' k. u3 B5 U. ?

  L4 D* W- _8 b+ }/ y: a
以上就是KeyBank的DevOps转型简介。有兴趣的读者可以访问https://www.youtube.com/watch?v=xgSkva_Eq5s观看完整视频(需翻墙)。
0 S7 A  w6 d7 a) g$ w% y8 I# g* o* A
) l' o+ b. I2 r8 Q
最后一张图送给工具控们:
. S9 v9 B+ B% Z. @9 p6 c
, O& i, q- ]' ~2 K
0?wx_fmt=png.jpg
KeyBank 的DevOps工具链
( n, f) r* o  t& n: ?3 ?" M* z

+ B& ^7 z  @( j2 v9 e( ]3 A6 H

$ A7 V0 [% q0 V4 J
原创:DevOps咖啡馆

  h1 x& L0 J: V. ~1 U0 r
8 I2 U) g  R* j! K' V5 d
6 U$ d& G' |  d- k+ p
( F% N- ?! F$ x4 ~) q: z' ^

5 J# ~; R3 K& \1 g9 }& B* ^& Y; [& P

' h. A7 R4 \7 X0 J! ]

$ S% }- G3 U3 O# q, Y* N1 D! Y) d1 S+ ?

本版积分规则

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

Baidu

GMT+8, 2019-6-17 23:05 , Processed in 0.196398 second(s), 29 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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