2012年10月28日 星期日

[DevOps] Continuous delivery - tools and techniques


圖片來源:功夫

快~快~快,大量閱讀,快速學習,似乎已經是資訊產業的常態 (變態) ? 看越多書和資料就越是覺得要學的東西學不完,於是也越來越焦慮,不過追根究柢就是自己基礎功不夠扎實(內功沒練好),另外就是不夠專注吧,每一塊都想要碰,沒有個定性,所以才會落的如此下場 (囧rz....)。

那我今天要焦慮的主題是什麼呢?就是關於DevOps這個範疇,如果要號稱自己是在搞 Cloud computing 的,而且又有在實行敏捷是開發,那一定要知道什麼是DevOps ,也一定要知道所謂的 Continuous Integration / Delivery / Deployment。 因為這些方法與工具的目的就是:
  • 提高品質
  • 降低Cycle time
而所謂降低Cycle time 就是在幫忙加快速度,不管是開發速度,更新速度,實驗的速度,最終的目標就是加快找到你的MVP (加快賺錢速度,趕快停止燒錢),這其實也就是Lean的精神。

就我的認知DevOps所包含的範圍大概如下圖所示,如果單看傳統的Dev 和傳統的Ops 也許會有一些地方有重複。

圖片來源:自行繪製

下面列出來的就是整個DevOps 所需要用到的工具和要注意到的環節 (主要是列出來的是以Java Solution 為主),看到這些東西是感到興奮還是胃痛呢?XD

我覺得Dev的部份每一個項目至少要熟悉一種工具才能稱得上是稱職的Java Developer,遙想當年每個項目與工具都只能慢慢摸索出來,在沒有人帶的狀況下走了許多冤枉路,同樣的現在我覺得自己目前需要補強的就是Ops 這一塊的經驗與能力。


要列下去是沒完沒了....有沒有人要分享一下還有什麼該學習的技術和工具呢?:P


Reference:
[0] Continuous delivery tools and techniques
[1] The unsexy side of big data: 5 tools to manage your Hadoop cluster
[2] WhosCall

張貼留言