Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
DevOps核⼼心理理念和實踐
劉征-來⾃北京
個⼈人簡介
➤ 博客:http://martinliu.cn
➤ 愛好:跑步、開源技術、寫博客
➤ 履歷:CA、BMC、Citrix、Red Hat
➤ 從事:雲計算、DevOps;架構師、培訓講
師
微信
議程
➤ DevOps發展簡史 - 理清思路
➤ DevOps技術實踐 - 專注痛點
➤ DevOps企業落地 - 發展路徑
➤ 問答
發展歷歷史
理清DevOps的來⿓去脈
從Damon Edwards的段⼦子講起
在全球範圍內,各⼤大技術論壇上迅速蔓延開來來
IDC 2016
為何DevOps的歷歷史很重要?
➤ 它時刻提醒著我們DevOps的宗旨是:
➤ 從參與者中來,為參與者⽽⽣
➤ 這是⼀場基於體驗的變⾰運動
➤ 是去中⼼化的
➤ 是對所有⼈都開放的
此⼀一時彼⼀一時
IT被迫
改變
后⼯工业时代
市場波動莫測
經濟下滑
⼩小微創業企業
持續設計
數數位化
IT既是產品
數數位化轉型
社交媒體
邊緣計算
⾏行行業顛覆
顛覆式創新
雲計算、移動互聯、IoT
⼤大數數據、數數據驅動業務
我們⽇日常的⼯工作狀狀態
公司和團隊的專案管理理魔咒
Source : http://www.jems.com/articles/print/volume-38/issue-11/departments-columns/leadership-sector/challen...
⽋欠的債,⼀一定要還的!
Automation : 把軟體交付延伸到⽣產環境
Measure : 把⽣產監控度量反饋回項⽬組
Culture : 把項⽬開發團隊的知識集成到運維團隊
Share : 把運維團隊的知識集成到項⽬開發團隊
sourc...
技術實踐
專注痛點
精益IT之:價值流圖
精益IT之:⼩小规模发布的优势
➤ ⾵險更低
➤ 反饋更快
➤ 信⼼更強 From: John Allspaw 發佈週期快慢的對⽐
什什麼是持續集成(CI)?
➤ 在⼀天內,開發⼈員將代碼多次提交到共享的版本控制庫的⼀個分⽀⾥的實踐,使⽤
⾃動化構建檢驗代碼分⽀的集成
➤ CI通常定義為在每次提交(commit)代碼的時候,都進⾏單元測試,并⽣成⼀個Build
➤ 為每個分...
持續集成—可以運⾏行行的
反馈
反馈
审批 审批
什什麼是持續交付(CD)?
➤ ⼀個程式開發的⼯程⽅法,在短開發週期中,確保軟件是隨時隨地可以發佈的
➤ ⽬標是更快和更頻繁地構建、測試和發佈程式
➤ 在⽣產環境中應⽤增量的⽅式變更,降低變更交付的成本、時間和⾵險
➤ 在這個實踐中,專注于⾃動...
持续交付—可以發佈的
反馈
反馈
审批 审批
持續交付 vs. 持續部署
➤ 持續部署是⼀種特殊的持續交付流⽔線,從代碼提交⼀直到⽣產環境部署的過程中,
并沒有任何⼿⼯審批的環節—全⾃動化的部署
➤ 在這種模式中,通常會使⽤到功能開關,⽽持續部署不⼀定會⽤到
➤ 功能開關是⼀種部署和發佈解...
持續交付 vs. 持續部署
持續交付具有核⼼心地位
什什麼是持續測試?
➤ 反復地對代碼庫和環境進⾏反復的測試
➤ 通常情況下⾃動化地執⾏單元測試、集成測試、UI測試和壓⼒測試
➤ 在測試環境和⽣產環境越來越接近的情況下,測試的深度能逐漸遞進
➤ 在實踐中,持續交付流⽔線不斷更新的情況下,持續測...
持續測試
反馈
反馈
审批 审批
企業落地
發展路徑
在企業導⼊入這個理理念和實踐
➤ 重溫價值流實踐,理解、可視化和推廣價值流,系統思維
➤ 學習康威定義,優化和改進組織架構
➤ 選擇合適的價值流⼊⼿
➤ 將運維融⼊開發的過程中
DevOps⼯作三步法是底層的原則和基礎
source:http:...
第⼀一步流動原則,實施流的技術實踐
➤ 建⽴部署流⽔線的基礎設施
➤ 應⽤快速可靠的⾃動化測試
➤ 應⽤持續集成實踐
➤ 應⽤⾃動化的和低⾵險的發佈模式
➤ 應⽤可減低發佈⾵險的架構
第⼆二步反饋原則,實施反饋的技術實踐
➤ 建設全⾯的應⽤監控基礎設施
➤ 使⽤監控系統預測問題故障
➤ 應⽤反饋技術實現更安全的部署
➤ 將假設驅動開發和A/B測試融⼊⽇常⼯作
➤ ⽤檢視和協作來提⾼⼯作質量
第三步持續學習實驗原則,實施持續學習和實驗的技術實踐
➤ 把學習融⼊⽇常⼯作中
➤ 把局部提⾼轉化為全局知識
➤ 給組織的學習和提⾼預留時間
始終關注與DevOps的核⼼心考察指標
➤ 速度⽅⾯-吞吐量:
➤ 部署頻率
➤ 變更前置時間
➤ 迭代時間
➤ 可靠性⽅⾯-穩定性:
➤ 變更失敗率
➤ 故障恢復時間
➤ 可⽤性時間、宕機時間
參參考《2017年年DevOps狀狀態發展報告》
吞
吐
量量
稳
定
性
按需/1天多次
每⽉-周/1次
⼩于1⼩时
1天~1周
⼩于1⼩时
1天~1周
0~15%
31~45%
總結:DevOps知識體系的三⼤大⽀支柱和⼀一個基礎
推薦書籍
《DevOps Handbook》我們正在翻譯中,敬請期待
John Willis
問答時間
twitter: @martinliu
謝謝!
DevOps核心理念和實踐
DevOps核心理念和實踐
DevOps核心理念和實踐
Upcoming SlideShare
Loading in …5
×

DevOps核心理念和實踐

567 views

Published on

參加DevOpsDays Taipei的演講稿 http://devopsdays.tw

Published in: Technology

DevOps核心理念和實踐

  1. 1. DevOps核⼼心理理念和實踐 劉征-來⾃北京
  2. 2. 個⼈人簡介 ➤ 博客:http://martinliu.cn ➤ 愛好:跑步、開源技術、寫博客 ➤ 履歷:CA、BMC、Citrix、Red Hat ➤ 從事:雲計算、DevOps;架構師、培訓講 師 微信
  3. 3. 議程 ➤ DevOps發展簡史 - 理清思路 ➤ DevOps技術實踐 - 專注痛點 ➤ DevOps企業落地 - 發展路徑 ➤ 問答
  4. 4. 發展歷歷史 理清DevOps的來⿓去脈
  5. 5. 從Damon Edwards的段⼦子講起
  6. 6. 在全球範圍內,各⼤大技術論壇上迅速蔓延開來來
  7. 7. IDC 2016
  8. 8. 為何DevOps的歷歷史很重要? ➤ 它時刻提醒著我們DevOps的宗旨是: ➤ 從參與者中來,為參與者⽽⽣ ➤ 這是⼀場基於體驗的變⾰運動 ➤ 是去中⼼化的 ➤ 是對所有⼈都開放的
  9. 9. 此⼀一時彼⼀一時 IT被迫 改變 后⼯工业时代 市場波動莫測 經濟下滑 ⼩小微創業企業 持續設計 數數位化 IT既是產品 數數位化轉型 社交媒體 邊緣計算 ⾏行行業顛覆 顛覆式創新 雲計算、移動互聯、IoT ⼤大數數據、數數據驅動業務
  10. 10. 我們⽇日常的⼯工作狀狀態
  11. 11. 公司和團隊的專案管理理魔咒 Source : http://www.jems.com/articles/print/volume-38/issue-11/departments-columns/leadership-sector/challenge-project-management-triangle.html 質量 速度 成本 同時只能選兩個!!????
  12. 12. ⽋欠的債,⼀一定要還的! Automation : 把軟體交付延伸到⽣產環境 Measure : 把⽣產監控度量反饋回項⽬組 Culture : 把項⽬開發團隊的知識集成到運維團隊 Share : 把運維團隊的知識集成到項⽬開發團隊 source:http://www.jedi.be/blog/2012/05/12/codifying-devops-area-practices/
  13. 13. 技術實踐 專注痛點
  14. 14. 精益IT之:價值流圖
  15. 15. 精益IT之:⼩小规模发布的优势 ➤ ⾵險更低 ➤ 反饋更快 ➤ 信⼼更強 From: John Allspaw 發佈週期快慢的對⽐
  16. 16. 什什麼是持續集成(CI)? ➤ 在⼀天內,開發⼈員將代碼多次提交到共享的版本控制庫的⼀個分⽀⾥的實踐,使⽤ ⾃動化構建檢驗代碼分⽀的集成 ➤ CI通常定義為在每次提交(commit)代碼的時候,都進⾏單元測試,并⽣成⼀個Build ➤ 為每個分⽀都提供了信⼼保障
  17. 17. 持續集成—可以運⾏行行的 反馈 反馈 审批 审批
  18. 18. 什什麼是持續交付(CD)? ➤ ⼀個程式開發的⼯程⽅法,在短開發週期中,確保軟件是隨時隨地可以發佈的 ➤ ⽬標是更快和更頻繁地構建、測試和發佈程式 ➤ 在⽣產環境中應⽤增量的⽅式變更,降低變更交付的成本、時間和⾵險 ➤ 在這個實踐中,專注于⾃動化的部署流⽔線 ➤ 在部署到⽣產環境之前,可以有⼀個或者多個⼿⼯審批的環節
  19. 19. 持续交付—可以發佈的 反馈 反馈 审批 审批
  20. 20. 持續交付 vs. 持續部署 ➤ 持續部署是⼀種特殊的持續交付流⽔線,從代碼提交⼀直到⽣產環境部署的過程中, 并沒有任何⼿⼯審批的環節—全⾃動化的部署 ➤ 在這種模式中,通常會使⽤到功能開關,⽽持續部署不⼀定會⽤到 ➤ 功能開關是⼀種部署和發佈解耦的⽅式 ➤ 部署 發佈 ➤ 在這種模式下,在⽣產環境中將更成熟的特性開放出來,對於⼤多數最終⽤⼾⽽⾔, ⽐較新的特性可以是不可⾒的
  21. 21. 持續交付 vs. 持續部署
  22. 22. 持續交付具有核⼼心地位
  23. 23. 什什麼是持續測試? ➤ 反復地對代碼庫和環境進⾏反復的測試 ➤ 通常情況下⾃動化地執⾏單元測試、集成測試、UI測試和壓⼒測試 ➤ 在測試環境和⽣產環境越來越接近的情況下,測試的深度能逐漸遞進 ➤ 在實踐中,持續交付流⽔線不斷更新的情況下,持續測試往往是⼀個困難的部分
  24. 24. 持續測試 反馈 反馈 审批 审批
  25. 25. 企業落地 發展路徑
  26. 26. 在企業導⼊入這個理理念和實踐 ➤ 重溫價值流實踐,理解、可視化和推廣價值流,系統思維 ➤ 學習康威定義,優化和改進組織架構 ➤ 選擇合適的價值流⼊⼿ ➤ 將運維融⼊開發的過程中 DevOps⼯作三步法是底層的原則和基礎 source:http://itrevolution.com/the-three-ways-principles-underpinning-devops/
  27. 27. 第⼀一步流動原則,實施流的技術實踐 ➤ 建⽴部署流⽔線的基礎設施 ➤ 應⽤快速可靠的⾃動化測試 ➤ 應⽤持續集成實踐 ➤ 應⽤⾃動化的和低⾵險的發佈模式 ➤ 應⽤可減低發佈⾵險的架構
  28. 28. 第⼆二步反饋原則,實施反饋的技術實踐 ➤ 建設全⾯的應⽤監控基礎設施 ➤ 使⽤監控系統預測問題故障 ➤ 應⽤反饋技術實現更安全的部署 ➤ 將假設驅動開發和A/B測試融⼊⽇常⼯作 ➤ ⽤檢視和協作來提⾼⼯作質量
  29. 29. 第三步持續學習實驗原則,實施持續學習和實驗的技術實踐 ➤ 把學習融⼊⽇常⼯作中 ➤ 把局部提⾼轉化為全局知識 ➤ 給組織的學習和提⾼預留時間
  30. 30. 始終關注與DevOps的核⼼心考察指標 ➤ 速度⽅⾯-吞吐量: ➤ 部署頻率 ➤ 變更前置時間 ➤ 迭代時間 ➤ 可靠性⽅⾯-穩定性: ➤ 變更失敗率 ➤ 故障恢復時間 ➤ 可⽤性時間、宕機時間
  31. 31. 參參考《2017年年DevOps狀狀態發展報告》 吞 吐 量量 稳 定 性 按需/1天多次 每⽉-周/1次 ⼩于1⼩时 1天~1周 ⼩于1⼩时 1天~1周 0~15% 31~45%
  32. 32. 總結:DevOps知識體系的三⼤大⽀支柱和⼀一個基礎
  33. 33. 推薦書籍
  34. 34. 《DevOps Handbook》我們正在翻譯中,敬請期待 John Willis
  35. 35. 問答時間 twitter: @martinliu 謝謝!

×