Ch02 DevOps工具
有一些工具可以幫助團隊採用DevOps技術。本章介紹這些工具,在本書後面,將用實操示例更詳細地介紹這些工具。服務器
2.1爲成功而組織:看板
- 若是運營團隊老是專一於堆積如山的指派任務,他們什麼時候纔有時間改善系統,償還技術債務呢?咱們如何正確排定工做的優先級,考慮任務之間的依賴性?
- 看板(Kanban,字面翻譯爲「標記卡片」)系統有助於解決這些問題,以及其餘的一些問題。這種方法是Taiichi Ohno在開發豐田製造系統時爲了實現即時(JIT)生產目標而開發的,它經過檢查製造過程不一樣步驟的流程,識別須要補救的瓶頸,使系統更加高效。具體的思路是,緩解瓶頸,就會將工做任務從在途狀態帶到完成狀態。限制在途工做能夠爲工做者帶來空閒時間,對製造過程進行改進(例如,在緩解舊瓶頸的同時識別和消除新瓶頸)。
- 在成功地改變工做方式以前,咱們必須用一種條理性的方法來安排工做、識別系統中的問題。
- 看板系統最重要的特徵是工做過程管理。
- 技術負債是在計劃好的工做期間,因爲錯誤或者效率低下形成的全部計劃外工做。
- 看板的另外一個重要特徵是工做流自始至終的可視化。最流行的展現方式是看板圖,它能夠採用物理或數字形式。
- 看板圖的思路是每一個任務由一張索引卡或即時貼表示,在看板圖左側的「積壓工做」(Backlog)分類下排隊。「積壓工做」和「完成」(Done)之間的欄目表明在途工做(WIP: Work In Progress)。
2.2服務器部署
- VMware發佈了Auto Deploy,對vSphere服務器的部署有很大的幫助。
- Red Hat 開發了CloudForms,該系統包括多平臺的服務器部署、配置管理(可與Chef和Puppet集成)、服務器生命期管理等。
- Michael DeHaan開發了Cobbler
- Nick Weaver推出了Razor
- Crowbar
- Foreman
2.3配置管理
- 配置管理(CM)技術能夠顯著地改善金映像構建和生產系統部署的速度和可靠性。當你把服務器配置當成軟件看待,就能夠利用Git等源代碼管理系統跟蹤環境變化。
- CM技術還能夠用於配給與生產服務器的配置徹底相符的一致開發環境。
- 本書介紹的CM技術—Puppet(Ch04-Ch06)、Chef(Ch07-Ch09)和PowerShell DSC(Ch12-Ch13)是描述性語言,你能夠描述配給資源的預期狀態,而不用擔憂工做是如何完成的。
- 配置管理的好處能夠經過使用Ansible(Ch10-Ch11)、Fabric、MCollective等編排系統大規模實現,這些系統用命令式的風格描述環境狀態。編排框架容許配置管理在多個系統上以受控方式並行執行。
2.4持續集成
Jenkins和相似的解決方案可能顯著地節省開發和運營團隊的時間。對於開發團隊,若是編寫了好的單元測試,它能夠在代碼移交給QA以前及早識別缺陷,對於運營團隊,可以更加確保他們不會在預演階段以前遇到未經驗證的代碼。框架
2.5日至分析
- 系統的成功必須是可計量的。驗證系統穩定性的最佳手段是什麼?觀察日誌!
- VMware vRealize Log Insight
- Splunk
- Logstash。它能與Elasticsearch(Ch17)、Graphite以及DevOps社區中流行的其餘工具相結合。
2.6小結
如今咱們已經簡單地概述了DevOps從業者可用的工具,第3章將聚焦於如何構建一個測試環境,以便跟蹤本書其他部分介紹的工做流。工具