純手工打造每一篇開源資訊與技術(shù)干貨获三,數(shù)十萬程序員和Linuxer已經(jīng)關(guān)注站楚。
導(dǎo)讀 | 運維需要思維的突破苹享,從Ops走向DevOps逢并,從項目走向產(chǎn)品东囚,從資源走向應(yīng)用跺嗽,很多問題一直在困擾、在思考页藻,為什么CMDB大部分項目都是失敗的?為什么討論的更多的是運維自動化而不是IT自動化?為什么線上問題永遠(yuǎn)是運維人的黑鍋?帶著這些問題我們來一探究竟桨嫁。 |
今天要和大家闡述一個新的思路——建立面向應(yīng)用的運維管理新思維,帶著這個思路去尋找運維新的解決方案份帐,因此把面向應(yīng)用管理抽象總結(jié)如下:
在ITIL時代璃吧,大家都知道一個概念,CMDB是IT服務(wù)系統(tǒng)的元數(shù)據(jù)中心废境,而現(xiàn)在應(yīng)用更應(yīng)該是CMDB的元數(shù)據(jù)畜挨。把運維的能力建立在面向應(yīng)用的維度上,把面向應(yīng)用的IT能力分成三部分:
CMDB即IT資源管理系統(tǒng)支撐一個應(yīng)用運行到底占用了哪些資源?應(yīng)用占用的服務(wù)器是一種資源噩凹、占用的內(nèi)存是一種資源朦促、占用的存儲是一種資源、占用的負(fù)載均衡是一種資源栓始。但大家一定要注意务冕,這個資源不是更多是一種后端服務(wù)出現(xiàn),比如說IaaS服務(wù)或者是PaaS服務(wù)幻赚。
動作應(yīng)用的變更有很多種場景禀忆,按照角色來歸類,比如說應(yīng)用交付落恼、應(yīng)用升級等場景箩退,這些場景是面向Dev/Test/Ops的。還有一種應(yīng)用在日常維護過程中的變更佳谦,面向純Ops場景的戴涝,比如說應(yīng)用的遷移、應(yīng)用的擴容。動作是作用于資源的啥刻,比如說應(yīng)用升級是版本發(fā)生變化奸鸯,應(yīng)用擴容是讓應(yīng)用的資源新增等等。過去的傳統(tǒng)式運維可帽,總是聚焦碎片式的運維自動化能力理解上娄涩。
狀態(tài)為了實現(xiàn)對應(yīng)用的健康狀況或者質(zhì)量的度量,我們需要采集各類狀態(tài)數(shù)據(jù)映跟,從而支撐各類場景的應(yīng)用蓄拣,比如說監(jiān)控故障發(fā)現(xiàn)的需求,故障恢復(fù)的需要努隙,應(yīng)用服務(wù)優(yōu)化的需要等等球恤。
CMDB建設(shè)的不成功,部分是系統(tǒng)的原因荸镊,但更多是方法論的問題碎捺。我們總以為找到了很強的驅(qū)動力來建設(shè)資源維護的流程和場景,其實這些都是自己的設(shè)想贷洲。數(shù)據(jù)中心的基礎(chǔ)設(shè)施部門統(tǒng)攬CMDB的一切配置建設(shè)和管理收厨,資源部門,根本不關(guān)心且沒法關(guān)心資源所關(guān)聯(lián)的上層應(yīng)用是什么优构。
因此我主張把CMDB建設(shè)分層建設(shè)诵叁,業(yè)務(wù)層和資源層CMDB可以分開建設(shè),但一定以應(yīng)用的CMDB建設(shè)為主钦椭,倒推資源層的CMDB建設(shè)完善拧额。以應(yīng)用為中心的IT資源生命周期管理建立起來之后,資源的廣度不斷拓寬自動化的深度彪腔。
但一定要注意CMDB的信息分成兩類侥锦,一類是實例信息,一類是連接信息德挣,也稱為拓?fù)湫畔⒐Э选M負(fù)湫畔⑿枰Y(jié)合我們平時的工作思路來建設(shè)和維護,比如說架構(gòu)視圖格嗅,是研發(fā)轉(zhuǎn)維的過程中番挺,必須要提供的輸入,就是應(yīng)用架構(gòu)文檔屯掖。部署視圖玄柏,是指這個應(yīng)用上線部署在哪些機房,哪些node贴铜》嗾基礎(chǔ)架構(gòu)拓?fù)涫俏锢韔verlay瀑晒,這個地方表達(dá)的是基礎(chǔ)設(shè)施層面的關(guān)系。業(yè)務(wù)流視圖分成應(yīng)用服務(wù)和端到端服務(wù)構(gòu)建的能力視圖徘意,類似訪問流拓?fù)洹?/span>
從應(yīng)用的角度苔悦,資源的信息都能夠很好的維護起來。此時就考慮如何支撐應(yīng)用的動作了映砖。這個場景起來之后间坐,真正能解決CMDB數(shù)據(jù)維護動力和價值問題灾挨。面向應(yīng)用的視角邑退,提供完整的應(yīng)用自動化和運維自動化能力。應(yīng)用自動化打通Dev/Test/Staging/Prod等環(huán)境劳澄,構(gòu)建面向用戶的端到端自動化能力地技。典型的場景就是交付流水線,示意圖如下:
可以把一個端到端的交付流水線秒拔,分成了四個標(biāo)準(zhǔn)化過程莫矗,縱向就分解了階段、環(huán)境砂缩、動作和角色等概念作谚。
階段是對交付階段的邏輯劃分,對于一個企業(yè)的某個產(chǎn)品來說庵芭,建設(shè)的標(biāo)準(zhǔn)是單一交付流水線妹懒,而不是多交付流水線,單一交付流水線才能保證整個交付過程的一致性双吆。一般分成研發(fā)眨唬、測試、預(yù)發(fā)布和生產(chǎn)運維階段好乐。
環(huán)境環(huán)境是以上四個階段的進(jìn)一步細(xì)分匾竿,在每一個階段會存在多環(huán)境的問題,比如說測試階段蔚万,有UAT環(huán)境岭妖、SIT環(huán)境;在生產(chǎn)階段,有正式生產(chǎn)集群反璃、有容災(zāi)備份集群等等区转。
動作交付的能力是動作來實現(xiàn)的,這個動作是一連串的能力編排版扩。這個動作可以分解成部署動作和附加動作废离。部署動作是完成一個環(huán)境部署的標(biāo)準(zhǔn)化過程,比如說初始化環(huán)境礁芦、安裝程序包等等蜻韭,附加動作是針對特定環(huán)境要完成的一些動作悼尾,比如說針對用戶接受性測試,可能會運行自動化測試等等肖方。部署動作要確保在各個環(huán)境之間的一致性闺魏,這是部署腳本的基本能力,避免動作行為異化導(dǎo)致結(jié)果不同俯画。
在動作層析桥,還可以面向封裝大量的自動化流程、工具能力等艰垂,這些能力都是滿足一切應(yīng)用場景的個性化泡仗。
角色誰來執(zhí)行這些動作,不同的環(huán)境可以面向不同的角色猜憎,這是權(quán)限的控制娩怎。通常分成開發(fā)、測試和運維角色胰柑,但真正到企業(yè)內(nèi)截亦,角色的劃分會細(xì)致的多;其次這個角色也是隨著管理模式變化而變化的,測試人員可能來做生產(chǎn)環(huán)境的部署。
這個自動化能力就不是運維自動化,而是IT自動化威鹿。IT自動化的平臺可以由運維來建設(shè),確比赐埃可擴展、插件化的能力卖鲤。擴展的能力肾扰,是能力可以延伸到不同角色的需要,插件化是可以集成不同角色過去的工具能力蛋逾,從而實現(xiàn)一個面向DevOps的應(yīng)用交付平臺集晚。
再回到運維自動化,在面向應(yīng)用的自動化場景上区匣,依然可以通過服務(wù)編排的模式來實現(xiàn)偷拔。但是回到其他運維資源上,就逐漸失去和應(yīng)用的關(guān)聯(lián)亏钩,從管理方便性的角度來說莲绰,更是如此了。舉個例子姑丑,比如說數(shù)據(jù)庫的維護蛤签,大家肯定都是喜歡對數(shù)據(jù)庫的實例進(jìn)行維護和變更,而不是再加一個應(yīng)用的維度栅哀。在面向Iaas和PaaS能力的自動化上震肮,可以面向資源進(jìn)行動作服務(wù)編排称龙,從而實現(xiàn)運維的自動化。
狀態(tài)其實是面向應(yīng)用的一種度量手段戳晌,度量越貼近應(yīng)用鲫尊,越貼近服務(wù),度量的有效性就越強沦偎。監(jiān)控手段是度量的一種疫向,大家很多時候把監(jiān)控的告警能力、發(fā)現(xiàn)問題作為核心手段豪嚎。但從這個維度出發(fā)搔驼,告警泛濫成為必然,大家不斷的去看提升告警的準(zhǔn)確性疙渣,做告警收斂和告警關(guān)聯(lián)匙奴。我們的做法是告警可視化分層面板堆巧,在時間這個維度上妄荔,把告警統(tǒng)一展示,面向應(yīng)用層的告警權(quán)重增大谍肤,底層的告警權(quán)重變小啦租,衡量應(yīng)用的健康狀況。其次在統(tǒng)一的看板上荒揣,人的思維會發(fā)生變化篷角,底層的告警能力會不斷形成決策參考數(shù)據(jù),而非當(dāng)成直接的問題系任,甚至可以告警一致恳蹲。這都是因為以應(yīng)用為中心,數(shù)據(jù)有了關(guān)聯(lián)所致俩滥。
面向應(yīng)用的運維管理新思維嘉蕾,是切實有效的,給過去的很多未解問題提供了解決方案霜旧,這也是我過去不斷強調(diào)要“建立以應(yīng)用運維+運維研發(fā)為核心的組織體系”的原因错忱。應(yīng)用的是貼近業(yè)務(wù)的,因此應(yīng)用是驅(qū)動力最強的挂据。
原文來自: http://os.51cto.com/art/201611/522832.htm
本文地址: http://www.linuxprobe.com/operation-maintenance-management.html編輯員:馮琪以清,審核員:楊鵬飛
《Linux就該這么學(xué)》是由資深運維專家劉遄及全國多名紅帽架構(gòu)師(RHCA)基于最新RHEL7系統(tǒng)共同編寫的高質(zhì)量Linux技術(shù)自學(xué)教程,極其適合用于Linux技術(shù)入門教程或講課輔助教材崎逃。
? 劉遄老師QQ:5604241
? 學(xué)員助教QQ:5604674
? Linux技術(shù)交流A群(滿):560843
? Linux技術(shù)交流B群:340829
? Linux技術(shù)交流C群:463590
? 官方站點:www.linuxprobe.com
? 電腦在線閱讀效果更佳:
http://www.linuxprobe.com/chapter-00.html
按住圖片3秒掷倔,即可自動關(guān)注。
點擊左下角查看更多熱門技術(shù)