應對 Docker 網(wǎng)絡功能難題的挑戰(zhàn)與思考
譯文【51CTO.com快譯】盡管圍繞容器技術(shù)出現(xiàn)的炒作新聞隨處可見,但這項應用程序打包技術(shù)方案也確實一直在不斷演變,特別是在網(wǎng)絡功能層面。
在過去一年當中,Docker容器方案中的網(wǎng)絡功能已經(jīng)迎來了一系列長足進步。與此同時,Docker還建立起一套插入架構(gòu),允許開發(fā)者將更多先進網(wǎng)絡管理工具引入進來以實現(xiàn)容器控制。
而在另一方面,多家初創(chuàng)企業(yè)亦開始著手打造定制化容器管理平臺,而以思科與VMware為代表的各傳統(tǒng)廠商也開始將容器控制能力添加到自有網(wǎng)絡管理工具當中。因此,早期出現(xiàn)的各類容器網(wǎng)絡難題已經(jīng)開始得到解決,不過必須承認、我們距離理想的最終目標仍有很長的道路要走。
基礎性挑戰(zhàn)
容器網(wǎng)絡方面的問題似乎永遠存在而無法得到根除。托管在同一物理服務器之上的各容器系統(tǒng)會彼此交互并進行數(shù)據(jù)共享。不過Docker開發(fā)人員最初并沒有提供必要的此類能力,即將一套容器由一臺主機遷移到另一臺,或者是將某套容器與運行在另一主機之上的其它容器相對接。
“最大的挑戰(zhàn)主要出現(xiàn)在跨容器通信層面,”技術(shù)分析師兼博主Keith Townsend指出。“從一套容器到另一套,大多數(shù)網(wǎng)絡專業(yè)人士都會在實現(xiàn)過程中遭遇職業(yè)生涯中最嚴重的阻礙。”
作為同名開源容器項目的開發(fā)方,Docker公司中的各位工程技術(shù)人員已經(jīng)意識到了這個問題,并開始著手加以解決。
內(nèi)置電池,支持更換
正是由于網(wǎng)絡難題的存在,Docker公司于2015年3月收購了初創(chuàng)企業(yè)SocketPlane,后者的主要業(yè)務就是將軟件定義網(wǎng)絡功能以原生方式添加到Docker當中。今年6月,Docker公司宣布將SocketPlane技術(shù)整合至其開源項目當中。新的網(wǎng)絡功能采用基礎Linux橋接機制與VXLAN(即虛擬可擴展LAN),允許容器與處于同一Swarm當中的其它容器進行通信——順帶一提,所謂Swarm是指Docker專用的容器集群描述名稱??缰鳈C容器網(wǎng)絡問題就此得到解決。
與此同時,Docker還放出了libnetwork,其旗下另一開源項目的代號。該項目允許第三方網(wǎng)絡管理工具以“插入”方式替代Docker當中內(nèi)置的網(wǎng)絡功能。以VMware NSX、思科ACI等為代表的多款虛擬網(wǎng)絡產(chǎn)品已經(jīng)成為首批受支持方案。
“其建立起一套抽象層,”Docker公司產(chǎn)品高級副總裁Scott Johnston表示。“這是一套3層網(wǎng)絡覆蓋體系,允許容器與之進行對接。”
Docker目前擁有兩種網(wǎng)絡管理方式。其一為原生方式,即開箱即用且受到Docker支持的現(xiàn)成功能——歸功于收購SocketPlane,Docker已經(jīng)擁有了自己的一套跨主機容器連接機制。如果用戶需要更多先進網(wǎng)絡功能,例如以編程化方式建立起網(wǎng)絡、設置網(wǎng)絡政策、安裝防火墻、添加負載均衡方案或者其它虛擬應用,那么則可以選擇多種網(wǎng)絡管理產(chǎn)品。Docker公司將其方案形容為“內(nèi)置電池,支持更換”。Johnston指出,他希望能夠在未來實現(xiàn)類似的容器存儲插入實現(xiàn)模式。
技術(shù)是最容易解決的問題
Docker公司產(chǎn)品高級副總裁Scott Johnston指出,在容器網(wǎng)絡方面技術(shù)是最容易解決的問題。
Johnston表示,其實這些技術(shù)能力方面的問題是最容易解決的部分。讓開發(fā)人員在容器當中構(gòu)建應用程序并推動IT部門加以使用才是更大的挑戰(zhàn)所在。
容器化應用程序與傳統(tǒng)企業(yè)應用相比擁有著截然不同的特性。在過去,IT部門的目標在于提供不會出錯的彈性系統(tǒng),但現(xiàn)在他們的首要任務變成了想辦法提供容量與敏捷性能夠即時調(diào)整的高靈活度網(wǎng)絡體系。
“從網(wǎng)絡的角度來看,應用程序交付與性能水平關(guān)系到網(wǎng)絡基礎設施在支持此類新型應用以及用例時的實際表現(xiàn),”思科公司云基礎設施服務CTO Ken Owens解釋道。“網(wǎng)絡工程師的角色負責思考可編程網(wǎng)絡、軟件定義網(wǎng)絡以及網(wǎng)絡功能虛擬化等技術(shù)成果能夠在這方面起到哪些積極作用。”
這些工具允許網(wǎng)絡資源配置得以自動化完成——而不再像過去那樣以手動方式進行——這很可能會在不久的將來成為真正的市場吸引力,并促使采取此類應用范例的企業(yè)客戶在進行利弊權(quán)衡之后下決心起用上述新機制。
原文鏈接:A guide to Docker container networking
【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】