如何实施DevOps
对于长期在孤立的架构下工作的组织来说,转移到协作式DevOps系统似乎是难以成功的。为了进一步提高效率,必须改变观念,并进行团队文化改变。例如:许多人认为只有自动化工具才能解决DevOps,其实这是不准确的。
只有当团队团结一致并朝着一个共同的目标努力时,DevOps才会取得成功。
这是成功实现DevOps的前提:
DevOps实施需要时间
DevOps并不像开发和运维整合在一起那样简单。适应了孤立工作的团队都发现很难适应协作工作。这是一次巨大的转变,正确实施需要时间。
测试的质量成为贯穿交付管道的连续过程。这样可以确保产品快速完成,并在到达交付时间点时就已经进行了足够质量检查和测试,以确保没有错误。
分步实施
任何更改都需要时间。因此,更好地分阶段实施DevOps。
- 步骤1:根据公司的要求,DevOps更改的第一步将是建立敏捷的开发过程。
- 步骤2:如果要为DevOps进行自动化,则组织需要适当的框架。
- 步骤3:实施持续集成的过程。编码人员经常将其代码推送到公共源代码存储仓库中。编码人员不是在周期结束时提交代码,而是在软件开发的每个节点都及时提交代码,以便可以更早解决冲突。
- 步骤4:接下来是持续交付阶段,这是集成阶段的扩展。使用连续交付系统,确保最新代码及时部署。
- 步骤5:然后将部署和测试阶段设置为自动化。
- 步骤6:最后一步将是连续部署阶段。此阶段扩展了连续交付阶段,在此阶段,如果所有测试均通过,则软件将自动部署。这样做可以快速获得反馈,并可以迅速进行处理。
领导的重要性
通过孤立的运营,所有领导角色的人物都被固定在了他们的核心领域。但是在DevOps中,leader们必须与其他流程团队合作以确保操作顺利进行。随着团队之间交互方式的可能变化,领导者必须对团队成员的努力提供必需的支持。
在DevOps环境中,所有部门相互混合,以便每个人都知道在每个阶段都会发生什么。这些过程是连续的。在这里,领导角色至关重要,以确保各个模块之间的集成顺利进行。DevOps的leader必须建立一个环境,使每个成员都能为项目的成功做出贡献。
自动化和工具
尽管DevOps的成功很大程度上取决于团队和流程,但不能否认工具在实现正确自动化方面的重要作用。从传统的软件工具转移到DevOps工具是具有挑战性的。但是,通过为合适的人员分配合适的工具,公司可以轻松地遵循连续的部署,集成,测试和交付过程。
DevOps成功的一些最佳工具是:
- 代码存储库管理 –Subversion,Git,CloudForce,Docker Hub
- 服务器构建 –SonarQube,Jenkins,Artifactory
- 管理配置 – Ansible,Saltstack ,Puppet,Chef
- 连续测试自动化 –Selenium,RF,Jenkins,appium,UiAutomator,IBM Rational Functional Tester
- 虚拟基础架构 – Microsoft Azure,Google Cloud,AWS Cloud,VMware vCloud
- 基础架构云端管理 –Docker,Azure Manager,Google Cloud Deployment Manager,AWS CloudFormation
即使市场上有数百种工具可用,公司也要决定合适的工具来集成和耦合,以实现连续的过程,确保了各阶段之间的平稳运行。
团队支持
短时间内的文化转变似乎是不可能的。将开发,运营,测试和质量保证部门的人员,工具和流程整合到一个统一的流程中,这是一个很大的挑战,必须耐心地解决。
DevOps的转换过程必须以获取长期利益的方式进行。从入门级到管理职位的团队必须组成团队,并且必须告知每个团队所带来的价值。成功的跨职能工作需要得到奖励,领导者必须随时提供帮助,以便顺利过渡。
持续监控绩效
领导者必须亲身实践,以确定限制产出的瓶颈。过渡和变化的系统将带来一些挑战。DevOps流程需要在开发,集成,测试,部署和工具操作中进行连续监控。确保建立适当的反馈系统,以便可以发现问题并使用所选工具纠正问题。
- 持续集成:通过在DevOps中进行持续集成,确保快速发布新开发的代码。
- 连续交付:通过连续交付,您可以合并其他自动化和测试功能,以便准备部署最新代码。
- 持续部署:在持续部署的最后阶段,代码将经过自动测试,然后在没有任何人工干预的情况下投入生产。
结论
DevOps是一个巨大的转变,不能一蹴而就。成功的DevOps环境需要逐步增加,团队协作,强大的领导能力,正确的工具和自动化。
- 郑重声明:文章首发于公众号“FunTester”,禁止第三方(腾讯云除外)转载、发表。
技术类文章精选
- java一行代码打印心形
- Linux性能监控软件netdata中文汉化版
- 性能测试框架第二版
- 如何在Linux命令行界面愉快进行性能测试
- 图解HTTP脑图
- 将swagger文档自动变成测试代码
- 基于java的直线型接口测试框架初探
- Selenium 4.0 Alpha更新日志
- Selenium 4.0 Alpha更新实践
- 如何统一接口测试的功能、自动化和性能测试用例
非技术文章精选
- 为什么选择软件测试作为职业道路?
- 写给所有人的编程思维
- 成为自动化测试的7种技能
- 如何在DevOps引入自动化测试
- Web端自动化测试失败原因汇总
- 如何在DevOps引入自动化测试
- 测试人员常用借口
- API测试基础
- API自动化测试指南
- 未来的QA测试工程师
如何实施DevOps的更多相关文章
- Atlassian如何实施DevOps
DevOps是推动开发和运维团队之间沟通和协作的手段.它不是一个工具或产品.相反,其成功的首要因素就是文化.目的是更快的创新和更好的客户体验. "2015年DevOps状态报告"调 ...
- 企业实施DevOPS的七大挑战(转)
从别人的演讲视频中摘抄,做笔记. 什么是DevOPS 如何衡量DevOPS 企业实施DevOPS的七大挑战 自动化测试投入不足 单元测试 API测试 界面测试 功能测试 高度集中的IT服务 标准化 脚 ...
- 你所在的公司是如何实施DEVOPS的?
工欲善其事,必先利其器,现在大家在DevOps领域最关注的还是在工具层面.下面是我跟这么多公司接触下来,大家使用比较多的工具:1.监控工具比较老牌的就是Zabbix,Nagios,用Zabbix的感觉 ...
- 收藏!如何有效实施devops?
当今IT行业的竞争日益激烈,各家公司都在寻找优化软件研发过程的方法,因为交付比对手更具竞争力的产品已经越发成为一件成本高昂的事情.这也是DevOps发挥作用的地方,因为它可以在工程管理的各个方面提供帮 ...
- DevOps:从理念到实施
转载自:http://os.51cto.com/art/201404/436794.htm DevOps这个新理念的出现,是为了应对IT环境中普遍面临的一些挑战.开发团队要求的不断满足新的客户需求,并 ...
- DevOps实施的三种IT障碍
[TechTarget中国原创] 现今DevOps可谓是红遍半边天,但正因为它是新的东西,企业也在不停的犯同样的错误.从这些挑战中学习,让你的DevOps项目取得成功. DevOps正在以一种更有效的 ...
- 切忌一步到位,谈谈DevOps实施落地
2020年6月19日,由云计算开源产业联盟指导,高效运维社区和 DevOps 时代社区联合举办的GNSEC 2020线上峰会圆满举办.BoCloud博云参加了本次峰会并分享了博云帮助客户实施DevOp ...
- 给 DevOps 初学者的入门指南
当我们谈到 DevOps 时,可能讨论的是:流程和管理,运维和自动化,架构和服务,以及文化和组织等等概念.那么,到底什么是"DevOps"呢? 什么是DevOps 随着软件发布迭代 ...
- 年度十佳 DevOps 博客文章(前篇)
如果说 15 年你还没有将 DevOps 真正应用起来,16 年再不实践也未免太落伍了.国内 ITOM 领军企业 OneAPM 工程师为您翻译整理了,2015 年十佳 DevOps 文章,究竟是不是深 ...
随机推荐
- Django入门5--URL传递参数
- http header详解,HTTP头、请求头、响应头、实体头
Content-Language,Content-Length,Content-Type,Content-Encoding,mime分析 Accept 指定客户端能够接收的内容类型 Accept:te ...
- 关于对height:100%的研究
参考此链接: https://segmentfault.com/a/1190000012707337
- Spring Security 学习笔记-登录认证过滤器
UsernamePasswordAuthenticationFilter用户登录验证过滤器,它继承自AbstractAuthenticationProcessingFilter. 登录处理url默认使 ...
- 2019-9-2-win10-uwp-获得焦点改变
title author date CreateTime categories win10 uwp 获得焦点改变 lindexi 2019-09-02 12:57:38 +0800 2018-2-13 ...
- Cmder安装与使用
越来越多人使用Cmder代替Windows的cmd(毕竟其界面太Lower了),但是每次用Cmder都要回到安装目录查找之后才能使用,真的很麻烦,有木有可以像Git一样右键就是可以用的方法呢?答案当然 ...
- CSDN博客 专用备份工具
CSDN博客 专用备份工具 用要的朋友可下载. 本程序为个人所用,仅供学习.作者:潇湘博客网站:http://blog.csdn.NET/fkedwgwy默认文件存放位置为用户名文件夹下,也可以直接自 ...
- Android程序分析环境(搭建步骤略)
1:安装JDK JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK).没有JDK的话,无法编译Java程序. 2:安装Android SDK Androi ...
- 换根DP(二次扫描)
参考来自这里: https://blog.csdn.net/qq_41286356/article/details/94554729 题目在这里 https://ac.nowcoder.com/acm ...
- 微服务Dubbo和SpringCloud架构设计、优劣势比较
本文主要围绕微服务的技术选型.通讯协议.服务依赖模式.开始模式.运行模式等几方面来综合比较Dubbo和Spring Cloud 这2种开发框架.架构师可以根据公司的技术实力并结合项目的特点来选择某个合 ...