Chengwei Chen
Jul 30, 2018 · 5 min read
書籍-banne
(本文授權 DevOpsDays Taipei 2018 及天瓏網路書店全文轉載)

自 2009 年 DevOps 一詞面世以來,如今談到 DevOps 時,經常會發生的一種狀況是「人們彼此談論的 DevOps 並不是相同的一回事」。這是因為隨著時間的推進,各方人馬紛紛為 DevOps 添加了不同的詮釋與定義,這現象令人一則以喜一則以憂,喜的是我們能夠看見 DevOps 從最初微小的「社群」開始發跡,最終延燒成為全世界共同響應的一場「運動」,DevOps 的重要性已不容小覷;憂的是,當 DevOps 成為每個人皆能琅琅上口談上兩句的 buzzword 時,是否已漸漸遠離它最初的根本精神。

無論如何,如今在與他人談論 DevOps 之前,恐怕我們要先與對方確認接下來談論的內容是落在哪些範圍之內,是要討論 DevOps 的定義、歷史、運動、職務、認證、工具、實踐、方法、原則或價值觀,如此才能避免彼此陷入雞同鴨講的狀況。

Image for post

在這樣的窘境之下,究竟我們該如何全面性的認識 DevOps?有沒有什麼懶人包或便捷的資源可以幫助我們快速的一窺 DevOps 到底是什麼、又與哪些觀念、原則、工具或關鍵字相關?也許各位不妨可以參考看看由「机械工业出版社」出版的《DevOps:原理、方法与实践》

一本點到為止的 DevOps 教科書

《DevOps:原理、方法与实践》是由中國「机械工业出版社」所出版的 DevOps 入門書籍,如果要用一句話來形容它,我們可以說它是一本點到為止的 DevOps 教科書。

本書的架構如下:

  • 第 1 章 DevOps 概述
  • 第 2 章 雲時代的維運 (Ops)
  • 第 3 章 軟體架構演進
  • 第 4 章 軟體開發過程和方法
  • 第 5 章 精益 (Lean) 思想和看板方法
  • 第 6 章 微服務軟體架構
  • 第 7 章 容器 (Container) 技術基礎
  • 第 8 章 基於容器技術的 DevOps 實踐
  • 第 9 章 DevOps 工具集

全書共九章,可以明顯看出作者們嘗試要在書中涵蓋 DevOps 的各個層面。書中除了基本的 DevOps 概述,簡介了 DevOps 從工具、實踐、方法、原則至價值觀的各面向之外,也個別透過一整個章節篇幅說明維運、軟體架構、軟體開發方法因應這時代所產生的演變,並且介紹藏在 DevOps 背後非常重要的 Lean 精神;另外在工具與實務層面則介紹了 Container 與 Microservices 這兩項在現今的 DevOps 實踐中,有著密切關係的重要技術及架構。

每個章節的篇幅皆不多,分別在各約 20 頁的有限篇幅中快速介紹該章節之關鍵重點,因此本書僅能初略介紹各關鍵字的相關內容。另外,在每個章節,作者們皆會提供「思考題」,幫助讀者複習、思考書中提及的內容,加強對於內容的理解與吸收;如欲更加深入認識書中提及之內容,各章節也同樣附有大量的「參考文獻」幫助讀者能夠進一步的深入學習。

我個人最喜歡這本書的部分是第 1 章「DevOps 概述」,特別是其中關於「什麼是 DevOps?」的內容,作者嘗試用歷史、價值觀、原則、方法、實踐及工具這六個面向來切入介紹 DevOps。我認為這種介紹方式有助於讀者能夠更全面的認識與思考到底 DevOps 涉及哪些層面,同時也能幫助讀者將 DevOps 與更多其他的關鍵字連結,以更全面的視野認識 DevOps。

最後,做一點平衡報導,雖然這是一本「點到為止的 DevOps 教科書」,內容看似全面但仍有不足需要另外補強之處,包含:

  • 內容主要環繞「狹義的 DevOps」,即從 Dev 至 Ops 的範圍;書中較少提及「廣義的 DevOps」,即除了 Dev 至 Ops 之外,企業組織的其他部門與專業領域。
  • 「文化」層面的內容,僅只在「DevOps 價值觀」有稍微提及,這部分可能要另外從 Agile 相關書籍或參考《Effective DevOps》來補足。
  • 雖然書籍結構規劃的不錯,但各章節實際內容的連貫性較為不足,需要額外的資料與說明來補足其中的關聯性。
  • 在「容器技術基礎」的章節,僅以 Docker 為主要案例,並太快切入「技術細節」的內容。

小結

如前言所述,已經在 DevOps 圈內打滾的人們在遇到他人詢問「What is DevOps?」時,經常會陷入一陣窘境,不知該從何切入或不知該講多講少,甚至更慘的是,很可能自己在說明講述的同時,隔壁還會臨時亂入另一位 DevOps 專家,提出跟你相似但不太一樣的見解。

同理,在 DevOps 已成為新顯學的情況下,學界的教師又該如何向學生教授「What is DevOps?」,課程教材該如何編撰?教材又要涉及多廣多深呢?

如果您也有以上的「症狀」,這本《DevOps:原理、方法与实践》或許能成為您的一帖藥方,不妨直接購買一本《DevOps:原理、方法与实践》當作解答丟給對方吧!當對方根據書中內容而產生更多的疑問時,再適時地根據他的需求給予更多的解答與延伸閱讀。或者你也可以參考本書的結構,以此為基礎,再延伸建構一份屬於你自己的 DevOps 知識體系。


聽說現在都要鼓勵讀者「鼓掌」,所以只好繼續如法炮製,如果您喜歡本文,歡迎多多給予我掌聲,讓我知道本文有為這個世界貢獻了一些價值,謝謝大家!

Chengwei Chen

Written by

表面上是只會釋放閃光文的愛妻家,私底下其實是默默關注新知的技術愛好者。平時熱衷研究維運及自動化相關技術,目標是未來可以像畢凱艦長一樣用嘴巴叫所有主機做事! 目前為 DevOps Taiwan 社群志工以及 DevOpsDays Taipei 其中一位 Organizer。https://chengweichen.com

Chengwei Chen

Written by

表面上是只會釋放閃光文的愛妻家,私底下其實是默默關注新知的技術愛好者。平時熱衷研究維運及自動化相關技術,目標是未來可以像畢凱艦長一樣用嘴巴叫所有主機做事! 目前為 DevOps Taiwan 社群志工以及 DevOpsDays Taipei 其中一位 Organizer。https://chengweichen.com

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store