文档结构  
翻译进度:已翻译     翻译赏金:0 元 (?)    ¥ 我要打赏
参与翻译: ericzc (7)

为了收集人们关于DevOps(开发和运维紧密结合)在未来2017年该如何发展的见解,我们和来自14个公司的16位负责人进行了沟通交流,这些负责人中有些正在他们的企业中实施DevOps,有些则为其他企业提供DevOps解决方案。

下面是他们对于我们所提出的问题:“你认为DevOps中最重要的部分是什么?”给出的回答。

人是最重要的因素,因为人们必须改变传统。我们都在关注如何提供工具能够方便过渡,沟通和合作,我认为这种过渡需要5-10年多的时间来完成。

最大的挑战就是要改变心态。在AWS(亚马逊云)中,我们已经从DevOps过渡到NoOps,我们用自动化的监控系统和修正系统替代了传统的维护团队。为了下一代软件的发展,我们必须设计新的下一代APM(应用软件性能监测系统)产品来改变软件的开发和部署方式。

第 1 段(可获 1.8 积分)

我们是一家依赖Atlassian(一家主要针对软件开发工程师和项目经理协同工作提供完整化企业级解决方案的公司)提供的JIRA(项目跟踪管理工具), Confluence(知识平台) 和 HipChat(及时沟通工具)及 开源工具Jenkins(Java开发的一种持续集成工具,用于监控持续重复的工作)自动化创建的商店。从提出一个构想,听取众人意见到执行实现,定义了一系列非破坏性处理过程和控制节点,部署过程对于每个开发者都能够最优化的实现,为每个各小组分配负责人管理部署过程。(译者注:以上应是这个客户对于他们协同工作的DevOps案例整体过程描述)

有三个不可或缺的因素对DevOps发展很重要:人,过程和技术。人牵涉着观念的改变。过程牵涉着要针对你的员工和业务采用最有意义的过程。技术则是将一切可以自动化的东西自动化。

第 2 段(可获 1.36 积分)

首先要通过破除包括开发人员,运维人员,服务支持人员,市场和销售人员在内的各部门之间的壁垒,来开启团队合作的新模式。使每个人都能够从过程的一开始就参与进来,专注于传递商业价值和完成终端用户需求,随着规模从50人发展到200人,尽可能的优化第三方技术的使用方式,别总想着什么事都自己做。我们之前一直在使用自己的日志工具,虽然是个很好的工具但是需要1-2个开发者来维护,后来我们使用了SUMO Logic(一个基于云计算的日志管理与分析系统),从而省去了2个开发者的维护成本。自动化一切需要在各个层面都保持一致性,开发,过渡,生产,大家都需要在一个一致性平台上工作。

第 3 段(可获 1.51 积分)

开发如助果了解了运维是什么样,那么他们一定会去助力运维,而不是阻碍运维的进行,反过来运维也会对开发如此。采用连续性的或者至少是快速的或者一键点击式的部署,这样补丁或者新的功能可以快速的下发生效。

传统观念必须要改变,这就意味着IT开发人员和运维人员在工具和物理环境的支持下相互合作。在实施转变观念时要注意用语以及企业组织战略。

连续的交付软件对于我们的客户来说是不合适的,每3个月得到一个新的版本对于客户来说过于频繁。我们正在让我们的客户从一个过渡环境站点开始(译者注:一般部署环境包含开发,测试,过渡,生产四层架构,过渡是最接近生产环境的),这对于新客户来说是好事。在我们的商店实现DevOps是一个宝贵经验,40%的测试都是自动化进行的,我们为自动化做过一次冲刺(敏捷开发一种模式)后达到60%,该测试方法是通过UI的,不过有一定的缺陷,因此我们转移到了另一种内部代码审查的方法并发现了80%的bugs,但自动化率并没有降低。我们意识到我们不是在做端到端的整合测试,增加这些测试只是减少了测试疏漏的bugs。这个质疑很快被来自于我们客户的反馈证实了。我们不再向外部任何人展示版本,并且从2周一各周期的冲刺改为了4周一个周期的内部发布,冲刺不应该是为开发者准备的,而应该是由客户来评判产品是否符合他们的要求。有些领域会把产品放在AWS沙箱中进行使用,这就是更加重视大多数人以客户角度看待所有构建的事实例证。

第 4 段(可获 3.29 积分)

DevOps 很自然的来源于工程和运维的协同工作。我们在设计架构之初就将部署、整合,以及自动化和复用牢牢放在心中。我们更加关注于创建特色功能而不是应用运行的环境本身。

人,过程和观念是关键。在企业里,有很多传统观念的转变需要人和技术的支持,我们更关注于工具化和支持的迭代化。我们将自动化引入我们所有的工具并且和Jenkins整合在一起,反馈环路变小了,这样我们可以更快速的发布,除此以外,在贯穿整个开发,测试,监测阶段内,我们提高了质量和增加了资源的复用。开发并且充分利用你已经创建的资源,工具化更强调高质量的构建从而能够编写更好的软件并且花更少的时间debug。在发布产品前寻找找到缺陷,尤其是对于手机应用,从而能够编写更高质量的产品,并从客户的满意度打分中看到结果。

第 5 段(可获 1.86 积分)

趋势是使得更多面向客户的应用更快的发布出去。应用越来越取代人成为连通客户的接口,这就是为什么持续性交付(更新)软件的重要性。

关于应用安全的挑战以及它会如何降低DevOps的进程,对于“Dev/Sec/Ops"或者"rugged DevOps"的新需求,所有构建和测试过程都必须完全自动化。DevOps团队的自动化过程可能不像过去QA和安全分析那样的方式被自动化。

我们正从根本上提高每个参与到开发,运维,安全,测试,销售和终端用户体验等过程中的人的生活质量。

第 6 段(可获 1.34 积分)

关注生产,协作和自动化,  不断地自动化基础设施结构,对于过程和协作你必须有一个宏观的概览。

你认为DevOps中最重要的元素有哪些呢?

顺便提下,如下是我们采访的人员!

  1. Michael Schmidt, Senior Director, Automic

  2. Amit Ashbel, Director of Product Marketing and Cyber Security Evangelist, Checkmarx 

  3. Sacha Labourey, CEO and Founder, CloudBees

  4. Samer Fallouh, V.P. Engineering, Dialexa

  5. Andrew Turner, Senior Architect, Dialexa

  6. Andreas Grabner, Technology Strategist, Dynatrace

  7. Anders Wallgren, CTO, Electric Cloud 

  8. Job von der Voort, V.P. of Product, GitLab 

  9. Charles Kendrick, CTO, Isomorphic Software 

  10. Craig Lurey, CTO and Co-Founder, Keeper Security 

  11. Josh Atwell, Developer Advocate, NetApp SolidFire

  12.  Joan Wrabetz, CTO, Quali

  13.  Joe Alfaro, V.P. of Engineering, Sauce Labs 

  14. Nikhil Kaul, Product Marketing Manager Testing, SmartBear Software 

  15. Harsh Upreti, Product Marketing Manager API, SmartBear Software 

  16. Andi Mann, Chief Technology Advocate, Splunk

第 7 段(可获 1.81 积分)

文章评论