運(yùn)維與持續(xù)交付
運(yùn)維與持續(xù)交付
在互聯(lián)網(wǎng)的產(chǎn)品開發(fā)時(shí)代,產(chǎn)品迭代越來越頻繁,“從功能開發(fā)完成直到成功部署”這一階段被稱為軟件開發(fā)“***一公里”。
一個(gè)團(tuán)隊(duì)工程技術(shù)水平高低,直接反映在部署代碼上。我碰到其他公司的人,都喜歡問你們?cè)趺床渴鸫a的,非常大開眼界。你很難相信,很多(有一定規(guī)模的)公司仍然是人肉 SSH 到十幾、二十臺(tái)機(jī)器上 git pull、手動(dòng)重啟服務(wù)器,部署一次代碼幾個(gè)小時(shí) -- 這么原始,活該加班:)
持續(xù)部署(continuous deployment)是通過自動(dòng)化的構(gòu)建、測(cè)試和部署循環(huán)來快速交付高質(zhì)量的產(chǎn)品。某種程度上代表了一個(gè)開發(fā)團(tuán)隊(duì)工程化的程度,畢竟快速運(yùn)轉(zhuǎn)的互聯(lián)網(wǎng)公司人力成本會(huì)高于機(jī)器,投資機(jī)器優(yōu)化開發(fā)流程化相對(duì)也提高了人的效率,讓 engineering productivity ***化。
持續(xù)部署成功的要點(diǎn)
一個(gè)持續(xù)集成 & 持續(xù)部署的自動(dòng)化系統(tǒng)并不是那么簡單的事,如果不選用其他 CI 服務(wù),其開發(fā)工作量和一個(gè)標(biāo)準(zhǔn)的大型互聯(lián)網(wǎng)業(yè)務(wù)系統(tǒng)沒什么兩樣。如果沒有持續(xù)部署的經(jīng)驗(yàn),要想成功地進(jìn)行持續(xù)部署要注意這些:
充分而廣泛的自動(dòng)化測(cè)試覆蓋;
盡可能短的測(cè)試反饋時(shí)間;
部署過程自動(dòng)化;
部署過程要保證數(shù)據(jù)安全;
在穩(wěn)定的前提下,盡早部署;
完善的風(fēng)險(xiǎn)緩解措施;
將同樣的產(chǎn)物部署到不同的環(huán)境中
持續(xù)交付能力成熟度模型
持續(xù)交付的運(yùn)維觀
1、持續(xù)接收到持續(xù)交付,運(yùn)維的核心轉(zhuǎn)變
2、運(yùn)維掌握了***的持續(xù)交付切入點(diǎn):CMDB和持續(xù)交付
3、交付的最終評(píng)價(jià):質(zhì)量、效率、成本
4、持續(xù)交付是打破部門墻的核心實(shí)踐
5、持續(xù)交付的本質(zhì):標(biāo)準(zhǔn)化+平臺(tái)化+服務(wù)及面向用戶的價(jià)值
6、基于交付鏈(Dev/Test/Ops)的全局優(yōu)化,而非局部(Ops)優(yōu)化
7、運(yùn)維的問題不是僅僅運(yùn)維側(cè)的問題,是一個(gè)IT問題
8、運(yùn)維離用戶最近,你代表用戶,就有***的驅(qū)動(dòng)力
9、跨界由此而生