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

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

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

扫描二维码登录本站

QQ登录

只需一步,快速开始

搜索
查看: 798|回复: 0

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

[复制链接]
发表于 2018-11-15 15:41:09 | 显示全部楼层 |阅读模式
本帖最后由 adminlily 于 2018-11-15 15:42 编辑
; X# n8 ^  @/ V" N9 y
9 U& t, ^* L9 P
本文根据John Rzeszotarski和Chris McFee在DOES16(DevOps企业峰会16)的演讲《Banking on DevOps》整理而成。

4 V0 l, t& P4 T  @1 m
$ ^" o0 f) x$ W
背景:KeyBank是北美15家最大的银行之一,有超过190年的历史,主要服务于企业客户。总资产大约为940亿美元。Keybank银行及其子公司,提供了一系列的零售和商业银行服务,包括商业银行贷款,投资管理,金融,投资理财产品,以及个人服务等。 经过多年的发展和并购,该金融机构的IT系统变得异常复杂。
0 ~$ A: P# K* T1 `
5 R! f% i0 E: L" b  n7 s2 d  {
灾难:2年前KeyBank经历了一次严重的系统停机事件,在修复该事件的过程中,由于对系统复杂度理解不足,导致更大的服务终止问题。该事件引起KeyBank高层高度重视。这也说明没有痛点企业很难下决心解决问题。
; A4 p& _7 s; X9 n) M

5 S3 V6 \6 R' s% N: @. l, `
首先,KeyBank成立了一个4个人的资深技术小组(START),负责了解KeyBank采用的系统复杂度到底是怎么样的。

( \, P, X5 w* l* A( ], E6 E" y# t0 U

, A" \" A* x: M5 ^  F
该小组历经三个多月的时间,把银行每个主要交易事务所涉及到的硬件(服务器,网络)和软件服务都绘制到一个图示中。结果发现历经多年发展,KeyBank维护的IT系统的复杂度着实惊人:仅仅一个用户登陆(Login)行为,就要经历190个网络跃点(见下图)

% T5 n1 M; A& e

$ v" y. y9 ?9 I; D5 C8 n9 \
0?wx_fmt=png.jpg
( M2 W) x+ T0 R  h

: T1 c0 D+ z( N/ S: h
一个登陆动作会历经190个网络跃点
  L  c/ O" C' |7 n' z

- W+ r4 Z7 R& C0 m5 i, W- ^% `
其它发现的问题主要包括:

& a& s- Z6 @# g* T2 Z2 d3 S6 B9 l
$ Z" }% H$ l9 f2 w% s
·     缺少统一配置(服务器,网络等)

+ I' p4 n$ ]) K* ]: M( M$ Y. j

% N( v+ p3 }, @
·     缺少自动化
! O8 O9 D5 e. \

' a+ o. @  n9 |: \$ M2 ]
·     团队之间职责不清、缺少沟通
  p+ L& r; S% v) W7 ]2 ?7 s

! j5 @7 D1 X0 w! t( X6 F
·     不同环境迁入导致的高额技术债
/ J% s, a+ d+ P+ ?
! I3 J# M" [- w8 q: @  ^; b8 J
这些问题使大家意识到要想类似(或更严重)的服务停止事件不再发生,需要从根本上解决这些问题。从此KeyBank开始了DevOps之旅。

5 l2 U6 `& Z% Q' f7 l
6 ~1 A6 R7 U4 P
当然,首先这个小组要说服高层接受DevOps理念。他们用数据来说服老板们(下图):
. `* J  x8 X+ \* _8 u- D
$ i6 w2 s+ c% E  q+ |( t8 w
0?wx_fmt=png.jpg

/ Q" f! t8 G& M0 Q! a
+ R$ P8 P; K6 _' T
给公司高层的DevOps好处分析

  }% `% Y* ~" l8 q" H

" y% L, M4 p+ T
基本上就是跟老板说,通过实践DevOps,可以:
3 F5 j5 n5 r- ?* L
) k4 T  b/ z0 `: F) B# `, c3 U8 D
·     优化50%的测试资源(想说可以减掉50%的人工吧??)

! n! Y0 j2 j7 I$ j
4 |& d; e; v% f3 n3 A7 R
·     优化40%的发布和代码管理工作

; @$ x$ X/ J8 R% X- ~
6 K/ ~1 Y, n2 y0 ^4 z, R9 q
·     优化20%的基础设施工程师
2 j6 u6 N7 a0 x. s4 F3 f& i; }1 P
9 G$ _: y4 m8 j( y( r
·     降低85%的产品上线周期(测设、安全、发布)!

7 Q8 a" t" C- s# M: y

9 f2 n  E0 S) l$ K+ C2 E; @- k
·     降低30%的新产品Defects!

0 I( y, o% Q' B
* c1 ?- P) Z& T" K" a1 d
·     再降低50%的部署失败率!
, @( F5 Y1 @: l2 ~- K. w$ Y) X
% c9 c+ {5 r. J% p! B# n
(这几个哥们够拼的,把自己都逼上绝路了)

9 U3 a# y5 Q  D3 [( g. }. R# t, J
3 @: ?  b! B- f5 h5 v
KeyBank的高层看了还是很心动的,但是搞DevOps要花钱,再增加IT预算也不现实(刚刚出了事故)。最后他们达成一致:
- t+ _2 i6 g9 J/ \

3 ~, B0 c# s+ _* \
·     老板自掏腰包搞了个天使投资(估计是从现有IT预算里挤出来的)

7 k* B. l, ^) r* U9 Y2 S( P) j

( f1 I& Z! v$ i8 h" i
·     先成立一个4个人的DevOps小组(后面会说这个小组做什么),后期发展到10~12个人的规模

2 ^$ L. o5 W- c0 d4 y% @

4 u5 W2 ~- n0 T; V) q0 e9 @
·     先找一个业务价值大的项目开始(网上银行)实践
! z3 \* w: l: D
9 z; \+ }+ Y+ g" A5 P, g$ ?; O+ J
这个4人DevOps小组的重点攻关方向只有三个:容器,自动化测试,持续交付。
4 D" [) U/ d$ H) ~6 h

% G% f! a( Q- p( T# X
关于这三个重点方向的确定,是KeyBank对该企业硬件和配置环境复杂度,测试质量和低测试效率(顺便说下,他们之前建了很多外包测试中心),还有自动化程度不足的深思熟虑的结果。当然对很多类似的企业也有很多参考价值。

5 M! j9 G' ^0 H: \. x

3 x8 y# p0 [6 h
0?wx_fmt=png.jpg

# W  o. ~3 j6 d! P: ?
* X! Y; \4 u# U
KeyBank的三个DevOps重点方向
9 G3 X$ @  ~3 b2 M
; x' u4 [5 t. {1 u2 u: L. e
容器使得KeyBank可以采用Immutable Server的策略,大大简化了环境管理的复杂度。另外在Docker之上,他们也采用Kubernetes来保证高可用性,热部署,和环境的自我修复。两位倾情推荐!

- a4 Q, J* M8 k, o1 v/ M

; x) g2 I2 l  X& u# f* L3 A

" I  }5 f: e# {6 n
0?wx_fmt=png.jpg
9 l4 s& |/ O5 |! F+ l

; b( X# D# v6 F/ |6 n4 m% k
通过Kubernetes把Docker连接和管理起来

* N3 D+ M( @8 K9 d7 r, R

; [3 C( @+ \& e) O
两位继续谈到了自动化测试的重要性,也提到了转换到自动化测试需要比较长的培训和试错时间。但一切都是值得的。现在他们每个Build要运行超过5,000个测试,而执行时间只有15分钟!这在手工测试时代是不可想象的。
/ p9 l* E1 N; M: g/ m. N

7 w5 {! x6 \3 C3 M
接下来是持续交付。持续交付使得整个交付周期形成一个无缝的流,也让每个不同的部门/角色都能协同在一起工作。业务现在分析人员也开始写Gherkin代码,而运维人员则写基础设施即代码的脚本。
8 {7 U' z0 P+ m! e7 K) e$ C
: Z" x2 c$ o- m; q( y
经过一年半的努力(并不算长),KeyBank达成了以前不敢想象的IT能力:
0 H- a% m7 J9 T$ W; p! }  ?
( ?& s" t* u6 n( p, B, t9 c8 `
比如测试执行时间,以前的测试84个场景要执行1200小时,而新的自动化测试覆盖195个场景,只需要12分钟。

( k/ f- H# X3 D

' W/ f5 d" \1 c
最令他们骄傲的是,2016年KeyBank收购了First Niagara,一下子网上交易量暴增。而即使在并购后最初上线运行的前4天的高峰期,他们还热部署了10个发布到,结果没发现一个产品缺陷!更多见下图。
8 |, Y% j! o) |& c9 L' w/ G

! [  R* y5 [6 f' r( p/ c! e
0?wx_fmt=png.jpg
# \, K# B+ a, G# T4 I  \5 B# P

- w) T$ B0 D( {3 t* h  n* }3 d  ?
只用了一年半时间,KeyBank的IT就达到了非常惊人的结果

% t! z5 g! a! x; P
" i' b6 m7 a: Z7 T+ P/ e
以上就是KeyBank的DevOps转型简介。有兴趣的读者可以访问https://www.youtube.com/watch?v=xgSkva_Eq5s观看完整视频(需翻墙)。
( C/ T) s4 U8 w9 D% I
9 F7 [- e) y( p# T' e4 Q7 Y) i
最后一张图送给工具控们:
/ f: o+ [# u6 j/ b% B

' L) H  d, X2 y- \9 U+ m+ B
0?wx_fmt=png.jpg
KeyBank 的DevOps工具链

+ R) \+ C$ q9 I5 o# u  b7 k
! w! P- j' k0 A7 f
+ }$ _* L  E: }4 Q# }( b
原创:DevOps咖啡馆
" H) N  y  ^9 k: J. ^- w' G; R
) {: C( p1 z4 f2 W: x6 t! w
3 N5 d6 s. Q- L1 w* Z2 P

. ~/ z) L0 ?/ |5 r9 ~: p- p4 S+ Q' D1 B' e$ L7 R9 X4 G7 P

1 F, N9 N1 k5 H% E! o' R, s
3 k* O( ^" ^, [& U
0 O5 e0 F" {9 M  W, w
+ J& ~/ ]4 C; ^3 F. @% G

本版积分规则

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

Baidu

GMT+8, 2019-11-18 06:09 , Processed in 0.224793 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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