當前位置:
首頁 > 科技 > Pivotal PaaS新布局:PCF 2.0的時代來了

Pivotal PaaS新布局:PCF 2.0的時代來了

提起 Pivotal,它不僅是 Spring 技術的擁有者,也是雲原生概念的提出者。在日益火爆的 PaaS 市場,Pivotal 不僅有 Pivotal Cloud Foundry(PCF),更以其敏銳的技術洞察力和技術實力,擁抱容器、擁抱 Kubernetes。

5 月 19 日,Pivotal 在北京召開《任意云:從理想 到現實》技術沙龍,全面展現其在 PaaS 領域的技術儲備和洞察,既包括介紹剛剛推出的基於 Kubernetes 的容器服務——Pivotal Container Service(PKS),也詳解微服務、Pivotal Web Service (PWS) 和 Pivotal Funtion Service(PFS)。

Pivotal PaaS 的過去現在和未來

在 Pivotal 大中華區雲計算技術總監俊剛題為《Pivotal PaaS 平台新技術概覽》的演講中,俊剛介紹了 Pivotal PaaS 的過去、現在以及未來。

我們知道,在 Pivotal 成立之前,Cloud Foundry 一直由 VMware 在推動,擁有大量開源用戶。在 Pivotal 於 2013 年成立之後,正式發布 Pivotal Cloud Foundry (PCF) 1.0 版本,從那時起直到今天,其發展和演進歷程包括:在私有雲環境之外,支持把應用跑在 AWS、Azure 等公有雲上,比如幫助福特構建在 Azure 上的車聯網應用;基於 PCF 平台,支持.Net 和 Windows 平台的應用;另外也幫助用戶構建統一的 PaaS 平台,實現跨雲的應用。

從 2016 年開始,Pivotal 開始支持Docker 在企業環境中的運行;也支持把 Spring Cloud 引入 PCF 平台,以實現微服務化的應用。2017 年底,Pivotal、VMware 和 Google 聯合推出基於 Kubernetes 的容器服務 PKS。

伴隨 2018 年初 PCF2.0 版本的發布,這也預示著全新一代 Pivotal PaaS 產品的布局完成。

PCF2.0:Pivotal PaaS 的全新形態

PCF2.0 是一個平台的概念,支持 CaaS(容器)路徑、PaaS 路徑和 FaaS 路徑,其中包含三大產品線:第一條是 PAS(Pivotal Application Service),也就是 Pivotal Cloud Foundry——PCF,為企業用戶提供雲原生、微服務;第二條產品線是 PKS,把企業用戶的傳統應用通過容器化的方式快速上雲;第三條產品線是將於今年年底發布的 PFS(Pivotal Function Service),如果企業用戶的應用是無服務的響應式程序,使用 PFS 類似於部署了一個擴展性極高的應用。

圖註:PCF2.0 支持三個路徑

圖註:PCF2.0 的平台構建

PKS 特性一覽

PKS 的特性包括以下幾點:

基於開源 Kubernetes 構建— 始終與當前穩定的 Kubernetes 版本兼容,由 BOSH 管理。不對 Kubernetes 做任何擴展。

生產就緒— 從應用到 IaaS 層的高可用性。內置的健康檢查、彈性伸縮、自愈和滾動升級。

多雲支持— BOSH 提供了可靠的一致的運維體驗。適用於所有雲。

網路管理和安全性。開箱即用的 VMware NSX-T, 也支持多雲和多種虛擬化。

訪問 GCP APIs — 通過 GCP Service Broker 使得應用可以透明地訪問 Google Cloud APIs。輕鬆將工作負載移入 / 移出 GoogleContainer Engine (GKE)。

全自動化運維— 全自動的部署、伸縮、在線打補丁和在線升級。沒有業務停頓時間。通過 CD 持續集成管道來部署平台。

認識誤區?不攻自破

對於大家對 Pivotal 的一些認識誤區,俊剛也進行了澄清。有人覺得 PCF 平台太重了,不是輕量級的產品。對此俊剛表示:從技術發展歷程來看,PCF 重是有道理的,安全、管理、可視化、高可用、日誌以及用戶管理... 這些都是企業級用戶需要的,Pivotal 在做跨平台研發的時候,必須要考慮企業級用戶這些需求,這也一定程度上造成 PCF 不是一個輕量級的產品。

雖然 Docker、Kubernetes 非常熱,但是面對很多人認為的 Docker、Kubernetes 是萬能的,俊剛也不認同:要真正關注企業用戶需求,新技術不能成為空中樓閣。

對於 Pivotal 不支持 Docker、不支持 Kubernetes 的說法,其實 Pivotal 的 PCF1.6 版本就開始支持 Docker,而 PKS 的推出也表明了 Pivotal 支持 Kubernetes 的力度有多大,所以以上觀點也就不攻自破了。

微服務應用在 PCF 上的最佳實踐

很長一段時間以來,Pivotal 都是雲原生、微服務背後的巨人,這些概念被認知程度已經高過 Pivotal 自身的品牌。比如微服務火爆後被帶熱的 Spring 系列技術,但是很多人並不知道 Pivotal 才是 Spring 技術的擁有者。Pivotal 雲計算資深架構師劉凡介紹了微服務應用在 PCF 上的最佳實踐。包括 Spring Boot、Spring Cloud 和 Spring Cloud Data Flow,用以構建微服務、治理微服務、連接微服務數據。

具體到 Spring Boot,這裡可以著重說一下今年 3 月份剛剛發布的 Spring Boot 2.0,它可以支持 Spring MVC 和 Spring WebFlux,Spring Boot 2.0 不是僅僅強調性能,而是更多強調擴展性。Spring Boot 2.0 也可以在最新的 PCF 上進行部署。

開源 Cloud Foundry 平台是構建雲原生應用的理想平台之一,而開源 Spring Cloud 微服務應用框架則可以把原有企業級 Java 應用過渡到雲原生應用,再加上對.Net 的支持,Cloud Foundry + Spring Cloud 將成為數字化企業爆發的開源雲平台。

具體到 Spring Cloud Services,也就是把 Spring Cloud OSS 中伺服器端的組件打包成為服務並在 PCF Marketplace 上提供給已經用去訪問。它大大簡化了自行實現和維護這些 CS 服務的工作,SCS 專註於易用性、安全性和可靠性。

在數據越來越多的情況下,企業需要一些工具來處理數據型的微服務,這就是 Spring Cloud Data Flow 這個工具的價值所在,它可以輕鬆為持續的流式事件或有限的批處理任務創建數據集成處理的 pipelines。

圖註:Pivotal 推行的轉型微服務的原則和步驟

項目管理的重要性:好技術不等於好產品

在上午的最後一個演講中,Pivotal 資深架構師李銳祥介紹了項目管理——Platform as a Product 的概念。一個成功的 PaaP(Platform as a Product)項目應該具有哪些特徵呢?它需要一個好的擁護者,需要一個專業的團隊,這樣你可以獲得授權、調整工作的優先順序、快速部署產品,也能夠讓產品和業務越來越貼近,並且節約成本。

有時候一個大企業內部可能有四、五個團隊都在做雲,這時候作為項目的負責人,需要懂得宣傳自己,放下身段,要讓業務部門幫你說話。Project Manager 和 Product Manager 的角色非常不一樣,產品經理關心如何打造 MVP,如何滿足客戶核心價值,他不像項目經理關心流程和時間。

一個公司要想運維一個 PaaS 上線,最少需要的人手包括:1 個擁護者、1 個產品經理和 2 個平台開發者。值得一提的是,Pivotal 提供結對開發的服務,每天客戶與 Pivotal 的工程師坐在一起,用傳幫帶的方式把平台開發經驗進行傳承和迭代。

圖註:Pivotal 在協助保險公司 Liberty Mutual 進行數字化轉型時,結對開發的實例。

如何解決微服務架構常見問題?

在下午演講中,Pivotal 雲計算資深架構師王鈞平從實際案例出發,介紹如何解決微服務架構常見問題,以及 Spring Cloud Function、Function as a Services 的開源項目 Riff 的技術細節。

對於 Pivotal 來說,為什麼在傳統的 PCF 之外還推出了 PKS?Cloud Foundry 在 PaaS 平台的成熟度、應用開發的便捷性、運維管理的友好性、安全增強、高可用、企業案例和技術支持等方面優勢明顯;而 Kubernetes 在社區活躍度、容器定製和可操作性等方面也非常吸引用戶。無論孰優孰劣,我們必須給予客戶選擇的權利,更何況傳統巨石應用還有很多。

這裡可以提一下 CaaS 與 PaaS 的異同。CaaS 的交付更像容器的方式;而 PaaS 的交付,是直接在平台上完成部署。二者差別在於,CaaS 還有一些工作要做、要調整,而 PaaS 是高度自動化的,可以快速部署。當很多公司努力要把 CaaS 打包起來,變成 PaaS 的時候,Pivotal 已經直接提供了 PKS,把企業用戶的傳統應用通過容器化的方式快速上雲。

具體到 riff,它是 K8S 原生的,在彈性伸縮、擴展上使用 K8S 的特性。在最新的開源無伺服器框架中,riff 項目得到關鍵支持,並且是即將到來的 PFS 的基礎。

開源企業級鏡像倉庫:Harbor

VMware 中國研發中心資深研發工程師姜坦的演講題目是《採用開源 Harbor Registry 實現高效安全的容器鏡像運維》。

Registry 的角色有三個:鏡像存儲倉庫、分發鏡像的媒介、訪問控制和鏡像管理較佳節點。容器鏡像通常從 registry 分發,在大規模集群場景下,Registry 是鏡像分發瓶頸。解決方法就是擴展 registry 服務。

具體到 Harbor,這是一個開源的企業級容器鏡像倉庫,由 VMware 中國團隊設計和開發,開源不到 2 年時間中,已經集成到多個 VMWare 企業級雲原生產品中,比如 VIC 和 PKS。

下圖是 Harbor 的主要特性,值得一提的是,以下所有功能都可以通過調用 API 與客戶自己的產品進行很好的結合。

圖註:Harbor 的主要特性

Liberty Mutual 數字化轉型:雲原生的魔力

不久前 Pivotal 發布了這樣一則新聞——Liberty Mutual 授予 Pivotal「年度創新合作夥伴獎」,Pivotal 雲計算資深架構師楊海濤在會上也詳細介紹了 Liberty Mutual 與 Pivotal 在雲原生上的合作細節。

Liberty Mutual 是一家保險公司,曾經是一個特別缺乏創新性的公司。但是現在情況不同了,整個保險行業都開始全面擁抱創新,而且保險行業也非常適合進行數字化轉型,因為它沒有實體經濟的包袱。以 Liberty Mutual 為例,它的數字化轉型目標,主要是希望在項目開始後的兩年,運行在公有雲上的應用從 5% 增加至 60%;50% 的應用做到按天發布;75% 的 IT 人員要寫代碼;通過自動化重複性手工工作節省 1 億美元成本。

Pivotal 為此給 Liberty Mutual 提供的產品和服務包括:Pivotal Cloud Foundry;Pivotal Labs;Application Transformation,Platform Dojo。

從 2014 年開始,Liberty Mutual 的 CTO 辦公室正式啟動這個實驗項目,開始試用 PCF。其實項目在最初的 18 個月並不順利,在公司內部受到很大阻力。伴隨 2016 年 1 月全球 CIO 在講話中宣布 Liberty 向敏捷轉型,PCF 以及雲原生才開始在 Liberty Mutual 進行全面推廣並獲得成功。

從目前成果來看,截止到 2017 年底:Liberty Mutual 的 1000 名開發人員在 Pivotal Cloud Foundry 上面開發軟體,應用實例數增長到 9200 個。多數情況下,軟體從構建到部署到生產環境的時間小於 10 分鐘,每周甚至每天應用都有新功能面世。

圖註:Liberty Mutual 是如何與 Pivotal 一起協作的

工具不是太上老君的仙丹

互聯網應用的特點就是快,天下武功唯快不破。如何快速開發互聯網應用?有微服務、自動化部署、敏捷開發... 還有雲計算。

Pivotal Web Service (PWS) 是一個在線的公有雲版本 Cloud Foundry 實例,部署在 AWS 上,由 Pivotal 運行維護,特點包括:可擴展、多租戶、高可用。據 Pivotal 中國研發中心資深產品經理吳疆介紹,PWS 是目前規模最大的 Cloud Foundry 實例。

圖註:PWS 的規模一覽

PWS 的部署原則是:任何部署都預先被驗證;任何部署都必須是可回滾的;部署必須是自動化的;部署不能影響系統的可用性;灰度部署。PWS 的工具包括:Concourse、BOSH、Github、Smoke Test。流程包括:部署前驗證、部署中的監控、部署後的驗證、部署的回滾,以及採用何種方式降低風險。

不過工具不是太上老君的仙丹,我們做 DevOps 的時候遇到的困境其實也很多,比如歷史遺留問題:系統變得越來越大、越來越複雜,系統越來越分散式化,系統的可用性要求越來越高;也包括我們的困境:系統運維很難、分散式系統的運維更難、各種指標要求越來越高、成熟的工具理念很老舊、理念很先進的工具很不成熟。

儘管困難重重,但是我們需要認清現實:在互聯網時代,沒有一個運維工具能夠解決所有問題,這個時代沒有涵蓋所有最佳實踐的軟體。

Greenplum 如何與 PKS 進行集成

熟悉資料庫的人可能都了解 Greenplum,儘管是全天活動的最後一個演講,但是現場互動最積極的也是關於 Greenplum 的問題。Pivotal Greenplum 研發經理翁岩青介紹了 Greenplum 如何與 PKS 進行集成。

雖然 K8S 很火,但是在分散式資料庫層面,K8S 還是很有挑戰的,PCF 給 K8S 提供了一個透明的介面,客戶不用考慮其應用是在公有雲上還是私有雲上,答案就是 PKS。

圖註:Greenplum on K8S 簡單部署方案

Greenplum on PKS 的好處包括:按需集群的申請,用戶把請求發給 PKS,系統可以給出一個不跟別人共享的集群,供用戶來進行集群的使用;高可用,不需要再做 Rebalancing,採用 PKS,每個節點都是獨立的;提供很多插件,Greenplum on PKS 有很多其他功能的支持,比如應用上可以跟使用磁碟一樣使用存儲方案。

Greenplum Operator on Kubernetes 的核心是將人工運維的經驗,通過程序運維起來,實現自動化運維。

一個彩蛋

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 InfoQ 的精彩文章:

從早期員工到技術經理,女程序員3年如何完成躍遷之路

TAG:InfoQ |