越來(lái)越多的公司采用容器技術(shù)來(lái)部署云應(yīng)用,容器與云平臺(tái)貌似已經(jīng)緊密結(jié)合起來(lái)了。所以,三大云平臺(tái)供應(yīng)商——亞馬遜云計(jì)算平臺(tái)、微軟云開(kāi)發(fā)平臺(tái)和谷歌云平臺(tái),在市場(chǎng)中推出各自的容器服務(wù)也就不足為怪了。然而,這些容器服務(wù)各有利弊,到底怎么樣?以下是技術(shù)評(píng)測(cè)。不過(guò),最終還是取決于你的應(yīng)用程序需求。
評(píng)測(cè)是來(lái)自波士頓的云咨詢公司,通過(guò)針對(duì)容器技術(shù)對(duì)顧問(wèn)們征詢意見(jiàn),并對(duì)用例進(jìn)行調(diào)查,就亞馬遜云計(jì)算平臺(tái)、谷歌云平臺(tái)及微軟容器服務(wù)開(kāi)展了一次內(nèi)部商討。
三大云廠商提供商的容器產(chǎn)品評(píng)分表
具體來(lái)說(shuō),評(píng)估或使用云容器服務(wù)過(guò)程中重要的幾個(gè)方面,包括數(shù)據(jù)管理、可擴(kuò)展性、性能、安全、DevOps、集成管理和運(yùn)行(結(jié)果如表1所示)。用途涵蓋開(kāi)發(fā)和運(yùn)營(yíng)管理方面。簡(jiǎn)而言之,基本包括了在創(chuàng)建、使用基于這三種容器服務(wù)技術(shù)的應(yīng)用程序時(shí),所要涉及的所有方面。
打分為1-5分制:1分為最低分,5分為最高分。得到1分意味著該技術(shù)根本未對(duì)所涉及范疇提供支持,得到5分則意味著該技術(shù)符合所涉及范疇的大部分特點(diǎn)和功能要求。DevOps這一范疇的其中一個(gè)要求是,容器子系統(tǒng)可以支持DevOps運(yùn)行,或者可以提供一個(gè)集成配置庫(kù)。
當(dāng)然了,本文只是針對(duì)谷歌、亞馬遜或微軟所提供的容器服務(wù)進(jìn)行評(píng)估的公司提供一些根據(jù)。你自己的應(yīng)用程序需求是最終決定你選擇哪個(gè)容器的最終答案。
微軟容器服務(wù)(ACS)基于一個(gè)開(kāi)源容器編排系統(tǒng)Apache Mesos。這表示你可以先考慮早于ACS出現(xiàn)的Mesos的特點(diǎn)和功能,繼而對(duì)ACS的特點(diǎn)和功能做一些良好的假設(shè)。目前尚未廣泛應(yīng)用的ACS是此前提到的三種容器服務(wù)中最新的。隨著我們獲得更多日新月異的微軟容器的相關(guān)數(shù)據(jù)點(diǎn),該容器服務(wù)會(huì)有很多變化。
在使用AWS EC2 Container Service (ECS)過(guò)程中,我們發(fā)現(xiàn)一些運(yùn)行問(wèn)題,比如說(shuō)無(wú)法細(xì)粒度監(jiān)控容器。ECS集成管理和運(yùn)行本該像亞馬遜其他服務(wù)一樣強(qiáng)大,但與 Google Container Engine (GKE)'s的五分成績(jī)相比,ECS只能打個(gè)4分。然而,ECS提供包括 CloudWatch集成在內(nèi)可以助其與ACS競(jìng)爭(zhēng)的服務(wù)。與此同時(shí),ACS僅支持Linux容器,微軟端口Mesos over, .NET developers,落后于主流產(chǎn)品。
在數(shù)據(jù)方面,這些容器服務(wù)都提供本土數(shù)據(jù)連接,不強(qiáng)迫使用外部應(yīng)用程序接口,但仍有提升空間。值得關(guān)注的是,這些容器服務(wù)會(huì)將容器與本土數(shù)據(jù)服務(wù)結(jié)合,但不提供開(kāi)放數(shù)據(jù)訪問(wèn),因后者強(qiáng)調(diào)可移植性。如果數(shù)據(jù)與容器緊密連結(jié),創(chuàng)建可移植容器會(huì)很困難。這是目前需要關(guān)注的一個(gè)新興領(lǐng)域。
考慮到安全方面,我們發(fā)現(xiàn),借助于Kubernetes容器編排系統(tǒng),谷歌容器服務(wù)擁有“秘密”功能和一些其他的資源限制,而這些是其他兩家容器服務(wù)所缺乏的。因此,在安全方面,GKE排名較高。但要注意,微軟也在使用Kubernetes,只是方式不同。該技術(shù)本身大部分是按照用戶需要選擇的。
然而,考慮到主平臺(tái),或者容器服務(wù)所依托的公共云平臺(tái),非常有趣的是,一直宣稱注重安全性的谷歌平臺(tái),在一些方面倒是不如AWS或者Azure。表現(xiàn)在,谷歌可以與第三方訪問(wèn)權(quán)限管理工具合作,卻缺少本土訪問(wèn)權(quán)限管理工具支持。盡管這不影響圖表中的排名情況,但是,這是你選擇平臺(tái)時(shí)需要考慮的事情。
談到DevOps,GKE和Amazon ECS擁有各自的注冊(cè)表,通過(guò)各自的云平臺(tái)容器服務(wù),Google和AWS可以提供更好的DevOps集成管理。而Azure Container Service沒(méi)有。
可擴(kuò)展性也與你的應(yīng)用程序需求相關(guān),所以我們基于這些應(yīng)用程序的機(jī)制,比如Mesos,和一些項(xiàng)目案例做假設(shè)。在利用這些技術(shù)時(shí),你可以通過(guò)相同的途徑去控制和執(zhí)行你的容器。比如說(shuō),Mesos的ACS可以提供不錯(cuò)的可擴(kuò)展性,但仍不如GKE,因?yàn)楹笳呖梢蕴峁└玫募汗δ堋?/p>
眾所周知,亞馬遜ECS可以提供高質(zhì)量的可擴(kuò)展性,這也是取決于AWS容器引擎所帶來(lái)的高度可擴(kuò)展的平臺(tái)特征。
總的來(lái)說(shuō),Google offering更先進(jìn),這很大程度上得益于與其自身的Kubernetes容器集群和谷歌開(kāi)發(fā)運(yùn)營(yíng)支持的緊密結(jié)合。然而,谷歌容器服務(wù)并未領(lǐng)先那么遠(yuǎn)得,以至于讓AWS和微軟容器服務(wù)無(wú)法短期內(nèi)趕上。畢竟AWS的市場(chǎng)占有額還是最大的,它極有可能會(huì)在不遠(yuǎn)的將來(lái)提供更好的容器工具。
備注:文章翻譯自techtarget.com,Cloud Technology Partners公司主要架構(gòu)師Mike Kavis, Sibu Kutty and Jonathan Baier促成本文。
翻譯:津上