文档章节

DevOps的常见迷思

好雨云帮
 好雨云帮
发布于 2017/09/07 11:27
字数 1115
阅读 14
收藏 0
点赞 0
评论 0

Devops 这个名词最近很红, 也不知道为什么, 大家就一窝蜂开始谈这个东西. 那到底大家有什么误解? 今天我们就来聊一聊.

首先, 我们先要对于什么是 Devops 有个共同的认识, 否则在没有相同的基础上, 大家很容易各说各话. 在 wiki 中, 它的定义如下:

DevOps (a clipped compound of "development" and "operations") is a software development method that stresses communication, collaboration, integration, automation, and measurement of cooperation between software developers and other information-technology (IT) professionals.

也就是说他是一种软体开发的方法, 这个方法强调了开发和运营之间要沟通, 合作, 整合, 自动化, 以及要有度量和监控.

此外, 他的出现, 是因为他意识到: 为了按时交付软体产品和服务,开发和运营工作必须紧密合作. 因为, 最终还是要让你的business 赚钱, 要能让客户满意, 这才是他最想要的初衷和目的.

可是, 对于从最近的文章或是conference 中, 似乎演变成了自动化, 谁的工具用得多, 谁就是Devops 比较好, 然后再加上工具厂商在背后用力推广, 似乎远远偏离了Devops 的精神以及原因产生的动机了.

那到底大家都把 Devops 误认为什么呢? 就让我们一一来瞧瞧吧

  1. 自动化就是 Devops

大家常常看到提到 Devops 就会提到要自动测试, 自动部署, 好像做 Devops 就要把一切给自动化. Devops 是因为想要有效率, 所以才把一些事情给自动化, 但是反之不一定成立.

原先要解的问题是效率和即时性, 自动化只是其中一种解法. 也许只要人多多交谈, 就可以解决了. 凡事都用自动化, 似乎忘记了人的沟通才是根本.

  1. Devops 就是要在 cloud, 就要虚拟化

因为Docker 和云端的话题在这几年很流行, 因此很容易在技术方面, 大家就会用到他们. 但是事实上, 你可以用旧的VMware/ESX, 或什至是实体机器也可以. 只要够用就好, 并且要配合你系统的特性.

就像创业一样, 不是创业就一定要高科技, 卖鱼卖鸡排也是创业. 用高科技并不会让你高人一等, 重点是你的 business 要能活得下去, 并且让客户满意.

  1. Devops 就是一堆工具

每次提到 Devops, 很多人就会问你的工具包是什么, 似乎只要用了这些工具包, 就会变成 Devops, 产品就会快速交付了.

工具再强也是要有人要用, 如果大家都不愿意写自动化, 或者是收到自动化的讯息后没人要及时处理, 这些工具再好也无法帮你什么.

  1. Devops 就是意味没有运营人员和测试人员

这是常见的误解, 认为只要导入 Devops之后, 就可以不要有专职测试人员, 以及运营人员. 所有事情只要 Devops 上了就好.

再次提醒, 当初要Devops 是要让不同角色的人工作能更有效率, 能够有同理心, 站在对方的角度去想, 怎样做可以帮助对方更有效率. 并不是把大家都裁了,然后只剩下一种角色的人, 做所有角色的事情.

  1. Devops 可以不要有 agile

其实有没有 agile 可能不是重点, 只要你能频繁交付就好. 不过, 目前来说 agile 确实是达到频繁交付的好方法.

另外想想当初extreme programming 出来时, 他有强调要用Object oriented, design pattern 吗? 似乎没有, 可是呢, 如果你会的话, 在做TDD or refactoring 就会容易许多. 所以, 同理, 使用敏捷开发方法, 或是CI 会让你在实施Devops 时简单许多.

Devops 是好棒棒, 但是想太多也是一种灾难......

Author David Ko

好雨 - DevOps / 开发运维一体化

https://www.goodrain.com/devops.jsp

DevOps是一种理念,鼓励开发和运维之间沟通、协作、集成和自动化,以便更快捷、更频繁、更可靠的构建、测试、发布应用,而云帮ACP通过对CI/CD、高效运维、微服务架构等功能特性的设计和打磨,为DevOps的实现提供了一个可靠平台。

© 著作权归作者所有

共有 人打赏支持
好雨云帮
粉丝 12
博文 66
码字总数 63237
作品 1
东城
开发秘籍——单元测试的迷惑与思考

迷思1:单元测试使得更改变得更加困难 事实却是相反的。进行单元测试的最大优点之一就是能够对代码进行大型修改,然后立即对所做更改进行正确性测试。进行代码修改,后来蔡意识到软件的其他部...

kouxunli1 ⋅ 2015/02/09 ⋅ 0

创业的血的教训

迷思一:一个好想法就可以让你赚大钱 事实是好想法对于商业成功既不是充分条件也不是必要条件。微软应该算是获得商业成功的典型,但是在它的整个发家史上却找不到一个完全独创的“好想法”。...

junwong ⋅ 2012/03/09 ⋅ 0

没有人会告诉您乘坐飞机时的几个事实 但是您一定要知道

飞机缩小了地球上的距离,它使人们对世界的认识也发生了改变。以往的〝天涯海角〞如今在飞机这种交通工具的面前也不过是〝数小时之遥〞的概念了,人们对飞机的利用早已司空见惯。这个会飞的庞...

罪恶的花生 ⋅ 2014/09/11 ⋅ 0

提升 DevOps 效率,试试 ChatOps 吧!

本文翻译自文章 To Boost DevOps, Try ChatOps,文中用简单易懂的方式介绍了 ChatOps 的发展和价值,由 OneAPM 工程师编译整理。 当我们谈论 DevOps 时,总是围绕着「自动化」,「协作」和「...

OneAPM蓝海讯通 ⋅ 2016/01/05 ⋅ 0

Compuware 在 AWS 上新推出 Topaz 套件

  【IT168 资讯】在过去一年里,Compuware在Amazon Web Services Inc.(AWS)云上提供Topaz套件的开发和测试工具,成果在“主流主机”上又迈出了新的一步。   AWS的Topaz使得企业可以为其开...

it168网站 ⋅ 2017/10/23 ⋅ 0

简洁的bash编程技巧

 1) 检查命令执行是否成功   第一种写法,比较常见:   简洁的写法:   当然你也可以不要if/else,不过这样可读性比较差:   2) 将标准输出与标准错误输出重定向到/dev/null 第一种写...

PKjason ⋅ 2013/04/13 ⋅ 0

对话专家,2018年科技圈“大明星”预测

  【IT168 资讯】2018年的科技将会是怎样的呢?DevOps、人工智能、云技术还是安全?怀着这样的疑问,我们采访了四位专家,他们对2018年又有什么样的预测呢?   虽然没有什么东西是一成不变的...

it168网站 ⋅ 2017/12/18 ⋅ 0

简洁的bash编程技巧

下面这几条是我自己在写shell代码的时候,比较喜欢的几种写法,抛砖引玉。 1) 检查命令执行是否成功 第一种写法,比较常见: 简洁的写法: 当然你也可以不要if/else,不过这样可读性比较差: 2...

xrzs ⋅ 2012/11/07 ⋅ 0

CI/CD:DevOps 背后的推动力

DevOps并非完全是基于开发人员和运维人员应该一起协作的理念。DevOps是文化传播组织,经历了现代应用交付的途径。其最终目标是更频繁地发布高质量软件的能力。 DevOps通过促进沟通和协作来实...

oschina ⋅ 05/09 ⋅ 0

解读技术雷达中的 DevOps 发展趋势

今年4月份,我第一次以主编的身份参加技术雷达的翻译工作。有幸第一时间参加到技术雷达的翻译过程中。通过我在翻译其间对条目的了解和观察,我写下了《DevOps发展的九个趋势》 今年11月份,我...

顾宇 ⋅ 2017/12/07 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

C++内存映射文件居然是这样?!

内存映射文件大家都时不时听过,但它到底是个什么?赶紧来看看吧 内存映射文件到底是干嘛的呢?让我们先来思考下面几个问题: 如果您想读的内容大于系统分配的内存块怎么办?如果您想搜索的字...

柳猫 ⋅ 25分钟前 ⋅ 0

MySQL 数据库设计总结

规则1:一般情况可以选择MyISAM存储引擎,如果需要事务支持必须使用InnoDB存储引擎。 注意:MyISAM存储引擎 B-tree索引有一个很大的限制:参与一个索引的所有字段的长度之和不能超过1000字节...

OSC_cnhwTY ⋅ 今天 ⋅ 0

多线程(四)

线程池和Exector框架 什么是线程池? 降低资源的消耗 提高响应速度,任务:T1创建线程时间,T2任务执行时间,T3线程销毁时间,线程池没有或者减少T1和T3 提高线程的可管理性。 线程池要做些什...

这很耳东先生 ⋅ 今天 ⋅ 0

使用SpringMVC的@Validated注解验证

1、SpringMVC验证@Validated的使用 第一步:编写国际化消息资源文件 编写国际化消息资源ValidatedMessage.properties文件主要是用来显示错误的消息定制 [java] view plain copy edit.userna...

瑟青豆 ⋅ 今天 ⋅ 0

19.压缩工具gzip bzip2 xz

6月22日任务 6.1 压缩打包介绍 6.2 gzip压缩工具 6.3 bzip2压缩工具 6.4 xz压缩工具 6.1 压缩打包介绍: linux中常见的一些压缩文件 .zip .gz .bz2 .xz .tar .gz .tar .bz2 .tar.xz 建立一些文...

王鑫linux ⋅ 今天 ⋅ 0

6. Shell 函数 和 定向输出

Shell 常用函数 简洁:目前没怎么在Shell 脚本中使用过函数,哈哈,不过,以后可能会用。就像java8的函数式编程,以后获取会用吧,行吧,那咱们简单的看一下具体的使用 Shell函数格式 linux ...

AHUSKY ⋅ 今天 ⋅ 0

单片机软件定时器

之前写了一个软件定时器,发现不够优化,和友好,现在重写了 soft_timer.h #ifndef _SOFT_TIMER_H_#define _SOFT_TIMER_H_#include "sys.h"typedef void (*timer_callback_function)(vo...

猎人嘻嘻哈哈的 ⋅ 今天 ⋅ 0

好的资料搜说引擎

鸠摩搜书 简介:鸠摩搜书是一个电子书搜索引擎。它汇集了多个网盘和电子书平台的资源,真所谓大而全。而且它还支持筛选txt,pdf,mobi,epub、azw3格式文件。还显示来自不同网站的资源。对了,...

乔三爷 ⋅ 今天 ⋅ 0

Debian下安装PostgreSQL的表分区插件pg_pathman

先安装基础的编译环境 apt-get install build-essential libssl1.0-dev libkrb5-dev 将pg的bin目录加入环境变量,主要是要使用 pg_config export PATH=$PATH:/usr/lib/postgresql/10/bin 进......

玛雅牛 ⋅ 今天 ⋅ 0

inno安装

#define MyAppName "HoldChipEngin" #define MyAppVersion "1.0" #define MyAppPublisher "Hold Chip, Inc." #define MyAppURL "http://www.holdchip.com/" #define MyAppExeName "HoldChipE......

backtrackx ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部