提到 devops 到底在談些什麼玩意兒?

129
Cheng Wei Chen @ Docker 線上讀書會 2016/11/2 瑽粙㬵რ: https://unsplash.com/photos/9O1oQ9SzQZQ 提到 DevOps 到底在 談些什麼玩意兒? DevOps ?

Upload: chen-cheng-wei

Post on 16-Apr-2017

780 views

Category:

Technology


0 download

TRANSCRIPT

Cheng Wei Chen @ Docker 線上讀書會 2016/11/2: https://unsplash.com/photos/9O1oQ9SzQZQ

提到 DevOps 到底在談些什麼玩意兒?

DevOps ?

Cheng Wei @ DevOpsTaiwan Meetup

DevOps for modern developer team

摩登開發團隊的DevOps之道

: http://nos.twnsnd.co/image/59875737775

聽過可以

轉台喔

Cheng Wei Chen @ C.C.Agile #37: https://www.flickr.com/photos/state-records-nsw/7653426404

DevOps: building the bridge between development and operation

DevOps: 建造開發維運的跨界之橋

聽過可以

轉台喔

Cheng Wei Chen 陳 正瑋

DevOps Engineer @ 得寬科技

http://chengweichen.com

: https://stock.tookapic.com/photos/17849

DevOps Taiwan

https://www.facebook.com/groups/DevOpsTaiwan/

Legacy

http://www.theqwan.com/contact

JetBrains

PhpStrom

Laravel http://www.laravel-dojo.com

PHP/Laravel

DevOps ?

DevOps ?

歷史淵源?

DevOps ?

歷史淵源?

定義?

DevOps ?

歷史淵源?

職務?

定義?

DevOps ?

歷史淵源? 內涵?

職務?

定義?

歷史淵源

201620051930 1995 20001990 2010

2009 - DevOpsDays Ghent in Belgium

201620051930 1995 20001990

Agile 2008 conference, Andrew Clay Shafer and Patrick Debois discussed “Agile Infrastructure”

2009/06/23, O’Reilly Velocity, “10+ Deploys per Day Dev and Ops Cooperation at Flickr”

2009 - DevOpsDays Ghent in Belgium

2010

201620051930 1995 20001990

Agile 2008 conference, Andrew Clay Shafer and Patrick Debois discussed “Agile Infrastructure”

2009/06/23, O’Reilly Velocity, “10+ Deploys per Day Dev and Ops Cooperation at Flickr”

2009 - DevOpsDays Ghent in Belgium

2010

Twitter

DevOpsDays

->DevOps

201620051930 1995 20001990

Agile 2008 conference, Andrew Clay Shafer and Patrick Debois discussed “Agile Infrastructure”

2009/06/23, O’Reilly Velocity, “10+ Deploys per Day Dev and Ops Cooperation at Flickr”

2009 - DevOpsDays Ghent in Belgium

2010 - Book Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation

2013 - Book The Phoenix Project

2010

1930s – PDCA-Cycle

201620051992 – Crystal

1930

2002 – TDD

2007 – Kanban for Software Development

2009 – Lean Startup

1995 20001990 2010

1999 – User Stories

1999 – eXtreme Programming

1995 – Scrum

2001 – Agile Manifesto 2007 – Agile Retrospectives

1993 – Refactoring

1995 – Pair Programming

1999 – Continuous Integration

2006 – BDD

1940s – Kanban & Toyota Production Systems / Lean

2003 – Lean Software Development

2009 – Software Craftsmanship Manifesto

2008 – Clean Code

: http://finding-marbles.com/2012/04/15/a-brief-history-of-agile-and-lean-events/

2009 - DevOpsDays Ghent in Belgium

1930s – PDCA-Cycle

201620051992 – Crystal

1930

2002 – TDD

2007 – Kanban for Software Development

2009 – Lean Startup

1995 20001990 2010

1999 – User Stories

1999 – eXtreme Programming

1995 – Scrum

2001 – Agile Manifesto 2007 – Agile Retrospectives

1993 – Refactoring

1995 – Pair Programming

1999 – Continuous Integration

2006 – BDD

1940s – Kanban & Toyota Production Systems / Lean

2003 – Lean Software Development

2009 – Software Craftsmanship Manifesto

2008 – Clean Code

: http://finding-marbles.com/2012/04/15/a-brief-history-of-agile-and-lean-events/ , https://en.wikipedia.org/wiki/Comparison_of_open-source_configuration_management_software

2009 - DevOpsDays Ghent in Belgium

2006 – AWS

2012 – Ansible

2009 – Chef

2005 – Puppet

2007 – VirtualBox

1999 – VMware

2005 – Git

定義

@ DevOpsTaiwan Sharing #1 - Jeff Hung ( )

: https://www.udemy.com/learn-devops-continuously-deliver-better-software/#about-course

: https://www.udemy.com/learn-devops-continuously-deliver-better-software/#about-course

DevOps /QA

: https://zh.wikipedia.org/wiki/DevOps

Wiki

DevOps /QA

: https://zh.wikipedia.org/wiki/DevOps

Wiki

DevOps represents a change in IT culture, focusing on rapid IT service delivery through the adoption of agile, lean practices in the context of a

system-oriented approach. DevOps emphasizes people (and culture), and seeks to improve collaboration between operations and development

teams. DevOps implementations utilize technology — especially automation tools that can leverage an increasingly programmable and

dynamic infrastructure from a life cycle perspective.

: http://www.gartner.com/it-glossary/devops/

Gartner

DevOps represents a change in IT culture, focusing on rapid IT service delivery through the adoption of agile, lean practices in the context of a

system-oriented approach. DevOps emphasizes people (and culture), and seeks to improve collaboration between operations and development

teams. DevOps implementations utilize technology — especially automation tools that can leverage an increasingly programmable and

dynamic infrastructure from a life cycle perspective.

: http://www.gartner.com/it-glossary/devops/

Gartner

A philosophy that brings together operations and development DevOps is an approach that promotes closer collaboration between lines of business, development and IT operations. It is an enterprise capability that enables the continuous delivery, continuous deployment and continuous monitoring of applications. It reduces the time needed to address customer feedback. Development and operations, and even testing, were often siloed in the past. DevOps brings them together to improve agility.

: https://www.ibm.com/cloud-computing/what-is-devops

IBM

A philosophy that brings together operations and development DevOps is an approach that promotes closer collaboration between lines of business, development and IT operations. It is an enterprise capability that enables the continuous delivery, continuous deployment and continuous monitoring of applications. It reduces the time needed to address customer feedback. Development and operations, and even testing, were often siloed in the past. DevOps brings them together to improve agility.

: https://www.ibm.com/cloud-computing/what-is-devops

IBM

: http://www.ithome.com.tw/news/87144

IBM

: http://www.ithome.com.tw/news/87144

IBM

DevOps

: https://aws.amazon.com/tw/devops/what-is-devops/

AWS

DevOps

: https://aws.amazon.com/tw/devops/what-is-devops/

AWS

DevOps is… A cultural and professional movement, focused on how we build and operate high velocity organisations, born from the

experiences of its practitioners.

: https://www.chef.io/solutions/devops/

Chef

DevOps is… A cultural and professional movement, focused on how we build and operate high velocity organisations, born from the

experiences of its practitioners.

: https://www.chef.io/solutions/devops/

Chef

Devops is a cultural movement that changes how individuals think about their work, values the diversity of work done, supports intentional processes that accelerate the rate by which businesses realize value, and measures the effect of social and technical change. It is a way of thinking and a way of working that enables individuals and organizations to develop and maintain sustainable work practices. It is a cultural framework for sharing stories and developing empathy, enabling people and teams to practice their crafts in effective and lasting ways.

: Effective DevOps P.13, Publisher: O'Reilly Media. (http://shop.oreilly.com/product/0636920039846.do)

《Effective DevOps》

Devops is a cultural movement that changes how individuals think about their work, values the diversity of work done, supports intentional processes that accelerate the rate by which businesses realize value, and measures the effect of social and technical change. It is a way of thinking and a way of working that enables individuals and organizations to develop and maintain sustainable work practices. It is a cultural framework for sharing stories and developing empathy, enabling people and teams to practice their crafts in effective and lasting ways.

: Effective DevOps P.13, Publisher: O'Reilly Media. (http://shop.oreilly.com/product/0636920039846.do)

《Effective DevOps》

https://unsplash.com/search/bible?photo=1EbsMYrAu-s

DevOps 的標準定義

DevOps 的標準定義做啥?怎麼做?

What Is DevOps? It depends on whom you ask.

: http://www.infoworld.com/article/2905307/devops/what-is-devops-depends-on-whom-you-ask.html

: https://youtu.be/_DEToXsgrPc

: http://pixabay.com/en/kick-martial-arts-warrior-185384/

BE

A

DEVOPS

KUNG FU

MASTER

: http://pixabay.com/en/kick-martial-arts-warrior-185384/

BE

A

DEVOPS

KUNG FU

MASTER

少林武功好~ 誒~

: http://pixabay.com/en/kick-martial-arts-warrior-185384/

BE

A

DEVOPS

KUNG FU

MASTER

少林武功好~ 誒~

哼哼哈兮!快使用雙截棍!

內涵

DevOps

DevOps

DevOpsDevOps

DevOps

DevOps

DevOps

DevOps

DevOps

DevOps

DevOps DevOps

DevOps DevOps DevOps

DevOps DevOps

DevOpsDevOps

DevOps

DevOpsDevOps

DevOps

DevOps

DevOps

Tool Scaling

Collaboration Affinity

: Effective DevOps P.57, Publisher: O'Reilly Media. (http://shop.oreilly.com/product/0636920039846.do)

code build test deploy operateplan

Measurement

Monitor Metrics Analytics

Continuous IntegrationContinuous Delivery

DevOps

MonitoringAutomation

Dev

release

Ops Sharing

FastIteration

Feedback

break silos

LEAN

CultureAgile

: http://negativespace.co/photos/guitarist/ , http://finda.photo/image/11418 , http://nos.twnsnd.co/image/58523667245 , https://www.flickr.com/photos/nationalarchives/3047452735/ , http://nos.twnsnd.co/image/83208814778

Sharing

LEANAutomationCulture

Measurement

透明度 敏捷 精實

自動化

: https://channel9.msdn.com/Events/DevOps-TW/2015-DevOps-Day/b01

透明度

自動化

: https://channel9.msdn.com/Events/DevOps-TW/2015-DevOps-Day/b01

文化

透明度

自動化

: https://channel9.msdn.com/Events/DevOps-TW/2015-DevOps-Day/b01

資訊透明度 文化

透明度

自動化

: https://channel9.msdn.com/Events/DevOps-TW/2015-DevOps-Day/b01

生產力

資訊透明度 文化

資訊 透明度 文化

自動化

文化

: http://negativespace.co/photos/guitarist/

Development Operations

dev dev dev ops ops ops

穀倉效應

keep calm it works on my

machine

: http://www.keepcalm-o-matic.co.uk/p/keep-calm-it-works-on-my-machine/

https://www.flickr.com/photos/statelibraryofnsw/6000988028/

穀倉效應

Development Operations

dev dev dev ops ops ops

DevOps

break

break

穀倉效應

Development Operations

dev ops

devops

DevOps

dev ops

Development Operations

dev dev ops opsdev ops

DevOpsdevops

devops

devops

文化

Development Operations

dev dev ops opsdev ops

DevOps

We all love Docker, DevOps tools…etc

Docker Docker

文化

Top

Down

DevOps

團隊協作

工作流程

專案管理

資源分配

文化

more…

Top

Down

DevOps

文化

more…

鼓勵創新

容許錯誤

持續改善

自動化

: http://finda.photo/image/11418

自動化

: http://finda.photo/image/11418

: http://www.ithome.com.tw/news/87144

Continuous Integration

Continuous Delivery

Continuous Deployment

more…

Continuous Delivery ISBN: 978-0321601919

Continuous Delivery 中文版利用自動化的建置、測試與部署完美創造出可信賴的軟體發佈 ISBN: 978-9862019627

非讀不可

code build test release deploy operateplan

Continuous Integration

Continuous Delivery Automation

CI / CD / Automation

code build test release deploy operateplan

Continuous Integration

Continuous Delivery Automation

CI / CD / Automation

關鍵在於你的 “Pipeline”

就是要又短又快!!

謎之音:這樣描述沒問題嗎?

自動化

就是要又短又快!!

開發週期 除錯 解決問題 測試 部署

自動 可重複運行 可靠 減少人為錯誤

謎之音:這樣描述沒問題嗎?

自動化

減少浪費發現問題持續改善

資訊透明度

: http://nos.twnsnd.co/image/69890360201

Metrics

: http://nos.twnsnd.co/image/83208814778

Monitor

Analytics

讓數據說話!

讓數據說話!

持續改善(code, test, deploy,

operate…)

Measurement

Feedback

監測任何有意義之數據performance, error log …etc

code build test release deploy operateplan

Measurement

Monitor Metrics Analytics

Feedback

資訊透明度

Monitoring

code build test release deploy operateplan

Measurement

Monitor Metrics Analytics

Feedback

資訊透明度

需求反饋

專案管理

維運狀況

程式碼技術

透明度

: https://channel9.msdn.com/Events/DevOps-TW/2015-DevOps-Day/b01more…

: http://www.splitshire.com/hand-holding-moleskine/

為何需要 DevOps ?

: http://www.ithome.com.tw/news/87144

Why DevOps ?藉由將各開發階段自動化以及訊息公

開,幫助企業軟體研發相關部門,解決

傳統流程端對端(End to end)所產生

訊息不對稱,以及協作不順暢的問題,

並且自動化開發流程的每個階段,進而

提升軟體交付的速度。

Why DevOps ?藉由將各開發階段自動化以及訊息公

開,幫助企業軟體研發相關部門,解決

傳統流程端對端(End to end)所產生

訊息不對稱,以及協作不順暢的問題,

並且自動化開發流程的每個階段,進而

提升軟體交付的速度。

: http://www.ithome.com.tw/news/87144

Why DevOps ?CIO在雲端時代必須聚焦在總體商業的結

果,了解究竟IT提供企業什麼價值,這包

含三個要點,應用程式部署的速度、衡量

風險、控制成本。如果守著過去開發及營

運模式,對於以上提及的三點將失去競爭

力,也因為如此,傳統的方式必須改變。

: http://www.ithome.com.tw/news/87144

Why DevOps ?

就如同精實開發的精隨,減少不

必要的浪費以及重複性的程序,

做到剛好符合需求。

: http://www.ithome.com.tw/news/87144

Why DevOps ?因此可以減少錯誤發生,開發人員也可以

專注在產生更有品質的程式碼,避免之後

不停的修補程式碼,有更多心力去做一些

有趣的事,我們也從一些客戶案例看到,

開發人員不只更有生產力,他們也更快樂

了,而且良好軟體讓維運更容易。

: http://www.ithome.com.tw/news/87144

Why DevOps ?我們有一些來自客戶的數據,軟體測試

可以減少90%的時間,版本釋出和部署

的頻率可以大幅提升。實際案例顯示,

過去要兩年才能釋出1個新產品,導入

DevOps開發方法後,一年半可以發布

18個成品。

: http://www.ithome.com.tw/news/87144

: http://mp.weixin.qq.com/s?__biz=MzA5NzU3Njc5Mw%3D%3D&mid=2651200907&idx=1&sn=862b2c1b0ca650361efd2a46add9b03a

Why DevOps ?DevOps的一个巨大好处就是可以高效交付,这也正好

是它的初衷。Puppet和DevOps Research and

Assessment (DORA) 主办了2016年DevOps 查报告

中,根据全球4600位各IT公司的技术工作者的提交数

据统 ,得出高效公司可以完成平均每年1460次部

署。与低效 织相比,高效 织的部署 繁200倍,

品投入使用速度快2555倍,服务恢复速度快24倍。

: http://mp.weixin.qq.com/s?__biz=MzA5NzU3Njc5Mw%3D%3D&mid=2651200907&idx=1&sn=862b2c1b0ca650361efd2a46add9b03a

Why DevOps ?

在工作内容的时间分配上,低效者要多花

22%的时间用在 划好或者重复工作上,

而高效者却可以多花29%的时间用在新的工

作上。所以这里的高效不仅仅指公司 出的

效率提高,还指 工的工作 量得到提升。

: http://mp.weixin.qq.com/s?__biz=MzA5NzU3Njc5Mw%3D%3D&mid=2651200907&idx=1&sn=862b2c1b0ca650361efd2a46add9b03a

Why DevOps ?

DevOps另外一个好处就是会改善公司 织文

化、提高 工的参与感。 工 变得更高效,

也更有 足和成就感; 查 示高效 工的雇

推荐值(eNPS:employee Net Promoter

Score)更高,即对公司更加 同。

‧ 改善團隊協作 (跨部門、跨職能)

‧ 提高員工效率與企業認同

‧ 幫助控管風險、成本,減少浪費

‧ 提升軟體品質、軟體迭代速度

Why DevOps ?

‧ 改善團隊協作 (跨部門、跨職能)

‧ 提高員工效率與企業認同

‧ 幫助控管風險、成本,減少浪費

‧ 提升軟體品質、軟體迭代速度

Why DevOps ?文化

‧ 改善團隊協作 (跨部門、跨職能)

‧ 提高員工效率與企業認同

‧ 幫助控管風險、成本,減少浪費

‧ 提升軟體品質、軟體迭代速度

Why DevOps ?資訊

透明度

‧ 改善團隊協作 (跨部門、跨職能)

‧ 提高員工效率與企業認同

‧ 幫助控管風險、成本,減少浪費

‧ 提升軟體品質、軟體迭代速度

Why DevOps ?

生產力

: https://aws.amazon.com/tw/devops/what-is-devops/

速度 Speed

快速交付 Rapid Delivery

可靠性 Reliability

擴展 Scale

優化協作 Improved

Collaboration

安全性 Security

Why DevOps ?

: http://www.splitshire.com/hand-holding-moleskine/

DevOps Enigneer?

is devops a good career ?

: http://theagileadmin.com/what-is-devops/

DevOps in Your Job Title Is Doing You Harm

: https://pete.wtf/2013/05/03/devops-in-your-job-title-is-doing-you-harm/

But, 到處都有人在徵 DevOps Engineer

Everyone is “selling, doing, hiring DevOps”

Michael Ducy https://twitter.com/mfdii

: http://www.indeed.com/q-Devops-Engineer-jobs.html

: http://www.104.com.tw/jobbank/joblist/joblist.cfm?jobsource=n104bank1&keyword=devops&order=1

: http://www.104.com.tw/job/?jobno=46ol4

: http://www.104.com.tw/job/?jobno=46ol4

System Admin

Automation

Cloud

Security

AWS

: http://www.104.com.tw/job/?jobno=4e3xv

HA

System Admin

CI

LogMonitor

: http://www.104.com.tw/job/?jobno=4izqf

System Architect

Monitor

: http://www.104.com.tw/job/?jobno=48p0v

Configuration Management

AWS

Cloud

Automation

Script

: http://www.104.com.tw/job/?jobno=4iox5

Script

Linux

CI

CD

System Admin

Automation

Cloud

Security

AWS

HA CI

Log

Monitor

System Architect

Configuration Management

Linux

CD

Dev Ops

DevOps Requires New Job Skills & Roles

Cloud ArchitectRelease Manager Integration Specialist

DevOps Automation Engineer

https://www.scriptrock.com/blog/devops-new-job-skills-roles-titles

Summary

DevOps ?

歷史淵源? 內涵?

職務?

定義?

1930s – PDCA-Cycle

201620051992 – Crystal

1930

2002 – TDD

2007 – Kanban for Software Development

2009 – Lean Startup

1995 20001990 2010

1999 – User Stories

1999 – eXtreme Programming

1995 – Scrum

2001 – Agile Manifesto 2007 – Agile Retrospectives

1993 – Refactoring

1995 – Pair Programming

1999 – Continuous Integration

2006 – BDD

1940s – Kanban & Toyota Production Systems / Lean

2003 – Lean Software Development

2009 – Software Craftsmanship Manifesto

2008 – Clean Code

: http://finding-marbles.com/2012/04/15/a-brief-history-of-agile-and-lean-events/ , https://en.wikipedia.org/wiki/Comparison_of_open-source_configuration_management_software

2009 - DevOpsDays Ghent in Belgium

2006 – AWS

2012 – Ansible

2009 – Chef

2005 – Puppet

2007 – VirtualBox

1999 – VMware

2005 – Git

DevOps 的定義

取決於你詢問的對象是誰?

DevOps 的定義

大家也已經

不再關心

「標準答案」

取決於你詢問的對象是誰?

IT

正瑋 的個人看法 (2016/11/2)

CloudLEAN

Agile

Continuous Integration

Continuous Delivery

Virtualization

Infrastructure as

Code

Microservice

Configuration Management

Automated Testing

Release Management

Performance / Availability Monitoring

相關知識

CloudLEAN

Agile

Continuous Integration

Continuous Delivery

Virtualization

Infrastructure as

Code

Microservice

Configuration Management

Automated Testing

Release Management

Performance / Availability Monitoring

相關知識

: http://www.gartner.com/imagesrv/reprints/272900/272990/272990.pptx

資訊 透明度 文化

自動化

資訊 透明度 文化

自動化

Agile

Lean

more…

資訊 透明度 文化

自動化

自動化測試

自動化部署

Agile

Lean

CI / CD

more…

more…

資訊 透明度 文化

自動化

自動化測試

自動化部署

Monitoring

Log

Feedback

Agile

Lean

CI / CD

ChatOps

more…

more…

more…

為何需要 DevOps ?

‧Why Agile ?

‧Why Lean ?

‧Why CI / CD ?

‧Why Automation ?

為了又短

又快又靈活

(羞)

more…

DevOps Engineer ?

取決於你詢問的對象是誰?

職責、職務、

技能、經驗、

重新排列組合

別讓「噱頭辭彙」迷惑了你!

: https://www.facebook.com/Punnode

DevOps 神話 ?

: https://www.facebook.com/groups/DevOpsTaiwan/

Agile ? DevOps ?

: https://www.facebook.com/groups/DevOpsTaiwan/

Leaders need to realize that implementing DevOps means changing the technology system as well as the cultural system. They must acknowledge that both are intertwined and, to be successful, both systems must evolve to drive velocity.”

Learning how to manage and lead by giving people context and information to make better decisions—versus giving them tickets or briefs—is how leaders and teams will thrive.

: https://blog.chef.io/2016/10/06/future-of-devops-with-adam-jacob/

Chef CTO Adam Jacob

偷偷告訴妳

DevOps Taiwan

將會在 11/23 舉辦

Meetup #3 喔!

那要隨時準備搶票了!

而且這次

Meetup #3,

一次請來四位講者,

超威的!

圖片來源: https://unsplash.com/search/secret?photo=YLMs82LF6FY

Cheng Wei Chen @ Docker 線上讀書會 2016/11/2: https://unsplash.com/photos/9O1oQ9SzQZQ

提到 DevOps 到底在談些什麼玩意兒?

感謝聆聽!