容器技術(shù)之所以能夠快速崛起,發(fā)展成為云計(jì)算領(lǐng)域最熱門的技術(shù),最大的法寶就是它標(biāo)準(zhǔn)化了云的交付件。過去,應(yīng)用軟件的存在形式是一個(gè)大而全的整體,而在容器的世界里,應(yīng)用軟件是根據(jù)業(yè)務(wù)邏輯切分成不同的模塊,然后封裝成容器的形式存在。
容器——應(yīng)用的標(biāo)準(zhǔn)交付件
這是一個(gè) IT 方法論的變革,它將應(yīng)用軟件生產(chǎn)和運(yùn)維的方式標(biāo)準(zhǔn)化和模塊化,而標(biāo)準(zhǔn)化和模塊化往往意味著高效。無論是在軟件交付之前的研發(fā)過程,還是軟件交付之后的運(yùn)維管理過程,標(biāo)準(zhǔn)化的交付件為企業(yè)帶來的價(jià)值是非常巨大的。正因?yàn)槿绱?,有人認(rèn)為容器技術(shù)開啟了應(yīng)用軟件的工業(yè) 4.0 時(shí)代。
如果把企業(yè) IT 劃分為兩個(gè)階段——應(yīng)用交付前和交付后,那么,容器給企業(yè) IT 轉(zhuǎn)型帶來的能力主要體現(xiàn)在兩個(gè)方面:交付前的快速交付和持續(xù)創(chuàng)新能力,以及交付后的高效管理和運(yùn)維能力。
IT交付新能力——提升迭代效率
在「互聯(lián)網(wǎng)+金融」的趨勢(shì)下,金融 IT 變革的一個(gè)最大挑戰(zhàn)就是如何實(shí)現(xiàn)快速迭代,從而快速響應(yīng)用戶需求,這也是衡量一個(gè)企業(yè)互聯(lián)網(wǎng)化的最重要的指標(biāo)。然而,傳統(tǒng)的軟件開發(fā)模式已經(jīng)成為企業(yè)產(chǎn)品迭代速度的瓶頸。傳統(tǒng)開發(fā)模式中,開發(fā)、測(cè)試、運(yùn)維人員被分割成獨(dú)立的階段,每個(gè)階段分別交付不同的內(nèi)容,開發(fā)人員交付代碼、測(cè)試人員交付測(cè)試包,運(yùn)維人員部署運(yùn)行環(huán)境,在這樣的協(xié)作方式下,已經(jīng)無法滿足「互聯(lián)網(wǎng)+」趨勢(shì)對(duì)于快速迭代的需求。并且,由于開發(fā)測(cè)試環(huán)境和生產(chǎn)環(huán)境不一致,無法進(jìn)行統(tǒng)一管理,存在安全隱患。
開源應(yīng)用容器引擎Docker 的出現(xiàn)打破了傳統(tǒng)軟件交付模式的桎梏,為快速迭代帶來了全新的思路。Docker 容器技術(shù)統(tǒng)一了云的交付件,無論是開發(fā)、測(cè)試、還是運(yùn)維人員都交付容器鏡像,都基于鏡像倉庫進(jìn)行協(xié)作。交付前開發(fā)人員需要完成迭代和移交鏡像和鏡像構(gòu)建的過程,交付后運(yùn)維團(tuán)隊(duì)負(fù)責(zé)鏡像容器的編排和運(yùn)行。這樣就讓整個(gè)開發(fā)過程做到了統(tǒng)一,容器成為了應(yīng)用交互的一個(gè)標(biāo)準(zhǔn)交付件。不僅可以大大提升軟件交付和迭代效率,還能避免因交付內(nèi)容不同導(dǎo)致的人為錯(cuò)誤。
IT架構(gòu)新能力——混合云+微服務(wù)架構(gòu)
在「煙囪式」IT架構(gòu)向混合云架構(gòu)的轉(zhuǎn)型過程中,有兩個(gè)關(guān)鍵點(diǎn):一方面,應(yīng)用架構(gòu)由大而全的整體架構(gòu)向靈活的微服務(wù)架構(gòu)轉(zhuǎn)變;另一方面,計(jì)算資源由專用計(jì)算資源向分布式架構(gòu)轉(zhuǎn)變。
以 Docker 為代表的容器技術(shù)的出現(xiàn),為煙囪式 IT 架構(gòu)向混合云架構(gòu)轉(zhuǎn)型提供了堪稱完美的解決方案。首先,Docker 為微服務(wù)架構(gòu)的實(shí)現(xiàn)注入了新的活力。微服務(wù)架構(gòu)本身非常多樣化,切分完成后,每個(gè)模塊都可以由不同的團(tuán)隊(duì)來維護(hù),也可以用不同的編程語言來編寫,這會(huì)加大系統(tǒng)運(yùn)維的難度。但是 Docker 容器將這些模塊封裝成統(tǒng)一的容器鏡像,這使得平臺(tái)的自動(dòng)化運(yùn)維變得簡單。同時(shí),應(yīng)用以容器鏡像的形式存在以后,可以非常容易地進(jìn)行大規(guī)模分布式系統(tǒng)部署和運(yùn)維,為計(jì)算資源由過去的專用資源向分布式架構(gòu)轉(zhuǎn)型提供基礎(chǔ)。
IT運(yùn)維新能力——高可用性
高可用性是金融行業(yè) IT 運(yùn)維的一個(gè)永恒的話題。在「互聯(lián)網(wǎng)+金融」的趨勢(shì)下,用戶體驗(yàn)至關(guān)重要,其中一個(gè)非常重要的指標(biāo)就是服務(wù)的高可用性。如何實(shí)現(xiàn)復(fù)雜 IT 環(huán)境下的高可用性是「互聯(lián)網(wǎng)+金融」趨勢(shì)下金融 IT 變革的又一個(gè)重大課題。
互聯(lián)網(wǎng) IT 運(yùn)維的核心觀點(diǎn)是——任何一個(gè) IT 系統(tǒng)都有可能是不可靠的,因此,運(yùn)維的關(guān)鍵就變成如何從分布式系統(tǒng)的管理軟件層面去確保系統(tǒng)的連續(xù)性和高可用性。容器的輕量級(jí)特性和秒級(jí)啟動(dòng)能力為金融 IT 的運(yùn)維帶來了新的思路。由于容器本身非常輕量級(jí),具有秒級(jí)啟動(dòng)的能力,因此,在分布式系統(tǒng)中的任意一個(gè)容器出現(xiàn)問題,可以立即秒級(jí)啟動(dòng)另一個(gè)容器,從而確保整個(gè)系統(tǒng)的連續(xù)性和高可用性。正因?yàn)槿绱耍萜饕脖环Q之為「魂器」。