談電信運營商對容器技術的探索

才智咖 人氣:1.83W

雲端計算本質是資源的按需分配和動態排程,從而提高資源利用率,下文來談談電信運營商對容器技術的探索。

談電信運營商對容器技術的探索

摘要:

容器是直接執行在作業系統核心上,擁有相對隔離、獨立資源的執行環境。容器技術的發展符合雲端計算的本質要求,電信運營商作為雲端計算領域的深度玩家,必須重視容器技術的發展。簡要介紹了容器技術背景,分析了容器技術在電信運營商的潛在應用場景,總結了電信運營商在容器技術方面的初步探索案例,探討了容器技術在電信運營商轉型升級中可能發揮的積極作用。

關鍵詞:

容器;雲端計算;虛擬機器

1引言

容器是直接執行在作業系統核心上,擁有相對隔離、獨立的資源(如CPU、記憶體、網路、檔案系統),可以執行一個或多個程序的執行環境。容器可以讓多個獨立的使用者空間執行在同一臺宿主機上。容器技術起源於作業系統的系統隔離工具,初期廣泛應用於各大網際網路公司軟體系統,近幾年來由於Docker公司對容器技術的封裝及開源,形成了良好的產業生態和應用案例,容器技術已經具備一定的技術成熟度,同時由於雲端計算產業經過近10年的發展,已經形成了相當可觀的市場規模,容器作為一種輕量級的虛擬化技術登上了雲端計算的舞臺,已經成為雲端計算技術發展的引領者。電信運營商一直十分重視雲端計算市場和技術的發展,其內部IT系統已經基本完成雲化改造,並正在推動其核心網元雲化改造,同時紛紛成立專業雲服務公司,開拓企業市場。但是目前電信運營商存在建設成本、開發維護和運營機制等方面的諸多挑戰,和目前雲端計算領域的頂級玩家還存在一定的差距,而容器技術具有輕量級、標準化和開源等特點,目前還處於發展初期,運營商介入並開展相關研發應用工作恰逢其時,將有助於解決雲計算髮展過程中的諸多難題。

2容器技術背景

2.1技術特點

雲端計算本質是資源的按需分配和動態排程,從而提高資源利用率,降低使用成本。容器技術的出現進一步滿足了雲端計算的本質要求,其技術特點決定了容器有可能成為下一代雲端計算基礎設施的基石,容器的技術特點如下所示。

(1)輕量級容器執行佔用資源少,單機可以同時執行上百個容器,相比較傳統虛擬化對物理機資源的消耗,容器自身的資源消耗可以忽略不計,其應用裝填密度10倍於虛擬機器。

(2)快速啟停容器啟動速度快,啟動時間在零點幾秒到數秒之間,這一特性保證了動態排程的實時性,在保證應用正常執行的前提下,可以更加高效地排程和調整資源。

(3)高效能容器沒有傳統guestOS層次,直接通過核心訪問物理機資源,各方面效能接近裸機,從而可以進一步提高系統資源的利用率。

(4)標準化採用標準化的容器控制介面和映象打包格式,各類管理平臺可以方便地呼叫統一介面,實現對容器資源的納管。

(5)映象管理容器採用分層檔案系統儲存映象,通過映象倉庫提供映象檔案的儲存和分發,實現了容器映象的一鍵式部署和快速複製,保證了開發測試生產環境的一致性和應用快速複製的高效性。

(6)叢集化容器往往使用叢集方式部署和排程,通過集群系統自帶的負載分發和服務發現等機制實現了大規模資源的按需分配、動態排程,保證了應用的快速部署和彈性擴充套件。另外,容器技術的代表———Docker公司從開始就將Docker完全開源,推動了整個容器技術生態的開源化發展。目前產業界各類主流容器解決方案基本採用全開源軟體構建,大大降低了後進者的學習門檻和開發成本,從而保證容器技術生態圈迅速發展壯大。

2.2技術體系

容器技術核心體系主要包括了三大部件,分別是容器引擎、映象倉庫和容器管理,在其周邊還有一些網路、儲存等方面的輔助部件,構成了完整的容器技術棧,如圖1所示。

(1)容器引擎

容器引擎是整個容器技術棧的核心,負責容器的建立、執行和管理,為容器掛載儲存和網路資源,並對外提供輕量級的容器管理介面。容器引擎在作業系統上引入一個抽象層,封裝了與底層系統核心互動的內容,遮蔽不同Linux發行版的差異性,使得容器具備跨OS移植的能力。目前主流的開源容器引擎包括Docker公司的Docker、Ubuntu的LXC/LXD和CoreOS團隊的Rocket。

(2)映象倉庫

映象倉庫打包了應用軟體、執行環境和依賴庫,採用分層結構構建,映象可以像積木一樣層層堆疊。容器映象儲存在映象倉庫中,映象倉庫管理容器映象的迭代版本、依賴關係和其他相關的元資料,對外提供映象管理介面,以支援映象的上傳、下載和檢驗。目前主流的開源映象倉庫包括Docker公司的Registry和VMware公司的Harbor。

(3)容器管理

由一系列分佈在多個主機的控制節點和計算節點組成。為了支撐分散式系統的複雜工作負載,讓眾多跨主機的容器協同工作,需要有相應的框架和解決方案來支撐容器叢集的服務編排、資源排程和服務發現,保證整個叢集能夠可靠、高效、合理地運轉。目前主流的開源容器叢集框架包括Docker公司的Swarm、Google公司的Kubernete和Mesosphere公司的Mesos。

3典型應用場景

容器技術特點決定了其在多種應用場景下都可以發揮其獨特作用:從資源部署的角度來看,可以應用於虛擬機器替代和大規模應用部署場景;從軟體開發角度來看,可應用於開發測試部署環境一致性的保障;從具體場景來看,還包括資料中心容災、混合雲遷移等,這幾類場景並非孤立存在,有可能在某類應用中存在混合使用的場景。電信運營商目前已經在IT系統、業務平臺中廣泛採用雲端計算技術,後續還計劃在NFV(networkfunctionvirtualization,網路功能虛擬化)環境中逐步採用雲端計算技術。電信運營商目前更多地從資源部署的角度看待容器技術,關注如何通過容器技術高效地承載運營商的各類系統。