為什麼私有雲的定位應該是PaaS,而不是IaaS?

2021-09-23 00:09:26 字數 3522 閱讀 8410

本文講的是為什麼私有雲的定位應該是paas,而不是iaas

【編者的話】it界已經對私有雲架構爭論了好久,雖然有很對公司嘗試了iaas私有雲方案,但始終不盡如人意,因為把目光僅僅集中在iaas上是乙個一開始就錯誤的想法。與此同時,圍繞mesos的私有雲方案真正奏效了,基於mesos構建私有paas不僅僅是大勢所趨,它已經在很多公司證明了自己的價值。

在it界數年針對私有雲架構的優點的不斷的爭論之後,乙個切實可行且企業可用的私有雲架構終於來到了我們面前。並且與其它在過去的乙個世紀出現的技術方案不同,它已經在世界上的一些巨頭公司,和採用先進技術的最多的公司裡都證明了自己的價值。

重要的是,我們指的不是iaas。到目前為止iaas方案已經被嘗試過太多次,難以統計,並且還沒有怎樣擴散開來。不斷的有初創公司嘗試但無功而返,也不乏大公司步其後塵 - 包括像openstack這樣的專案 - 結果卻未能將私有的iaas打造成為乙個可伸縮的商業產品(

sclable business

)。那問題出在哪呢?這是因為iaas並不是雲計算使用者的終極目標 - 至少在他們還有選擇的情況下不會是。高效運維和可伸縮的基礎設施(

scalable infrastructure

)只是提高開發者效率和商業敏捷性的途徑。對於cio來講,乙個投入大量資源開發的專案卻只能達到一半的目標,這付出很難能看到什麼回報。

這就是為什麼私有雲計算的未來是立足於另外乙個開源平台 - apache mesos- 之上,並且以更加像乙個paas平台的面貌示人。這方案之所以行得通是因為它仍然具有運維高效性的特點,人們通常把這一點拿來作為兜售部署私有雲時列舉的原因之一,但是這種以圍繞mesos風格的私有雲真正可以奏效的原因是它能給開發者帶來更快、更簡單及更靈活的使用者體驗,而這才是雲一直的核心。

有乙個很爭議的觀點,把目光僅僅集中在可複製(replicating)的iaas雲平台,如aws,是乙個一開始就錯誤的想法。畢竟,aws當初引人注目是僅僅是因為憑信用卡幾分鐘內就可以使用,而不是因為它看起來是部署應用最好或者最簡單的方式。

下面是gartner的vp和傑出分析師thomas bittman對於私有paas的看法,這出自2023年10月的一篇有關於採用私有雲技術時犯的最大的錯誤的報告:

儘管大部分的私有雲是iaas,使用虛擬機器來作為工作單元,然而單純的iaas的價值是有限的。即便是公有雲iaas提供商們也在他們iaas功能的基礎上提供了不少額外功能,包括很多便於開發者使用的工具,用來準備(

provision)虛擬機器和對虛擬機器內部進行管理的工具,和越來越多的paas的服務。

...通過重寫paas層,通過要求和公有雲paas的協作,或是通過saas模型從乙個對外的提供者來獲得服務,這些方法都能使一些應用提供更好的服務。儘管,私有的paas仍然相對少見,但是支撐私有paas的技術會日趨成熟 - 特別是對於雲的混合模式而言。

實際上,它們正在慢慢成熟;因為這只是乙個時間問題。一直以來都是開發者推動著雲計算技術的採用。他們是aws的第一批使用者,因為其讓他們不用煩請it的協助;他們是paas的第一批使用者(如早期的heroku),因為其幫助他們擺脫aws的複雜度;他們也是saas工具,如newrelic的第一批使用者,因為其幫助他們監控他們剛剛啟動的雲服務。

就如marten mickos(eucalyptus systems的前任ceo,也是mysql之前的ceo)今年年初巧妙而簡介的說:

開發者再也不問你要伺服器了。他們甚至不問你要乙個lamp套件(stack)。他們想要api。

— mårten mickos (@martenmickos) 

2023年5月29日

很可能還要一些容器。

本質上,開發者想要把建立和部署新的應用納入他們快速的code-deploy-test迴圈的一部分。如果你總是在等待it準備可靠的映象,那麼持續交付、持續整合和微服務就永無可能。並且,坦白的講,開發者不會關心在何處部署他們的應用和服務,只要這個部署過程比較容易。

這裡就是it和運維真正需要施展身手和改變世界的地方。通過選擇合適的軟體套裝(假如至少是mesos和docker),聰明的cio能滿足商業層的需求,如提高資源利用率、降低用電開銷以及減少宕機時間,同時保證提供快速靈活,符合開發者需求的平台。

對於很多mesos的使用者來說,包括上面列舉的對公商業的公司,私有的paas不僅僅是乙個新興的技術 - 它已經站在了我們的面前。mesos提供了伺服器層面的排程和通常的資源管理能力和抽象(

resource-management capabilities and abstractions

),然後更高層次的工具如marathon、docker和其他一些自己開發(並且通常開源)的工具提公升了開發者的體驗。

幾乎對於乙個公司來說,paas-on-mesos架構已經大大地提公升了在平台上部署應用的舒適度和速度。得益於mesos,很多使用者終於能夠擁抱微服務的架構,甚至把玩新出現的大型資料框架,因為mesos可以基於實際所需資源排程workload(工作量),並且支援在同乙個集群裡任何型別的workload。

已經有好幾個由大公司構建的paas框架,方便執行在mesos(並且擴充套件一點的說,dcos)之上,並且已經開源。這些包括:

通過在dcos新增了對其他容器編排,mesosphere對開源的支援往前又進了一步,paas在開發的時候沒有考慮到mesos,但是仍然提供了很多好用的功能。這些包括google領頭的kubernetes專案、docker的swarm、red hat的openshift和最後的cloud foundry。

在過去幾年,也有其他很多基於mesos的paas系統被開發構建,但還不是開源的,一些公開討論過他們系統的公司包括:

然而儘管所有之前提到的案例都顯示mesos可能帶來的各種美好的願景,現實是不是每乙個公司都有足夠的資源和熱情來構建牢靠(mission-critical)且完全依賴開源技術的系統,假如要自己從頭做起就更難。

dcos讓構建乙個私有的paas相對的簡單了,因為其提供了要構建乙個paas所有必要的元件和原語(primitive),不管是在前置或者公有的雲。dcos提供了開源的mesos的所有功能,另外還有在ui/ux,sdk和商業支援方面一些重大的改善。

乙個高層次的架構是像下面這樣的:

其中的iaas層在這裡嚴格的指準備(provision)和管理機器。他們可以是物理的機器、虛擬機器或者是公有雲主機的例項。dcos中預設的paas服務是marathon,這是乙個開源的由mesosphere開發的技術。然而,yelp和其他公司都證明,marathon也可以用來作為更加自定義化層的基礎-通常會牽涉到特定的用來配置執行其上的容器的方法。

除了paas通常大家都知道的優點,dcos也能讓部署混合雲架構變的容易-這意味著你的私有paas可以執行在公有雲之上。workload的移植性是dcos核心要保證的東西,因此將前置環境的一部分或者所有應用遷移到公有雲上(或者是方向相反的移動)會十分自然。資源都有同樣的抽象,使用者體驗保持不變,而且**不需要改變。

今天商業的現實是商業要求快速改變,意味著對於it基礎設施的和開發者的需求都也在快速改變。很多公司一直都在尋求把私有雲作為讓後者與前者保持一致的方案,今天私有雲終於開始登上舞台為自己代言。儘管其可能不是我們六年前想象其的樣子,但是這已經沒有什麼關係。

因為這一次,it works。

原文發布時間為:2015-07-13

好的領導應該是什麼脾氣

脾氣好的領導看似好,其實是一種自私的表現,不想讓你的下屬變得強大和超越他!我們要記住 1 對你有嚴格要求的的領導,才是真正能幫助你成長的好領導,使我痛苦者,必使我強大。2 再強大的個人,在溫暖的環境中都會失去狼性。3 凡是想方設法逼出員工的能力,開發員工潛力的公司都會公升騰不息,因為在這種環境下,要...

桌面融合應該是什麼樣的

雖然能達到所謂桌面融合的狀態,不過不管採用哪種方式,都是 偽桌面融合 拋開增加的成本和不穩定性不說 此處說的不穩定並不是純粹指軟體程式不穩定,而是整個專案的不穩定,因為大家都知道多乙個裝置,不穩定的因素就會增加不止一處,加大了維護難度。很多人都有這個經歷,對於稍微複雜的專案,由於採用了不合理的方案,...

Juval L wy 為什麼每個類都應該是乙個服務

許多人都認為,juval l wy是想讓服務無所不在,但他辯稱,微服務只是深思熟慮之後系統分解的邏輯結果。在l wy設計和構建的系統中,每個類都是乙個服務,這是他在2007開創的一種方法,在 wcf服務程式設計 第四版中,他進一步闡述了這一方法。面向服務的應用程式更容易維護,因為業務邏輯和底層管道完...