容器技術正在吞下整個軟體界——而Kubernetes是容器界的王者。所以如果你參與的專案有相當規模,特別是企業內的專案,那與它打照面是早晚的事情。Cloud Foundry 就是一個很有意思的例子。它們4月份在波士頓舉辦了年中的開發者大會。
在企業開發者之外的世界裡,Cloud Foundry可能仍然有一點讓人陌生,儘管世界五百強至少一半是他們的客戶(而在初創企業的領域,它幾乎沒有什麼影響力)。如果你對Cloud Foundry陌生,可以把它想象成類似Heroku的專案,但是它是一個開源的專案,有龐大的商業生態,並且具備在任何雲或者本地部署環境中大規模擴容的能力。開發者負責編寫程式碼(遵循十二因子方法論),定義執行時需要的服務,然後Cloud Foundry會處理好所有底層的基礎設施並且做好必要的擴容工作。開發者不用浪費精力思考應用應在何處執行,從而提升了工作效率。
為了達成這個標的,Cloud Foundry很早就投註了容器技術,甚至在Docker還沒有成形之前。因為當時沒有Kubernetes,使用Cloud Foundry的公司聚在一起搭建自己的容器編排系統,這個系統仍然支撐了今天大部分的服務。然而,在啟動後,在Cloud Foundry生態內要求增加Kubernetes支援的壓力越來越大。去年,基金會宣佈啟動其基於Kubernetes的Container Runtime來管理容器,用來伴隨現有的Application Runtime一起執行,朝著這個方向邁出了重大的第一步。有了它,開發者可以使用Cloud Foundry執行並管理新的(和老的)單體應用,並且和新開發的服務一併執行。
但是記得前面說過Cloud Foundry對於Application Runtime仍然使用自己的容器服務?在現在Kubernetes(和生態中的其他專案)已經是預設的處理容器的方式的情況下這樣做實在是沒有必要。因此現在有一個新的Cloud Foundry專案,其目的是去掉老的容器管理系統並且用Kubernetes替換就不足為奇了。話說回來,容器這一塊並不是讓Cloud Foundry獨特的地方。相反的,是開發者體驗——歸根結底,使用Cloud Foundry的目的是讓開發者不用去關心基礎設施的內部搭建。
Cloud Foundry生態還有另外一個擁抱Kubernetes的地方。因為Cloud Foundry只是軟體,沒有什麼能夠攔住人們將它執行在Kubernetes上。正是因為如此,一些最大的Cloud Foundry廠商,包括SUSE和IBM已經在實際著手這事就很自然了。
SUSE Cloud Application Platform,是一個認證的Cloud Foundry發行版,可以執行在任何公有雲Kubernetes基礎設施上,這包括Microsoft Azure Container服務。SUSE團隊告訴我,這意味著不但部署更加容易,執行的資源密度也同時大大降低了。
類似的,IBM也為客戶提供基於Kubernetes的Cloud Foundry,儘管目前只把它稱作是一個實驗性產品。IBM的Cloud Developer Services的GM Don Boulia強調說他們的客戶絕大多數都在強調將工作量執行在與其他IBM客戶隔離、不共享的環境中。
這一點也是SUSE強調的。SUSE在過去總結出的一個現象是潛在的客戶設想出搭建一個容器環境,然後,透過交流最後決定採用Cloud Foundry。
確實,這周的活動顯示的資訊是Kubernetes和Cloud Foundry是互補的技術。這也是Chen Goldberg,谷歌的Director of Engineering for Container Engine and Kubernetes在這次活動的一個面板討論中強調的。
Cloud Foundry基金會和雲原生計算基金會(CNCF),Kubernetes的家,都處於Linux基金會之下。它們對社群採用不同的策略,Cloud Foundry更加強調企業使用者。這裡可能有一些玩弄政治的地方,但是最重要的是,這兩個機構看起來十分的友好——並且它們有一些共同的客戶。“我們是CNCF和Cloud Foundry的一部分”,Pivotal的CEO Rob Mee告訴我們“這些社群在不斷的共享各種技術,然後不斷演化。不完全獨立,也沒有競爭關係。有很多的複雜度和細節。CNCF和Cloud Foundry是更大生態的一部分,有著互補和共同的技術。”
我們樂於看到在CNCF和Cloud Foundry之前的這種技術共享——和可能的合作 。CNCF畢竟是很多非常有意思的專案,它們在Cloud Foundry中也有著相當類似的應用場景。
原文連結:https://techcrunch.com/2018/04/20/kubernetes-and-cloud-foundry-grow-closer/?linkId=51327217
本次培訓內容包括:容器介紹、容器網路、Kubernetes架構基礎介紹、安裝、設計理念、架構詳解、設計原則、常用物件、監控方案、Kubernetes高階設計和實現、微服務、實踐案例分享等,點選瞭解具體培訓內容。
長按二維碼向我轉賬
受蘋果公司新規定影響,微信 iOS 版的贊賞功能被關閉,可透過二維碼轉賬支援公眾號。