打造大規模容器生產環境之Marathon分析
大小:0.6 MB 人氣: 2017-10-12 需要積分:1
容器技術如今可謂如日中天,不少從業者甚至預測認為容器的廣泛普及將給 IT 行業帶來超越云計算的深遠變革。相較于此前專門用于改進運營及開發效率的各類技術方案,容器技術能夠真正提供極為出色的資源利用率、易配置性、更高部署速度以及更加靈活的開發流程。
不過如同單一虛擬機一樣,單一容器本身并不足以承擔如此重任。這意味著我們需要一套容器編排平臺以部署并管理特定數量的容器系統。舉例來說,一款采用微服務架構的現代應用程序可能包含有數十甚至上百套容器系統,這些容器跨越數十個物理節點以及彼此依存的容器化服務。在將大量組件與一套持續集成與交付系統相集成后,我們還需要一套集群作為其運行載體,并在日常代碼測試工作當中每天啟動并移除數百萬的容器實例。
如果沒有理想的容器編排平臺作為輔助,那么實現這項目標絕對是一條漫長而艱難的道路。當然,隨著容器數量的不斷攀升,整套體系對于可擴展能力與傳輸帶寬的要求也將隨之增長。而且與 IT 結構中的其它事物一樣,容器當中也存在著許多值得關注的核心要素,我們需要利用它們完成技術方案由開發到生產的整個推進流程。
希望在生產環境下運行容器的企業用戶需要對大量炒作與夸張說辭進行分析,從而找到真正適合自己且值得信賴的容器業務流程平臺。就目前而言,已經有一部分技術成果建立起龐大的開發者基礎并以 GitHub 為平臺進行傳播。另一些成果則已經開始運行在生產環境當中,并被一部分全球規模最大的企業與極具創新能力的初創廠商用于支持下一代應用程序。我們的開源 Marathon 技術恰好屬于后一種分類。
![打造大規模容器生產環境之Marathon分析](/uploads/allimg/171012/2362486-1G012162QQ60.png)
遇見 Marathon
我們將Marathon視為數據中心操作系統(簡稱DCOS)中的一款“殺手級應用”。它屬于核心服務之一,被預裝在 DCOS 當中,而且目前已經被三星、Yelp、Verizon、迪士尼、Autodesk 以及其它眾多知名廠商應用于生產環境當中。這些企業利用 Marathon 立足于公有云環境、內部數據中心乃至跨越多混合云環境管理成百上千節點之上的大量容器。Marathon 支撐著一切基于容器應用程序的部署工作,從持續集成到物聯網再到托管云服務可謂無所不包。 各家企業利用 Marathon 管理自身容器環境的具體方式也有所區別:
三星公司利用 Marathon 支撐其 SAMI 聯網設備平臺的開發經驗。
Autodesk 公司利用 Marathon 為其持續增長的云服務套件建立一套流事件平臺。
Yelp 公司以 Marathon 為核心構建起了自己的一套完整生產性平臺即服務(簡稱PaaS)環境。在該平臺(簡稱為PaaSTA)與另一名為Seagull 的基于 Marathon 項目之間,Yelp 公司得以每天啟動超過100萬套 Docker 容器。
Marathon 以云為目標進行構建
最近推出的一系列強化也使得云服務供應商得以利用Marathon交付自己的交鑰匙容器服務。舉例來說,我們目前正與微軟公司就其Azure Container Service(簡稱ACS)開展協作,其利用 Marathon 交付生產就緒型容器編排方案。Azure Container Service 在2015年9月發布的一篇官方博文當中提到:Azure Container Service 的默認配置包含 “Marathon、Chronos 以及Apache Mesos,旨在確保這些應用能夠被擴展至數千甚至數萬容器系統級別。” 目前,微軟公司發布了 ACS 的公共預覽版,這意味著任何 Azure 用戶都能夠訪問該服務并將其與 Mesos 及 Marathon 一道納入自身業務流程。希望直接在 Azure 實例或者其它云平臺之上部署 DCOS 的企業客戶也已經能夠切實達成目標。
Marathon 為 DCOS 提供支持
不過著眼于 Marathon,其最大的亮點可能正是其與 DCOS 的結合。盡管容器編排已經成為一項愈發重要的能力,但其還僅僅是推動現代應用程序更加強大、更具可擴展能力且更為可靠道路上的一個側面。有鑒于此,DCOS也做出相應調整以簡化對高復雜性系統的安裝、規模伸縮與管理,具體包括分布式數據庫、大數據流水線以及持續集成平臺等等——這一切都將同消費級 Web 應用程序與微服務一道運行在一套共享式集群之上。
伴隨著每個新的DCOS版本,我們都會在其中圍繞安全性、彈性、監控能力、管理能力以及其它要素添加新的能力。
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%