處事力培訓素材(24):三大神器之三 – DevOps 運營管理

Devops-Tool

DevOps 的意思就是 Development & Operation 開發與運營的無縫銜接。

聽起來頗抽象。DevOps 這名詞第一次出現約為 2009 年。它是包含著技術開發一路下來發展出來的工具群,和它們所解決的問題。包括:

  1. Integration Hell 代碼整合地獄:例如未有 git / svn 之前,同一項目的多位工程師的代碼,到整合的時候,會構成嚴重的整合難題;整合也花上很長時間。
  2. Pending Code:累積大量沒有實際上線運行的代碼。沒有上線,就沒有在生產環境上驗證。
  3. Uptime 上線維護成本極高:以前的標準是 99.9%。現在一般都是六式碼 (6 sigma) 99.99966%。要保證有此水準的在線服務率,要有非常好的回復和後備計劃,甚至自動化。
  4. 設施管理或部署成本極高
  5. 服務器監察成本極高
  6. 系統和產品診斷極難

而在 DevOps 裡,這些都被一些工具群所解決了。例如參考 AWS 和坊間的一些服務:

Integration Hell
Pending Code

CI / CD

Uptime維護
自動設施管理或部署

Multi-AZ
CloudFormation / Infrastructure As Code IaC
Docker / Containerization

服務器監察成本極高

CloudWatch
CloudTrail

系統和產品診斷極難

Crashlytics
Analytics / Firebase
Feedback Systems

CI / CD 是 DevOps 群裡的其中一個重要概念。全寫是 Continuous Integration & Continous Delivery & Deployment 持續性整合與持續性部署。

Continuous Integration

1. 漸進式加入代碼
2. 自動化測試 / Regression Test

Continuous Delivery

CI → 一鍵部署到生產環境

Continuous Deployment

CI → 自動部署到生產環境

 

發表留言