SlideShare a Scribd company logo
1 of 24
Download to read offline
DevOps到底能干什么
By Denny Jan, 2016
–Denny
“所有内容都是个⼈看法,信不信由你, 反正…”
⺫录
• 通俗介绍
• 三阶段论
• 主要⼯作
• 常⻅困境
• Q&A
–Johnny Appleseed
DevOps是什么?现在为啥越来越多⼈讨论它?
Complexibility
开源软件的兴起,新技术新⼯具层出不穷。它们提
供了强⼤功能、加速了开发速度。同时也带了越来
越⾼的使⽤和学习成本。不管是部署和配置⼀个重
要的线上系统,还是搭建⼀个开发⾃⼰的测试环境,
都变得⽐以往更加的复杂,易错,和低效。
这⼏年涌现的新技术和新思路,能⼤⼤缩短上线时
间,控制可能出错的地⽅,尤其是配置信息。所以,
⼤家都想试试。
Unpredictability
⽣活充满惊喜,系统充满惊吓。
这些问题不是新的现象,只是以往没有很好的解决。
现在⼈们有了新的思路,以致于形成⼀股强⼤的思
潮。
Inefficiency
经常出现因缺少信息或复杂流程,⽽导致效率低下。
⼤量操作是由⼈⼯完成,尤其是团队super hero的
存在。他们带来⾼效率的同时,也带了很多不可靠
性。
⼀个新员⼯⼊职,需要⼀两周才能真正干活,⼤部
分时间在弄环境找信息。⼀个⼤的更新经常需要数
天才能上线,⽽且上线后⼤家都战战兢兢。
对于这些问题,越来越多的新思路和新经验被不同
公司反复验证有效。
Communication
上线就出妖孽,问题的原因⼜经常没法细说。最经
典的模式是,出问题后,运维团队怪开发团队做的
东⻄烂,开发团队怪运维什么都不懂。然后⼤家⼀
起怪测试团队,怎么之前发现不了。
IT系统不可控、成本超预算的情况⼏乎是遍地皆
是。这也带来了不同团队之间的关系紧张的诱因。
因此IT界在反思,哪些环节中⼈的因素可以拿掉,
可以减少?因为相⽐⼈,机器可信得多,听话得多。
Maintenance
英语⾥有个很难翻译的词叫 maintenance,⼤致意
思是维护,维修,让⼈或事物维持在既定的状态。
开始⼯作后我们会渐渐发觉,原来⽣活中⼤部分的
时间都⽤在 maintenance 上:⼀⽇三餐,⼋⼩时上
班,⼋⼩时睡眠,交⽔电费,去超市买⽇⽤,照看
孩⼦……不知不觉,下班时间就没有了;再不知不
觉,双休⽇就也没有了。
软件⾏业中,⽇常维护做得不好会很耗精⼒
⺫录
• 通俗介绍
• 三阶段论
• 主要⼯作
• 常⻅困境
• Q&A
–Johnny Appleseed
DevOps三阶段论:⾃动化、⾃助化、智能化
阶段I: ⾃动化
• ⾃动化:以简化流程、⾃动化稳定流程为主
• 核⼼思想:靠程序不靠⼈。⼿动太慢太没保证
• 常规表现:
• ⼀键式安装、升级、备份
• 持续集成、⾃动查错、⼯具⽂化、等等
阶段II: ⾃助化
• ⾃助化:降低⼯具使⽤复杂度、提⾼稳定性为主
• 核⼼思想:⼯具⽂化
• 常规表现:
• 可视化运维、图形化运维、ChatOps
• 灾难预演、协助故障排查、等等
阶段III: 智能化
• 智能化:可视化运营,可度量化管理为主
• 核⼼思想:精细化运营,更省钱更可控
• 常规表现:
• 运营指标采集、过程预警、⾃我修复
• 性能调优、⾃动扩容、成本控制、等等
⺫录
• 通俗介绍
• 三阶段论
• 主要⼯作
• 常⻅困境
• Q&A
对常规性⼯作
• 常规Ops⼯作
• 部署、升级和监控;灾备、HA;等等
• 性能优化、减避单点故障
• 持续集成系统CI的维护
• 常规IT⼯作
• 各类IT系统监控和维护:gitlab, JIRA, VPN, etc
• 不同IT系统的权限赋予
对开发的帮助
• 加速和改善现有开发流程
• 更快的code build和deploy、本地sandbox搭建、presubmit的⾃动检验
• 降低不稳定性因素,对开发的影响
• GFW、⺴络慢和⺴络不稳定、本地maven/gradle repo等
• 快速⽽简便的持续集成和封闭的集成测试:
• all-in-one和集群环境、快速复制线上系统
• 代码质量检查、可容忍状况的灾难模拟、深⼊完备的⾃动化验证逻辑
• 反馈线上系统的运⾏状况
• 运⾏性能数据、logfile故障分析、核⼼指标的统计、基于运维经验的Design review
对实施和运维的帮助
• 简化部署和升级流程: 更快、更稳定
• 系统出问题前,及早报警
• 深度且细粒度的监控、故障模式识别
• 出问题后,减少与客户沟通的需要
• 问题解决后,修复的过程及其简单
• 对不同场景不同客户,提供统⼀的⼀键式更新
⺫录
• 通俗介绍
• 三阶段论
• 主要⼯作
• 常⻅困境
• Q&A
常⻅困境
• 如何向略懂的⽼板说明, DevOps的价值?
• DevOps会提供很多⼯具,如何避免被技术挟持?
• 与其它团队之间如何界定⼯作的范围?
• 出故障后,如何界定问题的边界?
• DevOps⾯太⼲,技术太多,学习起来有难度?
⺫录
• 通俗介绍
• 三阶段论
• 主要⼯作
• 常⻅困境
• Q&A
–Johnny Appleseed
“DevOps到底能干什么?”
DevOps不是⼀种技术、⽽是⼀种思维⽅式。
!
它将组织中将尽可能多的不确定性、低效性、团
队隔阂找出来,暴露出来。以⼯具⽂化为主要⼿
段,从技术上和流程上提供改进措施。
!
最终达到,开发⼈员只需要关注业务代码。遵循
⼀定的规范,使⽤简单⼯具,产品就能快速上线,
上线就能持续跑稳定,同时避免不必要的浪费。
!
我认为未来趋势将是:DevOps将持续减少团队
对其它岗位的需求,之后⼤家对DevOps需求也
越来越少,以⾄最终⼏近没有
–Denny
denny.zhang001@gmail.com

More Related Content

Similar to [Chinese version] DevOps Now And Future

[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...
[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...
[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...Edward Kuo
 
DevOps Days Taipei 2018
DevOps Days Taipei 2018DevOps Days Taipei 2018
DevOps Days Taipei 2018Cobra Chen
 
Effective DevOps (Agile Tour HsinChu 2017)
Effective DevOps (Agile Tour HsinChu 2017)Effective DevOps (Agile Tour HsinChu 2017)
Effective DevOps (Agile Tour HsinChu 2017)Chen Cheng-Wei
 
Effective DevOps:一場文化與技術的轉型運動 (陳正瑋)
Effective DevOps:一場文化與技術的轉型運動  (陳正瑋)Effective DevOps:一場文化與技術的轉型運動  (陳正瑋)
Effective DevOps:一場文化與技術的轉型運動 (陳正瑋)AgileTour@TW
 
Drbl clonezilla.basic v15
Drbl clonezilla.basic v15Drbl clonezilla.basic v15
Drbl clonezilla.basic v15hs1250
 
Os Overview 、Open Solaris Install&Tech Demo
Os Overview 、Open Solaris Install&Tech DemoOs Overview 、Open Solaris Install&Tech Demo
Os Overview 、Open Solaris Install&Tech Demoshan.wang33
 
Ruby on rails部署
Ruby on rails部署Ruby on rails部署
Ruby on rails部署Deng Peng
 
打造完全免費的,JAVA專案持續整合環境_ 2013 java developer_day_by 李書豪
打造完全免費的,JAVA專案持續整合環境_ 2013 java developer_day_by 李書豪打造完全免費的,JAVA專案持續整合環境_ 2013 java developer_day_by 李書豪
打造完全免費的,JAVA專案持續整合環境_ 2013 java developer_day_by 李書豪奕孝 陳
 
From Coders to Builders of the Intelligent World
From Coders to Builders of the Intelligent WorldFrom Coders to Builders of the Intelligent World
From Coders to Builders of the Intelligent WorldHuawei Technologies
 
51 cto linuxops_issue2
51 cto linuxops_issue251 cto linuxops_issue2
51 cto linuxops_issue2Yiwei Ma
 
DevOps的神鬼奇航
DevOps的神鬼奇航DevOps的神鬼奇航
DevOps的神鬼奇航Edward Kuo
 
J2EE Performance Monitor (Profiler)
J2EE Performance Monitor (Profiler)J2EE Performance Monitor (Profiler)
J2EE Performance Monitor (Profiler)Allan Huang
 
版控實務
版控實務版控實務
版控實務Robin
 
使用 Dependency Injection 撰寫簡潔 C# 程式碼原來這麼簡單 (.NET Conf 2018)
使用 Dependency Injection 撰寫簡潔 C# 程式碼原來這麼簡單 (.NET Conf 2018)使用 Dependency Injection 撰寫簡潔 C# 程式碼原來這麼簡單 (.NET Conf 2018)
使用 Dependency Injection 撰寫簡潔 C# 程式碼原來這麼簡單 (.NET Conf 2018)Poy Chang
 
怎样成为优秀软件模型设计者
怎样成为优秀软件模型设计者怎样成为优秀软件模型设计者
怎样成为优秀软件模型设计者mysqlops
 
The way to continuous delivery
The way to continuous deliveryThe way to continuous delivery
The way to continuous deliveryQiao Liang
 
浅谈架构升级
浅谈架构升级浅谈架构升级
浅谈架构升级Hardway Hou
 
DevOps at DUDU
DevOps at DUDUDevOps at DUDU
DevOps at DUDU晓东 杜
 
Dev ops 簡介
Dev ops 簡介Dev ops 簡介
Dev ops 簡介hugo lu
 

Similar to [Chinese version] DevOps Now And Future (20)

[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...
[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...
[Agile Tour Hsinchu 2019] Our practice in the DevOps Process for Manufacture ...
 
DevOps Days Taipei 2018
DevOps Days Taipei 2018DevOps Days Taipei 2018
DevOps Days Taipei 2018
 
Effective DevOps (Agile Tour HsinChu 2017)
Effective DevOps (Agile Tour HsinChu 2017)Effective DevOps (Agile Tour HsinChu 2017)
Effective DevOps (Agile Tour HsinChu 2017)
 
Effective DevOps:一場文化與技術的轉型運動 (陳正瑋)
Effective DevOps:一場文化與技術的轉型運動  (陳正瑋)Effective DevOps:一場文化與技術的轉型運動  (陳正瑋)
Effective DevOps:一場文化與技術的轉型運動 (陳正瑋)
 
Drbl clonezilla.basic v15
Drbl clonezilla.basic v15Drbl clonezilla.basic v15
Drbl clonezilla.basic v15
 
Os Overview 、Open Solaris Install&Tech Demo
Os Overview 、Open Solaris Install&Tech DemoOs Overview 、Open Solaris Install&Tech Demo
Os Overview 、Open Solaris Install&Tech Demo
 
Ruby on rails部署
Ruby on rails部署Ruby on rails部署
Ruby on rails部署
 
打造完全免費的,JAVA專案持續整合環境_ 2013 java developer_day_by 李書豪
打造完全免費的,JAVA專案持續整合環境_ 2013 java developer_day_by 李書豪打造完全免費的,JAVA專案持續整合環境_ 2013 java developer_day_by 李書豪
打造完全免費的,JAVA專案持續整合環境_ 2013 java developer_day_by 李書豪
 
From Coders to Builders of the Intelligent World
From Coders to Builders of the Intelligent WorldFrom Coders to Builders of the Intelligent World
From Coders to Builders of the Intelligent World
 
51 cto linuxops_issue2
51 cto linuxops_issue251 cto linuxops_issue2
51 cto linuxops_issue2
 
DevOps的神鬼奇航
DevOps的神鬼奇航DevOps的神鬼奇航
DevOps的神鬼奇航
 
J2EE Performance Monitor (Profiler)
J2EE Performance Monitor (Profiler)J2EE Performance Monitor (Profiler)
J2EE Performance Monitor (Profiler)
 
版控實務
版控實務版控實務
版控實務
 
使用 Dependency Injection 撰寫簡潔 C# 程式碼原來這麼簡單 (.NET Conf 2018)
使用 Dependency Injection 撰寫簡潔 C# 程式碼原來這麼簡單 (.NET Conf 2018)使用 Dependency Injection 撰寫簡潔 C# 程式碼原來這麼簡單 (.NET Conf 2018)
使用 Dependency Injection 撰寫簡潔 C# 程式碼原來這麼簡單 (.NET Conf 2018)
 
怎样成为优秀软件模型设计者
怎样成为优秀软件模型设计者怎样成为优秀软件模型设计者
怎样成为优秀软件模型设计者
 
The way to continuous delivery
The way to continuous deliveryThe way to continuous delivery
The way to continuous delivery
 
浅谈架构升级
浅谈架构升级浅谈架构升级
浅谈架构升级
 
Xpp
XppXpp
Xpp
 
DevOps at DUDU
DevOps at DUDUDevOps at DUDU
DevOps at DUDU
 
Dev ops 簡介
Dev ops 簡介Dev ops 簡介
Dev ops 簡介
 

[Chinese version] DevOps Now And Future