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

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

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

扫描二维码登录本站

QQ登录

只需一步,快速开始

搜索
查看: 1539|回复: 0

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

[复制链接]
发表于 2018-11-15 15:41:09 | 显示全部楼层 |阅读模式
本帖最后由 adminlily 于 2018-11-15 15:42 编辑
% X5 T  L4 C' J/ m6 P
8 @) n5 t4 C6 R& ^1 d
本文根据John Rzeszotarski和Chris McFee在DOES16(DevOps企业峰会16)的演讲《Banking on DevOps》整理而成。
5 v  c- Q- g, M) f' H1 {7 E
# j, V& [8 o. C% H0 Y% r+ F  m
背景:KeyBank是北美15家最大的银行之一,有超过190年的历史,主要服务于企业客户。总资产大约为940亿美元。Keybank银行及其子公司,提供了一系列的零售和商业银行服务,包括商业银行贷款,投资管理,金融,投资理财产品,以及个人服务等。 经过多年的发展和并购,该金融机构的IT系统变得异常复杂。
5 R3 ]  c1 W* P2 `0 `

) r6 ^: h. }; ?. w3 f
灾难:2年前KeyBank经历了一次严重的系统停机事件,在修复该事件的过程中,由于对系统复杂度理解不足,导致更大的服务终止问题。该事件引起KeyBank高层高度重视。这也说明没有痛点企业很难下决心解决问题。

" E" r% x- U' e3 Z. n3 ?  s5 {' z

) `! ?" [: y8 c0 ^
首先,KeyBank成立了一个4个人的资深技术小组(START),负责了解KeyBank采用的系统复杂度到底是怎么样的。
7 J" m7 j6 G) Q6 s

% p' G( @5 l7 m8 e, a+ ?8 a# }
该小组历经三个多月的时间,把银行每个主要交易事务所涉及到的硬件(服务器,网络)和软件服务都绘制到一个图示中。结果发现历经多年发展,KeyBank维护的IT系统的复杂度着实惊人:仅仅一个用户登陆(Login)行为,就要经历190个网络跃点(见下图)

8 L+ I# a' }$ Y; C2 w6 V# s
5 d! `! l6 z1 ~8 r4 C5 l
0?wx_fmt=png.jpg

$ F% U4 }% l6 Y8 P! v+ V6 I

) n; p: ~4 d' d
一个登陆动作会历经190个网络跃点

, E* R4 Z2 k  V3 I( C. Y

0 y0 i- u0 ]8 w3 P0 @; Y! x3 Z
其它发现的问题主要包括:

1 K' z2 x1 E7 c: \3 ]4 R8 z7 g
1 ~/ d' c# P! C3 {5 X3 S+ u
·     缺少统一配置(服务器,网络等)

+ V! W2 H2 ?. k6 n) D9 S

3 ~; U% b. E) c/ E4 V3 C
·     缺少自动化
- O: z1 E+ Y& [$ N& L
! r/ x/ d# |3 P
·     团队之间职责不清、缺少沟通
4 n* b4 S9 L9 g% }
+ {  J, k: J0 e4 k1 z8 S; n  Y+ S
·     不同环境迁入导致的高额技术债

) a' i  O% v4 }0 M  f

4 \# O2 Y+ W  H, X+ l8 q: N
这些问题使大家意识到要想类似(或更严重)的服务停止事件不再发生,需要从根本上解决这些问题。从此KeyBank开始了DevOps之旅。
' O9 x7 ~5 y4 T1 Z0 o

: p& k) h# d+ O- w
当然,首先这个小组要说服高层接受DevOps理念。他们用数据来说服老板们(下图):

8 @* C# K& c9 I' P. Z9 n- R5 ?! {+ Q; X
7 s  g2 l) n* s, M* [
0?wx_fmt=png.jpg
9 Q, u  p. G6 \- ~

$ P" T/ y/ W2 T, o" g& @; I% \; m
给公司高层的DevOps好处分析
' W+ z* i9 e* o0 M8 A

7 m7 l% `  f2 z: c9 v
基本上就是跟老板说,通过实践DevOps,可以:

9 Q+ h; p/ i- }7 `
4 l6 P, v; l% m1 r* w. [4 x
·     优化50%的测试资源(想说可以减掉50%的人工吧??)

* {1 ^' _3 l+ \9 X' D; ]
+ l8 }, P' U( o3 g2 y, P+ o3 a
·     优化40%的发布和代码管理工作
4 Z3 b) n5 `3 {6 C) A" J
& A9 m# m# Y3 l- h" i
·     优化20%的基础设施工程师
* Z7 p- W7 ?/ o/ a* z

9 u. |9 x1 v# i  D% o  d
·     降低85%的产品上线周期(测设、安全、发布)!
5 H# H) H# Y' ?; G/ X3 T

# y( G  c  w! Q2 e+ S# l
·     降低30%的新产品Defects!
$ \/ P3 f: v* ?% R
4 c% M. w4 L3 Q, E' y
·     再降低50%的部署失败率!
) ^/ r/ h# _1 _' ^5 T7 U

! d7 M- X7 h: u4 U* E7 Z
(这几个哥们够拼的,把自己都逼上绝路了)
1 w# z0 L. }# E$ B: I
  j9 g* Z5 V8 u
KeyBank的高层看了还是很心动的,但是搞DevOps要花钱,再增加IT预算也不现实(刚刚出了事故)。最后他们达成一致:
& P% t1 _' W% |

' F# \  l( L# K- ^
·     老板自掏腰包搞了个天使投资(估计是从现有IT预算里挤出来的)
  W, Z3 H1 J9 z6 G1 v5 Q
6 \6 H! W7 X9 a0 I9 K$ _
·     先成立一个4个人的DevOps小组(后面会说这个小组做什么),后期发展到10~12个人的规模

) m; H8 t' G" D

9 }5 [: o4 H, J8 ^, |
·     先找一个业务价值大的项目开始(网上银行)实践
% z7 Q- b0 X( U# L* G$ _

1 T& V$ m4 K! c/ u! k7 E! m/ f
这个4人DevOps小组的重点攻关方向只有三个:容器,自动化测试,持续交付。
3 t' E' j! ]) \7 f7 q2 t8 z# c
& D& G! W/ S6 `9 W- N
关于这三个重点方向的确定,是KeyBank对该企业硬件和配置环境复杂度,测试质量和低测试效率(顺便说下,他们之前建了很多外包测试中心),还有自动化程度不足的深思熟虑的结果。当然对很多类似的企业也有很多参考价值。
8 s+ Q1 i7 g9 P5 Q/ b, M

9 W, X+ m. A' x+ p+ s2 {8 d
0?wx_fmt=png.jpg
" o/ q: C: R7 W
/ n0 o3 ~  e! r6 ^0 [
KeyBank的三个DevOps重点方向

) N; y! ]% n2 O7 Y5 J

- V( ^+ |3 y) m' B2 r
容器使得KeyBank可以采用Immutable Server的策略,大大简化了环境管理的复杂度。另外在Docker之上,他们也采用Kubernetes来保证高可用性,热部署,和环境的自我修复。两位倾情推荐!

8 d: d" H; Y5 N% j$ b

% _/ Z# w' ?8 l. Q! V: y/ l

1 f6 K7 z  Q9 }) I* ^# q
0?wx_fmt=png.jpg
: a( |  n& U2 z' l% _! Y# D3 F
; R# s/ {( \! E) ]+ I6 E
通过Kubernetes把Docker连接和管理起来
( |$ v/ h# }( g; Q
: r/ A8 d' B7 l- i6 i
两位继续谈到了自动化测试的重要性,也提到了转换到自动化测试需要比较长的培训和试错时间。但一切都是值得的。现在他们每个Build要运行超过5,000个测试,而执行时间只有15分钟!这在手工测试时代是不可想象的。
5 v( v4 W* N) M7 {

2 W" ?$ Z  O7 e
接下来是持续交付。持续交付使得整个交付周期形成一个无缝的流,也让每个不同的部门/角色都能协同在一起工作。业务现在分析人员也开始写Gherkin代码,而运维人员则写基础设施即代码的脚本。
' V' i# h' f% L

1 a+ E4 @. H" q. K7 p- T9 m+ _8 e
经过一年半的努力(并不算长),KeyBank达成了以前不敢想象的IT能力:

* x% ]& p% M2 {* l7 @& Y9 u- d

3 M4 z" s; A, d
比如测试执行时间,以前的测试84个场景要执行1200小时,而新的自动化测试覆盖195个场景,只需要12分钟。

* ?9 L  P+ ]0 j" a7 u4 R2 F
. i8 s3 e+ o9 t8 U3 w# Q- p$ p; S/ ~% {
最令他们骄傲的是,2016年KeyBank收购了First Niagara,一下子网上交易量暴增。而即使在并购后最初上线运行的前4天的高峰期,他们还热部署了10个发布到,结果没发现一个产品缺陷!更多见下图。
- Z  `$ y- V+ T9 O# ^6 u0 H
  [" m. e. g  \& P6 u! Z$ ~
0?wx_fmt=png.jpg

( [; \0 D0 t4 m$ z( S. ^
! D% k- a* o) O+ ]7 V5 g9 F% |# g
只用了一年半时间,KeyBank的IT就达到了非常惊人的结果
0 A' i0 O2 i3 Z# }- w4 u

+ j5 B: H9 D3 ~& Q1 T! l+ u3 B
以上就是KeyBank的DevOps转型简介。有兴趣的读者可以访问https://www.youtube.com/watch?v=xgSkva_Eq5s观看完整视频(需翻墙)。
& n" v5 I( [( ~

6 T( B0 ^8 h/ ^& h4 f3 s; y- q4 o
最后一张图送给工具控们:
  q! B  G5 K/ v# N% [+ m* M" z. Y# _
) J9 V$ E8 Z6 r6 l1 n+ g
0?wx_fmt=png.jpg
KeyBank 的DevOps工具链

0 N# B2 P; g! _7 @

8 `4 t" P8 I4 y4 E* M. h' w$ b1 D9 d4 k" F
: b4 h3 g' V! L2 \1 T- q/ [
原创:DevOps咖啡馆

& W% E- u  Y- x$ p9 V3 ]
1 W0 d! ]; R1 X! Q. I

4 d) |. j& k& i% |# E. F" f
5 r+ j; F! D$ }% S
& k" _  B6 h, F( W5 q6 V3 }$ [) Z" e$ \9 u. ^' l

2 \; {. K+ |" ]: c

/ o- N3 Q6 y7 D1 @
8 q! {, K* V9 Y9 n, d




上一篇:教你了解DevOps:从概念、关键问题、兴起到实现需求
下一篇:阿里云基于Devops实践之路

本版积分规则

参加 ITIL 4 Foundation和中级过渡MPT认证、DevOps专家认证、ITSS服务经理认证报名

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

Baidu

GMT+8, 2020-7-6 19:15 , Processed in 0.168313 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

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