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

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

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

扫描二维码登录本站

QQ登录

只需一步,快速开始

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

DevOps案例之Target百货 - 草根的力量 (上)

[复制链接]
来自- 美国

参加活动:0

组织活动:0

发表于 2018-11-13 16:46:06 | 显示全部楼层 |阅读模式 来自- 美国
本文总结自Heather Mickman在DOES14, DOES15, DOES16连续三年做的DevOps转型主题演讲。由于内容较多,分为两期阐述。
$ m: r2 l% N5 T7 t. e3 A
( c8 z  ?1 }% T; P
. u, A. S: n9 ?- c8 g" ]/ U
导读:Target作为一家典型的零售企业,从2012年开始在个别团队尝试DevOps实践,结果一路发展壮大,到现在位列10家(来源:TechBeacon)采用DevOps领先企业的第三名(第一名是Amazon,第二名是Netflix),甚至超越了Facebook,Etsy和Adobe这样的互联网或软件产品公司。所以,传统企业一样可以把DevOps做得很出色!

7 U) ]  d' J  H6 f* ~

$ J+ |3 F$ |4 w$ X) @4 n
公司背景:塔吉特百货公司(英语:Target Corporation),总部在美国明尼苏达州的明尼阿波利斯,是美国僅次於沃尔玛的第二大零售百貨集團。在2010年财富500强企业排33,亦是标准普尔500指数成份股。Target也有非常庞大的IT组织,包括3个数据中心,数千名员工,以及从大型机到手持设备的复杂而分散的IT系统。
% t* j, t/ g4 x3 G5 D' b0 x) Q! c

+ y+ a$ z( G% R0 C+ z6 S9 z( i7 b+ k
缘起:2012年" I0 w8 l9 C$ n1 W6 Y& S- u

7 y: I, X0 L% u" R
/ m8 S0 L/ s  e" L1 i/ W/ j

3 l4 X8 Q% c# S5 D) f1 I2 g
Target的DevOps之旅可以追溯到2012年。可以说是由一个对公司IT现状不满意的小组开始的,这就是Target的API开发小组。API是Target对获取内部数据如此复杂及耗时不满的一个替代尝试。但该小组-- 尤其是负责人HeatherMickman女士-- 很有理想,他们不仅希望提供统一的API接口供其他系统调用,而且还要用和原来不同的开发方法来完成,尤其是敏捷和DevOps的相关实践。所以从2012年开始,就有了第一次TargetIT对持续集成,基础设施暨代码,社会化编码,还有DevOps文化的探索。

. L/ y* E% P1 C: q
1.png

7 H7 k# ^8 Z7 k. [
- w# z+ r$ ~. j5 w& c+ g
2012年:开始从一个小组尝试一些DevOps的实践

. X3 \$ J9 V' b9 \" g+ L2 j

- |9 V  ^6 ]3 U
几个重点:
/ c7 q5 S( x) R$ j: ?

& O) E$ z2 k' @
·     从API开始可以说是开启DevOps的一个很好的选择,Heather女士也认为基于服务的架构(Service First Architecture)是DevOps的基础。

! \# f. j- a+ ~2 c. Z( h$ l
0 I8 P$ ^8 h. R: s2 c0 c
·     把CI做好很困难,这里尤其涉及到思维习惯的转变。但这个是下一步的基础,所以他们花了几个月的时间建立起了这一习惯。CI的建立使该小组可以做到频繁发布。

% L& B1 g5 P3 K7 c
7 ]7 Q" n1 i& i/ x6 X
·     关于基础设施暨代码:Target没有从容器开始(当时也没有),更多的是在版本控制系统里把生成和配置环境的代码维护起来,作为部署的一部分实践管理起来。
  Y  E# A% V9 R* Z: K' l

/ Y$ M. N: h4 t( ^4 Z
·     Social Coding(社会化编码):这里指的是采用敏捷/DevOps里的相关实践,比如工作可视化,提交实践,还有Pull Request(而不是Push)等。
( {9 [. O" L9 K

% j% U5 R; a( w) u4 u0 }
·     文化方面:强迫自己脱离舒适区,不断试错以及对失败的不同态度,不接受平庸的文化,划出10%的工作时间用来学习和尝试新技术新方法。另外,领导要保护好自己的组员,让他们可以自由创新,而不担心后果。

8 S; c- u0 ^9 D; w

% g# y+ C* Q) `7 c; B  z$ l2 Z
草根生长:2013年( {1 u* J& R  }( R5 g

" \  ^! V9 T, [. m0 s: G+ Q7 C2 y* C2 x+ j: \8 C0 v1 N' N- |
到了2013年,之前一年这一个小组所做的尝试开始显现出威力。从开发出来API数量,API被调用的次数、范围,以及交付速度(每周10+次发布)上都在组织的更大范围内被注意到。

4 y) |+ v0 K8 O

8 d. K- j  [# V( P' L* ^
; O* H6 K0 H& N+ y6 p: _
1.png

" B- E8 |7 G! E% \

3 j0 ^; O3 N+ U* s/ P6 b4 k# N
2013年:API团队成长及其所用实践被更多团队了解的一年
4 h- D$ [$ w3 \+ O$ x" [  J5 Q$ ]
' V2 V$ G- p+ e0 x- J% s5 Y% @' D7 z
几个重点:

$ f. K. T: a" u
- W. g8 f2 T! ]) S8 |
·     基于API项目的成功,该小组开始思考把API作为搭建企业系统的平台级调用而非只是数据读取接口。这样,采用版本管理的方式就不足够了,他们开始建立Target的OpenStack环境(目标:企业PaaS)。

' f) P' e7 \/ j1 h% s: _

+ i4 W+ A! s6 R
·     持续优化部署实践。任何成为部署障碍的事情都是他们去解决的对象。经过后继四年的努力,他们的部署流程更加一致、安全并且可重复。

& h2 Q9 A7 c) Y4 \9 ~
0 e1 M: O+ @2 m/ R
·     DevOps之火在其他小组开始蔓延:几个有远见的团队开始合作,一起推动DevOps实践。
: h) [* X7 c, ~- i6 p; C, O
) A. c" o2 z0 t
声势初显:2014年
4 w9 k/ v* A4 n
7 W# I, Z# e3 V  s# F  t6 ~
: B-