在甲骨文主导 DevOps 的变革是一种什么体验?

Posted 高效运维

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在甲骨文主导 DevOps 的变革是一种什么体验?相关的知识,希望对你有一定的参考价值。

前言

刚结束的深圳 GOPS 2017 全球运大会上,来自 JFrog 的全球研 Jagan Subramanian 表了演

在甲骨文主导 DevOps 的变革是一种什么体验?

Jagan 之前在甲骨文供16年,担任高发总监。由于之前甲骨文收购了很多公司,这些新的团队使用不同的语言开发,不同的仓库存储自研件,并且各种维护不同的上线流程,导致公司内部的软件交付流程非常混乱。同时随着软件微服务架构的落地,团队产生的包越来越多,团队之间很难协作。

为了解决这些痛点,在2013年,Jagan 开始负责开发甲骨文内部持续交付的 PaaS 平台,名叫 Carson,目的是为公司内部所有的开发团队提供统一的,自助式的持续交付平台。

在底层 DevOps 工具的选择上,为了满足团队开发语言多样化,需要统一,自助式软件交付流水线的管理,跨团队之间协同构建,发布等需求, Jagan 比较了很很多工具,最终选择了 Artifactory 和 Jenkins/Hudson 作为底层的工具,在上层开发了 Carson,实现了统一,自助式持续交付的平台。目前这个平台已经为甲骨文内部几万个开发者使用,为公司管理了1亿多个软件包。

Jagan 成功主了甲骨文中件,数据线 DevOps 变革。如果您也想成为公司内部推DevOps的领袖,就来参考下 Jagan 经验

1、甲骨文的痛点

  1. Stack Build 构建耗长。

    Stack Build 是指的 A 构建 BB 构建 C致在重复 Stack Build ,需要花大量的时间

  2. 同一个依包有多个版本被引用。

    例:团队 A 了一个共用包,比如是解析 MQ 消息通用服 common.jar V1.0B C 团队都引用了,一个月后 A 团队了,B 引用了common.jar V1.1,但 C 没有升,在集成 ABC 的服务时个通用服被引入了common.jar 的两个版本。

  3. 用内部接口。

    例:当团队A,急需团队 B的数据, A 然知道不应该直接 B 的内部方法,但 A是会要求 B 提供一个内部方法,等 B 好了外部接口,A 再来改代码调用外部接口。但实际情况是 A 完成了功能交付了代之后,再也不会做重构。这样致了 A B 直接的耦合。

  4. 关系混乱。

    当某个中件需要重构,他并不知道公司内部哪些品会被影响到,因每个人看起来都会被影响。

  5. 者的境通常和生产环境不一致。

    例:开者在本地测试问题,放到客户环境或者线境就出问题

  6. 缺乏透明度,可化。

    团队中每个人都看不到当前的流程,没法估当前流程有什么可以改的地方。例如缺乏每次构建的时间测试覆盖率,测试率,上线成功率,布周期等指统计致。

  7. 传统的工具以适配新的技

    例如 C/C++ 的依管理就是个很大的痛点,由于 C/C++ 编译不能跨平台,它依编译工具 cmake 或者 gcc,也依与芯片架构,所有缺少一个似于 Maven 的依管理工具来管理所有的包。

  8. 实现云化。

    在申请计算,存,网络资,依于硬件,没有实现化,按需建,消费资源。

2、Jagan在甲骨文推DevOps的方法

在甲骨文主导 DevOps 的变革是一种什么体验?

  1. 定位问题

    公司内部 DevOps 袖,你应该让测试,运 Leader 坐在一起,从公司的角度来思考面问题,确保三个团队朝相同的方向努力。

  2. 实验方案。

    三个团队 Leader 一起讨论如何改公司的流程,讨论每个团队需要改什么。在段,要尽量行足多的 POC,找个合适的方案解决公司问题

  3. 实现方案。

    和上一步 POC 的人一起行方案的实现。此你需要解决基础设施的问题,保础设施能支持些方案。

    测试要注意元数据的收集,例如每次构建的时间测试覆盖率,测试率,上线成功率,布周期。些数据将来是行持度量的重要数据来源。

  4. 采用方案。

    采用方案,你需要其他团队好文档,技方面的支持,准好工具。但并不意味着你准好了文档,工具,公司团队就会配合你。公司可能有10-15%团队坚定的支持你,并且他会需要更先的工具和方案。

    另一部分人30%会相保守,他知道型有什么用,并且会需要你来指们进 DevOps 转变

    有一部分人会拒,你要经实 DevOps 团队示范目,所有人看到基于数据的可表,看到他的成果。

  5. 续评估,持度量。

    估,度量,一定要用可化的工具度量,不能凭感觉说话,必依靠数据说话

    就可以利用第三,四步中累的元数据行基于数据的度量,个度量不仅仅团队内部的,可以是跨线的度量。当然估之后会有发现新的问题继续环继续下去。

3、落地DevOps最佳

1. 协作。

团队做到真正的互相听,你需要作那个中人提供沟通的渠道。肯定会有人有疑,但愿意沟通就是好事,因最后你会和大家一起定出来团队间协作的流程。

2. 透明化,可化。

有人会问为什么在持交付的流程里需要收集么多元数据,些元数据是估交付流程好坏的唯一准,些元数据将来会公司的型代理巨大的价 

你需要作为团队交付流程透明化,可化的领导者。Jagan 在甲骨文内部搭建了 CI/CD 平台叫 Carson个平台者提供可化的构建流程,自定构建流程排,源申,数据统计等等很多功能。

化的 CI 流水线

在甲骨文主导 DevOps 的变革是一种什么体验?

化的表:

在甲骨文主导 DevOps 的变革是一种什么体验?

些可化的数据,来度量 DevOps 得的收益,包括测试率,构建成功率,构建速度,布周期,源分配情况,基于数据做成正确的决策,才是 DevOps 来的价

3. 团队独立自主。

每个团队应该有自己的 CICD 流水线Oracle 践,他们为每个团队提供自助式的构建服器的使用。从 QA 团队,每个团队也自助式的消费测试集群。

自助式CI务编:

在甲骨文主导 DevOps 的变革是一种什么体验?

4. 础设施即代

团队应该应该将所有的源用代来描述,因维团队更是没有记录的,也没有被测试过境容易生不一致性。所以基础设应该 checkin,然后测试 

5. 化。

了提高效率,我应该容忍在布流程里有任何人工批的操作。通大量的自测试 Case 来保证软件的量,并且将测试结果与布的包关实现基于元数据的包布。 

6. 高目

之前甲骨文的堆构建布流程要经过2-3周的时间,最近已达到每天多次的布。 

今天,整个布周期从一年半,减到3个月。整个件架构转变为微服架构,每天多次布服

Jagan 认为为团队设置一个高的目让团队兴奋团队会全力全完成它,通常,最后的果是团队证明了他达到个目

7. 度量。

流程以及出物使用数据可化工具可化。

在甲骨文主导 DevOps 的变革是一种什么体验?

甲骨文中团队一个数据中心的存量是80TB,每天的求达到3千万次,下的数据量达到 85TB,全球有6个数据中心。

在甲骨文主导 DevOps 的变革是一种什么体验?

从 Artifactory 量的角度看甲骨文 DevOps 落地的速度。2013 DevOps 开始落地,开始从中件的某几个团队开始点,到14年后,团队的成功案例影响到了其他团队,从 Artifactory 量可以看到,容量明,其他的团队都来复制个模式。15年开始,Artifactory 开始持续进行自化的工件清理,省了大量存

化的度量,可以清楚知道品的构建速度,布成功率,布周期等等,些度量指将作下一个开周期目的参考基准,为团队指定合理的目

元数据也可以用来估某个线占用的源,投入出比,做跨团队直接的效考

8. 快速失
上游构建的测试用例里要包含下游构建的测试用例,这样让测试在上游测试阶段失,而不是要等到下游测试,才发现测试

9. 保持疑。

在每一境都保持疑,问问自己,团队能否做得更好,更快,更加自化?

10. 并不是工具的问题

你是否真的相信 DevOps 提高生效率?如何更有快速,更自化的交付件,而不是仅仅工具的事情,而是公司文化的转变

4、总结

你要作公司内部主推 DevOps 袖,解决各种困

  1. 建立跨团队的沟通机制,实现 CI/CD 流程的可化。

  2. 收集元数据做自布,并且基于元数据做持估,目的是减构建时间减上线时间,用自测试工具提供量,提高率。

  3. 利用估的体系,将最好的源投入到最好的品。


关于JFrog

世界领先 DevOps 平台

公司成立于2008年,在美国、以色列、法国、西班牙,以及中国北京市拥有超过200名员工。

JFrog 拥有3000多个付费客户,其中知名公司包括如腾讯、谷歌、思科、Netflix、亚马逊、苹果等。连续两年,JFrog 被德勤评选为50家发展最快的技术公司之一,并被评为硅谷增长最快的私营企业之一。

请扫二维码

 关注“JFrog”

感受原汁原味的硅谷技术


点击“阅读原文”,前往 JFrog官网

以上是关于在甲骨文主导 DevOps 的变革是一种什么体验?的主要内容,如果未能解决你的问题,请参考以下文章

DevOps能做啥?

DevOps | 数字化时代下,IT人才的发展转型与变革

DevOps的概念是啥?

云原生应用架构中的文化变革 一:秉承精益制造之魂,启行 DevOps 之路!

云原生应用架构中的文化变革 一:秉承精益制造之魂,启行 DevOps 之路!

到底什么是DevOps工程师?|「云头条」