開發(fā)者和IT運營團隊:如何應(yīng)對復(fù)雜的分布式應(yīng)用構(gòu)建挑戰(zhàn)

責(zé)任編輯:editor004

2015-02-26 23:40:55

摘自:51CTO

2014年真是令人興奮的一年,這一年里,云計算領(lǐng)域出現(xiàn)了一些新興技術(shù)和趨勢來塑造未來的IT。方自動化工具的問題是他們很難跟上硬件廠商不斷重構(gòu)、更新硬件版本、發(fā)布新產(chǎn)品、更新固件和管理軟件的步伐。

2014年真是令人興奮的一年,這一年里,云計算領(lǐng)域出現(xiàn)了一些新興技術(shù)和趨勢來塑造未來的IT。2014年底,軟件的整體依然呈增長趨勢。由于通用處理能力的增長、低成本的個人計算機設(shè)備和互聯(lián)網(wǎng)時代的到來,軟件現(xiàn)在幾乎無處不在。今天仍然面臨的最大挑戰(zhàn)是開發(fā)人員和IT運營團隊如何構(gòu)建復(fù)雜的分布式應(yīng)用,以及如何快速響應(yīng)快速變化的市場和客戶需求。容器化、混合云和融合式基礎(chǔ)架構(gòu)(converged infrastructure)正在迎接這一挑戰(zhàn)。

2015是Docker之年

有沒有想過,如果我們不使用VMWare會怎么辦?容器化可以方便打包和部署分布式應(yīng)用,這種創(chuàng)新大范圍滲透到IT行業(yè)的每個角落。Docker的興起和普及是因為它能提供一種一致性機制來構(gòu)建、部署和擴展應(yīng)用組件并隔離系統(tǒng)資源。為了持續(xù)集成并部署基礎(chǔ)設(shè)施,Docker可以輕松管理應(yīng)用依賴以及配置。

Docker 顛覆操作系統(tǒng)

2014年末,CoreOS宣告推出其自主的容器技術(shù),命名為Rocket。Rocket是基于分布式設(shè)計的一種用于在規(guī)模上簡化容器部署的極簡操作系統(tǒng)。從DockerCon以及二者的爭論中我們可以確定:Docker和CoreOS徹底分道揚鑣了。兩個開源公司都在爭奪同樣的用戶群,因為,沒有一個運營平臺,Docker容器的最終僅僅只是一個開發(fā)工具。對于新興技術(shù)來說有競爭總是好的,我們現(xiàn)在有兩匹馬在競賽。在這場比賽中Docker毫無疑問的領(lǐng)導(dǎo)者,它在開源社區(qū)、媒體宣傳、合作伙伴合作等領(lǐng)域擁有更大的份額。CoreOS作為軟件包在任何Linux中都能有效分發(fā),它是一個獨立的操作系統(tǒng),這是CoreOS和Docker最大的區(qū)別。這意味著,除了Docker,CoreOS的競爭目標(biāo)已包括微軟、VMWare、RedHat、Ubuntu這些行業(yè)巨頭,而這四個老牌巨頭也正恰好是Docker的重要合作伙伴。與此同時,Ubuntu和RedHat在兩個新項目(Ubuntu Core和Atomic)通過引入一些類似CoreOS功能作為他們的第一步反擊,而微軟宣布在Windows Server的未來版本將原生支持Docker容器。

Docker顛覆PaaS(平臺即服務(wù))

2014年底更大的新聞是Docker宣布在DockerCon支持多容器編排分布式應(yīng)用,引進Docker Swarm和Docker Compose。Docker Swarm是一個Docker主機集群系統(tǒng),提供主機的基本發(fā)現(xiàn)和Docker容器在主機內(nèi)的調(diào)度。Docker Compose提供一個簡單的基于YAML配置語言,用于描述和組裝多容器的分布式應(yīng)用和明確Fig的作用。這意味著未來用于PaaS相當(dāng)明朗。

Cloud Foundry, OpenShift和ActiveState公司都迅速采取行動基本支持Docker容器。對大型企業(yè)來說PaaS平臺有很多有價值的安全和多租戶性能。但隨著自身容器編排,Docker能提供部署分布式應(yīng)用基于以開發(fā)人員為核心"git push"的用戶體驗,它是一種比部署一個完全成熟的PaaS平臺更簡單的部署方式。把PaaS的開發(fā)放在首位的公司,對其來說用戶體驗是主要動力。

因為Docker Swarm和Docker Compose仍處于alpha版,所以目前來說功能還略顯簡單。

Docker顛覆虛擬化、私有云、配置管理

多年來,虛擬機鏡像已成為用于打包和部署分布式應(yīng)用的實際機制。從IT操作角度來看,虛擬機提供一流的資源隔離、安全性和穩(wěn)定性。但是,虛擬機也需要完全管理完整的操作系統(tǒng)實例,其每個實例都有自己的存儲空間和網(wǎng)絡(luò)設(shè)置,依賴項和系統(tǒng)環(huán)境配置。虛擬機鏡像實際是大而沉重的文件系統(tǒng)。一旦部署,因為一次次的修改軟件,腳本和人們用以適應(yīng)這樣那樣的需求,虛擬機往往從原生的原始狀態(tài)開始“飄移”。事實上,管理的虛擬服務(wù)爆發(fā)式的增長,即所謂“虛擬機蔓延”問題,這個問題需要配置管理。目前已有解決該問題的配置管理系統(tǒng)如Chef、Puppet、Ansible和Salt,它們已成為系統(tǒng)管理的基本工具。目前還不清楚的是開發(fā)者職責(zé)結(jié)束和系統(tǒng)管理員的責(zé)任開始于一個虛擬機,它們之間節(jié)點在哪,經(jīng)常發(fā)生通過“all hands on deck”(譯者注:英語流行語。在本文中大意為集中所有能力去解決突發(fā)情況。GTA5 里有個任務(wù)名為all hands on deck^-^)式的經(jīng)驗來排除故障。

你可能聽說過容器和虛擬化是完全免費的-這是真實的。無論怎樣,容器有較少的性能開銷,資源利用更高效,更快的部署一個完整虛擬機。容器與虛擬機相比更重要的優(yōu)勢是,基于軟件定義(它是基于元數(shù)據(jù)和其指定組合創(chuàng)建)。總之,這些特性開啟了一個強大的分布式應(yīng)用管理模式-不變的基礎(chǔ)設(shè)施。在不變的基礎(chǔ)設(shè)施建設(shè)中,極簡操作系統(tǒng)包含自動發(fā)現(xiàn)、配置和自動化分配容器鏡像分配。容器在需要時被創(chuàng)建,在不再需要時卸載。IT和開發(fā)團隊之間的責(zé)任劃分明確,IT運行裝載容器,開發(fā)運行容器。在2015年,我們將開始看到許多開始嘗鮮的基于全自動化容器架構(gòu)的私有云產(chǎn)品。

然而相對于這些優(yōu)勢,IT將繼續(xù)爭取虛擬機管理的未來。有許多好的理由,其中有很多如傳統(tǒng)應(yīng)用程序和多租戶。所以在容器獲得主導(dǎo)地位的數(shù)年時間內(nèi),將會有(主要是傳統(tǒng)的)應(yīng)用程序,與容器之間存在兼容問題而不能運行。

Docker顛覆IaaS(基礎(chǔ)設(shè)施即服務(wù))

一些云服務(wù)供應(yīng)商已提供適應(yīng)承載Docker容器的基礎(chǔ)系統(tǒng)鏡像,但他們其仍需要提供快速遷移工具使其更易于管理。Amazon推出Elastic Beanstalk支持Docker,谷歌已有容器引擎CCP,CenturyLink推出了Panamax,數(shù)字海洋已用CoreOS作為基礎(chǔ)鏡像。預(yù)計在2015年我們將在這些供應(yīng)商中看到一個全新的基于容器中心的API和云服務(wù)出現(xiàn)。

混合云

因硬件的更新周期再加上IT服務(wù)更靈活的需求,大型企業(yè)要認真審視混合云架構(gòu)。許多企業(yè)正在繼續(xù)早已過時的基礎(chǔ)設(shè)施建設(shè)計劃,在過去幾個月和我交流過的幾乎每個IT領(lǐng)導(dǎo)者都希望公有云作為其整體IT戰(zhàn)略的一部分。壞消息是IT團隊仍然受一長串環(huán)境限制,如傳統(tǒng)基礎(chǔ)設(shè)施,監(jiān)管及合規(guī)問題及安全問題。這或多或少成為未來幾年公有云在企業(yè)中應(yīng)用推進的障礙。

加入管理多個云和外包關(guān)系的列表,以及鑒于云之間遷移工作負載和數(shù)據(jù)的難度和復(fù)雜性,這很容易理解為何企業(yè)去花大量時間去混合。對于混合云的這種特點,這種復(fù)雜性可能最終促使企業(yè)通過云服務(wù)供應(yīng)商或市場中獲得云服務(wù),其提供單一用戶管理多個云的工具。當(dāng)前混合云在開發(fā)和測試用例領(lǐng)域仍然占主導(dǎo)地位,并且在2015年繼續(xù)延續(xù)現(xiàn)在的情況。
自動化

自動化大概是我在2014年下半年從IT專業(yè)人員和行業(yè)引領(lǐng)者口中聽到重復(fù)次數(shù)最多的詞匯,它已經(jīng)為它的用戶群實現(xiàn)了開啟自服務(wù)的目標(biāo)。企業(yè)頂著預(yù)算壓力下不斷的努力擴大IT業(yè)務(wù)。解決這個問題的最好方式是通過自動化實現(xiàn)更少的人做更多的工作。我最近常講持續(xù)集成(CI)和部署在研發(fā)和運營團隊中非常流行的一個共同目標(biāo)。在Docker中,也有類似像Shippable一類非常好的工具發(fā)揮容器化的優(yōu)勢。

在2015年,我預(yù)計我們將看到像一些自動化框架,如Puppet,Chef,Salt和Ansible,它們開發(fā)完善功能來解決像裸機編排這一困難任務(wù)(這些框架中已經(jīng)有一些有這方面的一些功能)。我們稱這個任務(wù)是基礎(chǔ)設(shè)施的“準(zhǔn)備態(tài)”,這是在首次硬件配置后可以接受工作負載的基礎(chǔ)設(shè)施的第一時刻。

第三方自動化工具的問題是他們很難跟上硬件廠商不斷重構(gòu)、更新硬件版本、發(fā)布新產(chǎn)品、更新固件和管理軟件的步伐。歸根結(jié)底,最有可能是硬件廠商自己將提供優(yōu)化的自動化編排。

這給我們帶來了我們的最后一個重要的顛覆的趨勢,融合基礎(chǔ)設(shè)施:

融合基礎(chǔ)設(shè)施

只要IT支持企業(yè)業(yè)務(wù)還存在,IT部門的主要職能是評估、收購、整合不同的軟硬件來構(gòu)造業(yè)務(wù)系統(tǒng)。而且,鑒于PC時代的經(jīng)驗,硬件廠商選型一直是設(shè)計的主要考慮因素。隨著網(wǎng)絡(luò)規(guī)?;募軜?gòu)已經(jīng)成熟和為人所熟知,包括虛擬化技術(shù)的出現(xiàn)(包括容器化),IT作為硬件集成商的日子即將結(jié)束。任何類型的虛擬化意味著IT團隊可以減少硬件廠商選型的風(fēng)險,因為他們可以迅速重新部署這些系統(tǒng)而無需停機。如前所述,現(xiàn)代化的IT團隊的側(cè)重點將主要關(guān)注創(chuàng)建和維護軟件。必須快速采取行動,以客戶和市場為導(dǎo)向,快速反應(yīng)意味著比曾經(jīng)更少的準(zhǔn)備時間。如果部署前置基礎(chǔ)設(shè)施比樂高玩具還簡單?

融合基礎(chǔ)設(shè)施或Gartner公司所稱“基于機架的計算”,是本文所討論的一些發(fā)展趨勢的必然成果。融合系統(tǒng)幫助普通企業(yè)構(gòu)造基于網(wǎng)絡(luò)規(guī)?;幕A(chǔ)設(shè)施,提供預(yù)集成的計算、網(wǎng)絡(luò)、存儲和虛擬化。對內(nèi)部IT以及服務(wù)提供者來說,融合基礎(chǔ)設(shè)施在未來十幾年的發(fā)展可能是令人興奮的。早在2007年,我加入的一個年輕的狂熱的初創(chuàng)組織3LeafSystems創(chuàng)造了一個融合的網(wǎng)絡(luò)、存儲和計算架構(gòu)。這正是這些技術(shù)趨勢能如期實際應(yīng)用的一個很好的實例。

當(dāng)今,在這一領(lǐng)域每一個重要的硬件廠商都有業(yè)務(wù)融合線,同時有一批初創(chuàng)公司也做的非常好(比如Nutanix)。在2015年,因下一代系統(tǒng)開始進入市場,在這方面我們可以看到很多廠商的動作。

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號