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

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

 找回密码
 立即注册

扫描二维码登录本站

QQ登录

只需一步,快速开始

查看: 2556|回复: 0

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

[复制链接]
发表于 2018-11-15 15:41:09 | 显示全部楼层 |阅读模式
本帖最后由 adminlily 于 2018-11-15 15:42 编辑
) T2 ]/ J4 ]6 \- K* u$ s  e7 g" H/ v& l- X" ~
本文根据John Rzeszotarski和Chris McFee在DOES16(DevOps企业峰会16)的演讲《Banking on DevOps》整理而成。
3 K$ B( j, @9 y  n8 O
9 Y1 u) _/ z4 q8 e5 ~: z
背景:KeyBank是北美15家最大的银行之一,有超过190年的历史,主要服务于企业客户。总资产大约为940亿美元。Keybank银行及其子公司,提供了一系列的零售和商业银行服务,包括商业银行贷款,投资管理,金融,投资理财产品,以及个人服务等。 经过多年的发展和并购,该金融机构的IT系统变得异常复杂。
. g7 q" w1 P: Z6 b0 J
7 Z  |/ g0 ~8 v! C- _
灾难:2年前KeyBank经历了一次严重的系统停机事件,在修复该事件的过程中,由于对系统复杂度理解不足,导致更大的服务终止问题。该事件引起KeyBank高层高度重视。这也说明没有痛点企业很难下决心解决问题。

- r, T9 }; o% W3 d) a

1 }2 A, a; M; s# K# i
首先,KeyBank成立了一个4个人的资深技术小组(START),负责了解KeyBank采用的系统复杂度到底是怎么样的。

+ t7 |) @* k; ^/ R

) C, @, p; R' k5 E7 T. S1 U
该小组历经三个多月的时间,把银行每个主要交易事务所涉及到的硬件(服务器,网络)和软件服务都绘制到一个图示中。结果发现历经多年发展,KeyBank维护的IT系统的复杂度着实惊人:仅仅一个用户登陆(Login)行为,就要经历190个网络跃点(见下图)

) g, r2 {6 g* [5 G
- J7 n0 h" Z3 E& e! I. A
0?wx_fmt=png.jpg
6 W& a/ c& e; z; z5 H
2 P6 }. m( w* I6 m- S
一个登陆动作会历经190个网络跃点
6 I. x8 l; J* t  U+ _! l

7 X# i, y7 e* P
其它发现的问题主要包括:

5 A& T: F5 Q9 n1 q
4 f$ p& r$ J2 h7 |6 I* f; _8 L
·     缺少统一配置(服务器,网络等)

4 X) m/ t: ?7 O; T- ^( Y: d; C
# {3 U' U9 T- Y- r8 ^. ^$ K* E2 \
·     缺少自动化
9 {; I2 j) T. I

# Q1 w- L* B. F- q
·     团队之间职责不清、缺少沟通
  m4 U& t6 B: f  K

! W' Z! A, R8 W& _
·     不同环境迁入导致的高额技术债
2 ^5 t6 ^! S- `2 S7 R
2 D7 c- G4 q* b, M2 i
这些问题使大家意识到要想类似(或更严重)的服务停止事件不再发生,需要从根本上解决这些问题。从此KeyBank开始了DevOps之旅。

1 s, |1 G  z- k

$ d4 A2 ?  j9 r1 R
当然,首先这个小组要说服高层接受DevOps理念。他们用数据来说服老板们(下图):

: u) r1 U( Y! `5 m$ F* B8 v) t# [
$ W+ [( p- u& q! g& j3 |1 U
0?wx_fmt=png.jpg
) U2 D0 Y! M9 G. a( f# o+ t

! Q0 n8 [! V9 F5 w
给公司高层的DevOps好处分析
/ t8 b; t* M6 S3 l- b: |: ~& x" X
7 w( e5 u! {* V. `& B" V
基本上就是跟老板说,通过实践DevOps,可以:
9 w+ V' z% k6 o

/ e. p1 v+ F# B+ @4 e; T
·     优化50%的测试资源(想说可以减掉50%的人工吧??)

- b6 l) B' M* ~& d8 x6 B9 Y( D( H

  G3 M5 s& R3 j+ ]3 {; b+ y0 d
·     优化40%的发布和代码管理工作
) ?" i$ {2 K3 Q) z+ \4 y* s7 B6 H
* i0 a, ]% y0 e4 v+ [. q4 c8 B
·     优化20%的基础设施工程师

) }5 Z- P4 j- S" W4 O* S

5 I' O$ L. F8 o! N1 j1 R; t
·     降低85%的产品上线周期(测设、安全、发布)!
/ {3 [5 g& E9 Z8 S5 v: H
, |. Q5 I5 a3 @8 R1 d+ a
·     降低30%的新产品Defects!
3 r* L* e4 a: z, h0 ]
* v* x& Y/ R" R. e1 U, K
·     再降低50%的部署失败率!
# b! y9 y; s% r* R+ p& n) b

3 l7 N2 M. H# l- x! l! G% T6 ^9 S
(这几个哥们够拼的,把自己都逼上绝路了)
  T) z$ n* m% C" l0 v$ P
, [$ j/ c, E! x# }3 _/ c' _  |
KeyBank的高层看了还是很心动的,但是搞DevOps要花钱,再增加IT预算也不现实(刚刚出了事故)。最后他们达成一致:

& ~+ Y6 h5 z) @. O
9 u& l7 |& x+ [7 X/ o  O1 y: M5 B, V
·     老板自掏腰包搞了个天使投资(估计是从现有IT预算里挤出来的)

- B$ c4 j, O, L
" t" u2 \# }& S$ N7 ~/ q& f$ [1 l# z
·     先成立一个4个人的DevOps小组(后面会说这个小组做什么),后期发展到10~12个人的规模

3 n$ q5 r+ ^$ f; L

  Y8 B! U/ t4 t' W+ t# ]
·     先找一个业务价值大的项目开始(网上银行)实践
- g( }! O, @/ ~/ A/ |# q
. w! m2 {6 g5 t) w
这个4人DevOps小组的重点攻关方向只有三个:容器,自动化测试,持续交付。
/ U( G$ _. o( D6 j5 X- U7 X7 P, p
9 a+ K; @& b4 E
关于这三个重点方向的确定,是KeyBank对该企业硬件和配置环境复杂度,测试质量和低测试效率(顺便说下,他们之前建了很多外包测试中心),还有自动化程度不足的深思熟虑的结果。当然对很多类似的企业也有很多参考价值。
( c! A- H3 \' n! H

7 ^: d) W( m9 B; t- K% u' p
0?wx_fmt=png.jpg
* i3 U6 v3 t" s; P- {5 |$ t4 m

0 U$ a& R& i, L; V; R4 K5 _
KeyBank的三个DevOps重点方向
" ]; ]1 \3 K* c* ]8 O  Y

6 L' `. s/ S+ n; D% l
容器使得KeyBank可以采用Immutable Server的策略,大大简化了环境管理的复杂度。另外在Docker之上,他们也采用Kubernetes来保证高可用性,热部署,和环境的自我修复。两位倾情推荐!

+ u: g! v' e- ^4 q4 B! m/ e

3 F: q9 A( M" v' t

9 f" v8 h( X$ p8 ?4 o* n/ _! k7 m
0?wx_fmt=png.jpg

& n, s# o) M- I
/ B- ]% T8 H" K& L0 \4 A8 K  ~
通过Kubernetes把Docker连接和管理起来
! `; ^* W) `4 j9 x$ }3 u; P" V7 Q& {

. e5 A% h1 Q0 Y/ `
两位继续谈到了自动化测试的重要性,也提到了转换到自动化测试需要比较长的培训和试错时间。但一切都是值得的。现在他们每个Build要运行超过5,000个测试,而执行时间只有15分钟!这在手工测试时代是不可想象的。
, p# X, g5 `) }5 u

' d4 a3 N2 q9 g  V( _+ _+ W
接下来是持续交付。持续交付使得整个交付周期形成一个无缝的流,也让每个不同的部门/角色都能协同在一起工作。业务现在分析人员也开始写Gherkin代码,而运维人员则写基础设施即代码的脚本。
% @2 H6 g4 j% Z7 p$ h

( [0 i3 @$ S5 ?1 h4 O% c3 o& L
经过一年半的努力(并不算长),KeyBank达成了以前不敢想象的IT能力:

5 P: E3 h# l# F3 K
) M. r: i6 y5 S8 O4 u/ o6 i
比如测试执行时间,以前的测试84个场景要执行1200小时,而新的自动化测试覆盖195个场景,只需要12分钟。
. }& T8 M% j8 ~' Z8 ^/ z& n

9 V! S: v2 ^+ e7 z# U4 v
最令他们骄傲的是,2016年KeyBank收购了First Niagara,一下子网上交易量暴增。而即使在并购后最初上线运行的前4天的高峰期,他们还热部署了10个发布到,结果没发现一个产品缺陷!更多见下图。
! Q3 U8 z4 e2 @
3 T. u0 g4 v- ^
0?wx_fmt=png.jpg
, N) O1 `$ Y& T/ `

% Y6 U! I' z% f
只用了一年半时间,KeyBank的IT就达到了非常惊人的结果
/ B9 |, e2 ?& Y

1 h- H" _# x3 Z2 \6 @# S
以上就是KeyBank的DevOps转型简介。有兴趣的读者可以访问https://www.youtube.com/watch?v=xgSkva_Eq5s观看完整视频(需翻墙)。
- q! w6 R$ i' ~4 r, o3 ]1 K( }
1 T4 j( D& |; w5 P
最后一张图送给工具控们:
& k5 n8 }- V' {. G9 m3 C" h8 c6 s+ V

. I% z* G8 ^1 B; R5 n. l
0?wx_fmt=png.jpg
KeyBank 的DevOps工具链

! t( X: I( u  @, R; p

+ v" K7 q  `+ z7 L5 {/ j

% L8 e: M- d! F5 |6 ]2 L
原创:DevOps咖啡馆

( I( ~' w1 c$ L1 x* K

% l8 a& l0 E' M% I8 A
: t9 g& }% n9 e- R4 b6 o
$ k. ?& x% b/ k; b+ e8 D% I( b  f3 M* R. \$ L
' |0 O% w, s' _* [1 Q

: E2 w2 v. x8 H  N
+ p! |& X( V2 K5 O
/ y) j7 z" [& U3 o5 z3 o; W$ I




上一篇:教你了解DevOps:从概念、关键问题、兴起到实现需求
下一篇:阿里云基于Devops实践之路
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

参加 ITIL 4 基础和专家认证、长河ITIL实战沙盘、DevOps基础级认证、ITSS服务经理认证报名
ITIL(R) is a registered trademark of AXELOS Limited, used under permission of AXELOS Limited. The Swirl logo is a trademark of AXELOS Limited, used under permission of AXELOS Limited. All rights reserved.

QQ|ITIL ( 粤ICP备11099876号 )|appname

GMT+8, 2022-12-2 23:10 , Processed in 0.154903 second(s), 32 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

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