DevOps的基本原则与介绍

      DevOps这个术语是developer与operations的合并简写。实现还有QA。DevOps描述与精简软件交付流程,在今天已经开始广泛的使用。强调从生产环境到开发的生命周期快速地反馈学习。DevOps不只是让你更快地交付软件,更多是帮助你产出高质量,与个人需求一致的软件。

鼓励运维工程师与开发工程师积极合作是至关重要的。 DevOps原则有如下: 

l 与人合作

       从你的坐位上起来与其他运维工程师或开发人员面对面交流。在这儿你不能用Email或电话等方式进行沟通。想象试着通过电话与朋友们开个Party一样。是的,现在去和某人交流下一个项目,问题,解决方案,你需要对他们像一个Team一样。

l 穿他们的鞋走路

      如果你准备好理解软件工程师与运维工程师的每天如何工作的,使用工具如何工作,那你最好在现实工作场景一起和他们工作。例如,如果你是一个运维人员,你没有花时间去理解源代码管理系统,而开发人员坚定他们信念使用GitSubversion, 那么需要站在他们立场上去思考问题。需要更多时间去学习系统,因为你能应用你的技能去构建工具从而支持软件开发过程。

l 为其他人而工作
      使每个人工作轻松点儿。为运维构建工具,它也为你了构建工具。如<<Time Management for System Administrators>> 的作者Tom Limconcelli说的,“我们现在是程序员了。” 甚至,我们有补充缺乏的技能集。没有一个人能精通一切,所以构建一个新工具能帮助你的运维人员或开发人员自动化交付过程。它不是正式环境的一部分,甚至是个简单的桌面工具。这是像”交换工具”来实现提高效率,同时也能使TEAM之间巩固关系与加强协作。

      这些基本原则可以应用到大型开发与运维团队的大公司,同样适用刚起步小团队公司。

走近DevOps

越来越多的开发人员和运维人员相互学习各自专长。更多像他们构建一个共同的愿景什么需要做,如何做。开发人员需要学习一些常规高层知识:

l 操作系统

l 网络构架

l 网络安全

l 应用程序安全

l 配置管理

l 自动化实践

与开发人员在一起工作的运维人员需要构建与维护一个复杂在线网站,更需要这些技能:

l 沟通

l 配置管理

l 编程

l 软件设计与构架

 

演化

让我们来看下面这张图,假设已经实现了些基本的打包,配置管理自动化过程

上图开发人员与运维人员有一些协作,开发人员可能不了解管理WEB服务器的配置,可能不清楚在特定操作系统如何使用命令行配置。运维人员管理服务器,让他们能点击一个按钮完成发布应用程序到应用服务器,实现部署工作,提供应用服务器。最好的环境是开发人员与运维人员在一个TEAM开发一个新环境。但新的环境一旦推出后,需要花费一些管理成本,去跟踪与管理所有的新环境。不幸的是,网络管理,配置管理更多的压力让运维人员来支持整个环境正在运转。看下面图示是如何演化的:

上面的图我们设想了比较理想的场景,减少编译、构建与部署的依赖。 自动化系统提供一个WEB应用服务器的事实没有变,变的是需要与运维交互的WEB服务器配置,日志配置,部署应用程序操作都是由开发人员来完成了。运维演化为适应开发人员的持续集成,发布管理,测试,调试源代码。开发人员需要学习操作系统核心,网络,配置管理与自动化。开发与运维能相互接管各自角色的工作,感觉像开发人员需要两个角色技能合集,也对开发人员有下一个级别的需求。

2013年一份对4000IT组织调研报告,组织实现DevOps的好处有如下:

今天先到这儿,后续有时间,我们将介绍更多内容。

希望对您软件开发管理有帮助。

关于DevOps更新您可以参考:

http://devopscafe.org/

DevOps is Everywhere

http://devops.com/

http://dev2ops.org/

 

作者:Petter Liu
出处:http://www.cnblogs.com/wintersun/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
该文章也同时发布在我的独立博客中-Petter Liu Blog

DevOps的基本原则与介绍的更多相关文章

  1. 转载 DevOps的基本原则与介绍

    转载原地址:  http://www.cnblogs.com/wintersun/p/3339047.html DevOps的基本原则与介绍 DevOps这个术语是developer与operatio ...

  2. 数据库的DevOps实践

    ---------------------------------------------------------------------------------------------------- ...

  3. 精益IT组织与分享式领导

    精益IT组织       未来的组织将专注于同行业的产品或业务流--其他的一切,包括专家和管理者在内,都是为了让一线工作人员可以第一时间就做好,而又不会遇到任何麻烦.最大的制约不是技术:真正的挑战是变 ...

  4. 年度十佳 DevOps 博客文章(前篇)

    如果说 15 年你还没有将 DevOps 真正应用起来,16 年再不实践也未免太落伍了.国内 ITOM 领军企业 OneAPM 工程师为您翻译整理了,2015 年十佳 DevOps 文章,究竟是不是深 ...

  5. `DevOps`相关知识搜集

    本文记录的是搞清楚什么是DevOps过程中检索资料时发现的有价值的帖子. 传送门: 我眼中的DevOps 作者简介:申思维,2005年本科毕业于华南理工大学计算机学院.一直从事Web领域的开发,3年多 ...

  6. DevOps详解

    最近我阅读了很多有关DevOps的文章,其中一些非常有趣,然而一些内容也很欠考虑.貌似很多人越来越坚定地在DevOps与chef.puppet或Docker容器的熟练运用方面划了等号.对此我有不同看法 ...

  7. DevOps 在公司项目中的实践落地

    原文出处:https://www.cnblogs.com/beef/p/7743594.html ref: [DevOps]团队敏捷开发系列--开山篇 https://www.cnblogs.com/ ...

  8. DevOps的概念

    DevOps(英文Development和Operations的组合)是一组过程.方法与系统的统称,用于促进开发(应用程序/软件工程).技术运营和质量保障(QA)部门之间的沟通.协作与整合.它的出现是 ...

  9. 持续集成与devops

    持续集成 持续集成 持续集成(Continuous integration,简称CI),简单的说持续集成就是频紧地(一天多次)将代码集成到主干,它的好处主要有两个: 1.快速发现错误.每完成一次更新, ...

随机推荐

  1. 使用Expression实现数据的任意字段过滤(1)

    在项目常常要和数据表格打交道. 现在BS的通常做法都是前端用一个js的Grid控件, 然后通过ajax的方式从后台加载数据, 然后将数据和Grid绑定. 数据往往不是一页可以显示完的, 所以要加分页: ...

  2. 记一次.NET代码重构

    好久没写代码了,终于好不容易接到了开发任务,一看时间还挺充足的,我就慢慢整吧,若是遇上赶进度,基本上直接是功能优先,完全不考虑设计.你可以认为我完全没有追求,当身后有鞭子使劲赶的时候,神马设计都是浮云 ...

  3. 整理下.net分布式系统架构的思路

    最近看到有部分招聘信息,要求应聘者说一下分布式系统架构的思路.今天早晨正好有些时间,我也把我们实际在.net方面网站架构的演化路线整理一下,只是我自己的一些想法,欢迎大家批评指正. 首先说明的是.ne ...

  4. js attribute 和 jquery attr 方法

    attribute 是原生js dom 对象上的一个属性,这个属性有很多子属性,比如 isId(判断属性是否是Id) , name (获取属性名称) , value (获取属性值),attribute ...

  5. Android使用静默安装时碰见的问题

    升级时碰见的异常 private void installPackage(String appName,final File apk) { if (!apk.exists()) { setHasNew ...

  6. 【搬砖】安卓入门(1)- Java开发入门

    01.01_计算机基础知识(计算机概述)(了解) A:什么是计算机?计算机在生活中的应用举例 计算机(Computer)全称:电子计算机,俗称电脑.是一种能够按照程序运行,自动.高速处理海量数据的现代 ...

  7. 在VMware上安装CentOS -7

    1.下载好VMware 2.准备好CentOS的镜像文件 3.打开VMware创建新的虚拟机 选择自定义高级后按下一步 继续下一步 选择稍后安装操作系统 客户机操作系统选择Linux,版本选择Cent ...

  8. 第14章 Linux启动管理(3)_系统修复模式

    3. 系统修复模式 3.1 单用户模式 (1)在grub界面中选择第2项,并按"e键"进入编辑.并在"-quiet"后面加入" 1",即&q ...

  9. 【腾讯Bugly干货分享】一步一步实现Android的MVP框架

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/5799d7844bef22a823b3ad44 内容大纲: Android 开发 ...

  10. ENode简介与各种教学视频资源汇总(要进群这篇文章必看)

    ENode是什么 ENode是一个.NET平台开源的应用开发框架,为开发人员提供了一套完整的基于DDD+CQRS+ES+(in-memory)+EDA架构风格的解决方案. ENode的特色是什么 解决 ...