转载原地址:  http://www.cnblogs.com/wintersun/p/3339047.html

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/

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

  1. DevOps的基本原则与介绍

    DevOps的基本原则与介绍       DevOps这个术语是developer与operations的合并简写.实现还有QA.DevOps描述与精简软件交付流程,在今天已经开始广泛的使用.强调从生 ...

  2. [转载] DevOps年中盘点:国外最受欢迎的10篇技术文章

    本文根据高效运维系列微信群的群友投稿整理而成.“高效运维”公众号作为本系列群的官方唯一公众号,原创并独家首发. 欢迎关注“高效运维”公众号,以免费参加「运维讲坛」每月一次的线下交流活动:并抢先赏阅干货 ...

  3. [转载] $\mathrm{Jordan}$标准型的介绍

    本文转载自陈洪葛的博客$,$ 而实际上来自xida博客朝花夕拾$,$ 可惜该博客已经失效 $\mathrm{Jordan}$ 标准形定理是线性代数中的基本定理$,$ 专门为它写一篇长文好像有点多余$: ...

  4. 【转载】硬盘MBR详细介绍

    原文地址:http://blog.chinaunix.net/uid-15007890-id-106892.html 硬盘MBR详细介绍      硬盘是现在计算机上最常用的存储器之一.我们都知道,计 ...

  5. 【转载】Grunt常用插件介绍

    项目名称 grunt-contrib v0.8.0 项目地址 https://github.com/gruntjs/grunt-contrib 项目介绍 此项目是对grunt常用插件的集合,刚接触gr ...

  6. 【转载】Ssh整合开发介绍和简单的登入案例实现

    Ssh整合开发介绍和简单的登入案例实现 Ssh整合开发介绍和简单的登入案例实现 一  介绍: Ssh是strtus2-2.3.1.2+ spring-2.5.6+hibernate-3.6.8整合的开 ...

  7. 【转载】常用Maven插件介绍

    http://www.cnblogs.com/crazy-fox/archive/2012/02/09/2343722.html 我们都知道Maven本质上是一个插件框架,它的核心并不执行任何具体的构 ...

  8. (转载)PHP json_encode() 函数介绍

    (转载) 在 php 中使用 json_encode() 内置函数(php > 5.2)可以使用得 php 中数据可以与其它语言很好的传递并且使用它. 这个函数的功能是将数值转换成json数据存 ...

  9. [转载]El Capitan 中 SIP 介绍

    这两天大家纷纷将 OS X 系统升级到了 El Capitan,然后发现,一些注入的工具无法使用了,某些系统目录无法使用了,第三方未签名的 kext 无法加载了,问题一堆堆的.这是因为,Mac OS ...

随机推荐

  1. 大数据之Oozie——源码分析(一)程序入口

    工作中发现在oozie中使用sqoop与在shell中直接调度sqoop性能上有很大的差异.为了更深入的探索其中的缘由,开始了oozie的源码分析之路.今天第一天阅读源码,由于没有编译成功,不能运行测 ...

  2. 【整理】Linux下中文检索引擎coreseek4安装,以及PHP使用sphinx的三种方式(sphinxapi,sphinx的php扩展,SphinxSe作为mysql存储引擎)

          一,软件准备 coreseek4.1 (包含coreseek测试版和mmseg最新版本,以及测试数据包[内置中文分词与搜索.单字切分.mysql数据源.python数据源.RT实时索引等测 ...

  3. css中各种情况下的元素的垂直和水平居中的问题

    问题:外边是一个容器,容器中还有一个容器,那么请问怎么让里边的容器垂直水平居中显示?? No1: 外边的容器宽度和高度确认,里边是行内元素 .container{width:200px; height ...

  4. 表示即将废弃一个方法,或不赞成使用的一个方法或属性或其它,关键词 deprecated

  5. Java基础之面向对象以及其他概念

    一.基础知识:1.JVM.JRE和JDK的区别: JVM(Java Virtual Machine):java虚拟机,用于保证java的跨平台的特性. java语言是跨平台,jvm不是跨平台的. JR ...

  6. IOS开发——01_第一个OC程序

    本文目录 一.新建Xcode项目 二.运行项目 注:建议先学习C语言, 如果你还没有编程经验,看不懂的地方可以在评论区提出,本文使用的为Xcode6.1版本,与之前版本会有所差异,但总体不变. 另:还 ...

  7. 攻城狮在路上(叁)Linux(三十)--- 光盘写入工具

    一.基本步骤: 1.用mkisofs命令将所需备份的数据构建成镜像文件. 2.用cdrecord命令将镜像文件刻录至光盘或者DVD中. 二.mkisofs:新建镜像文件 mkisofs [-0 镜像文 ...

  8. Android自动化测试-Robotium(一)简介

    一.Robotium原理 Robotium是一款Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击.长按.滑动等).查找和断言机制的API ...

  9. If A wants to use B

    Find the place where B is used, and use C to call C.B RootFrame.Navigated += CheckForResetNavigation ...

  10. 【读书笔记《Android游戏编程之从零开始》】17.游戏开发基础(游戏适屏的简述和作用、让游戏主角动起来)

    1.游戏适屏的简述和作用 由于市面上安装 Android 系统的手机不断增多,出现了各种分辨率.各种屏幕尺寸的Android 系统手机.为了保证一个游戏或者一个软件能在所有的 Android 手机上正 ...