導讀:阿裡巴巴DevOps轉型之後,運維平臺是如何建設的?阿裡巴巴高級技術專家陳喻結合運維自身的理解,業務場景的分析和業界方法論的一些思考,得出來一些最佳實踐分享給大家。 前言 “我是這個應用的 Owner”是阿裡巴巴DevOps轉型的重要策略,運維有了這個策略以後,PE大量的日常工作就可以釋放出來 ...
導讀:阿裡巴巴DevOps轉型之後,運維平臺是如何建設的?阿裡巴巴高級技術專家陳喻結合運維自身的理解,業務場景的分析和業界方法論的一些思考,得出來一些最佳實踐分享給大家。 前言 “我是這個應用的 Owner”是阿裡巴巴DevOps轉型的重要策略,運維有了這個策略以後,PE大量的日常工作就可以釋放出來,會有更多的時間去思考沉澱,去做編碼,去做以前不曾做的事情。 運維的三個階段 第一階段:黑屏,三角形是代表整個運維給用戶的一些體感或者給研發的體感,人工運維,目前很多企業可能還是這樣。 第二階段:白屏,自動化運維,以前把腳本做成工具去弄,有什麼特征,人push機器去幹活,自助運維。 第三階段:用戶對運維體感很少,但是運維這個領域是不變的。最重要的是人機交互變少了,無屏雖說是不可能的,非常極端,但是個趨勢,少量的人機交互,它有自決策、自驅動。 自動化運維基礎 做自動化運維,我認為有四大基礎。 第一:運維標準與規範 我們的標準有什麼好處,讓研發 follow 這個標準,標準會在工具里固化。 第二:泛監控,運行時,靜態,數據化,可視化 泛監控,不是說傳統的監控,是把線上想知道的一切都數據化,最終數據不是給人看的,是給機器去消費的,數據是我們的生產資料,不是可視化,那不是我們的目標。 第三:CMDB 1.CMDB 應該放什麼,一般放伺服器相關的、網路相關的、應用相關的這三個維度的相關信息。 2.經常有人會說 CMDB 不准,數據不准是因為沒有把數據生產和數據消費形成閉環,如果形成了閉環數據不准,那是因為你不用這個數據,所以不准。 第四:高效的CI/CD/CD 我們一定要具備快速的交付能力,主要體現這兩個方面:第一,新開發的能力能不能快速上線,第二,想擴容一臺機器能不能快速擴出來。這兩個能力抽象出來是三塊。
- 持續集成(CI),很多人說持續集成工具不好用,效率低,其實持續集成的本質是要自動化測試。如果研發部不具備自動化測試的能力,持續集成怎麼做都是失敗的。
- 持續集成里最重要的一點就是要推行單元測試、集成測試還有系統測試,單測是保證自己沒問題,集成測試是保證跟上下游沒問題,系統測試是保證整個系統沒問題。
- 持續交付(CD),有很多人說持續交付本質是一個 Pipeline,CI的目標是什麼?快速正確打一個包出來。CD的目標是什麼?能夠快速把一個包在不同的環境驗證它是ok的,可以放到線上去,這就是持續交付要乾的事。持續交付里很關鍵的一點我們要解決,就是它的環境一致性、配置一致性。環境一致性可以用Docker解決,Docker 本身就是一種標準化的東西。所以說第一條用 Docker,肯定是標準化的,另外一個問題,配置是不是一致性,是不是動靜分離。
- 持續部署(CD),是一種能力,這種能力非常重要,就是把一個包快速部署在你想要的地方。
嘉賓介紹 陳喻(亞松),阿裡巴巴高級技術專家。2014年入職阿裡負責持續集成持續交付平臺研發團隊,2015年調入運維團隊,負責交易運維、無線運維2個團隊,帶領團隊保障日常運維及雙11大促運維。2016年開始負責Sigma彈性&資源運營團隊,主要領域為集群彈性,應用彈性,資源運營,規模化運維,支撐雙11,在2016,2017連續2年獲得雙11卓越貢獻獎。 閱讀原文