天天看點

實時計算Flink on Kubernetes産品模式介紹Flink産品介紹Flink on Kubernetes模式介紹及對比Why Flink+KubernetesVerverica Platform介紹

Flink産品介紹

目前

實時計算

的産品已經有兩種模式,即共享模式和獨享模式。這兩種模式都是全托管方式,這種托管方式下使用者不需要關心整個叢集的運維。其次,共享模式和獨享模式使用的都是Blink引擎。這兩種模式為使用者提供的主要功能也類似,

  1. 都提供開發控制台;
  2. 開發使用的都是Blink SQL,其中獨享模式由于進入了使用者的VPC,部署在使用者的ECS上,是以可以使用很多底層的API,如UDX;
  3. 都提供一套的開箱即用的metric收集、展示功能;
  4. 都提供作業監控和報警功能。
  5. 最後,在收費模式上,共享模式和獨享模式使用者所承擔的都是硬體加軟體(獨享模式是軟體(VPC))的費用。

Flink on Kubernetes模式介紹及對比

在共享和獨享這兩種模式的基礎上,阿裡雲實時計算團隊于2019年9月中旬會推出一個新的模式,Flink on K8S,其與前兩種模式差別主要在于:

  • 托管模式:叢集以半托管模式部署在使用者ECS和K8S上,使用者對該叢集用完全的掌控能力。
  • 引擎版本:直接使用開源Flink版本
  • 提供功能:提供開發控制台支援使用者送出并控制作業;支援Flink 1.6/1.7/1.8等版本;也提供metric收集、展示、作業監控、報警功能;提供其他可插拔的增值功能。
  • 收費模式:Flink on K8S模式下軟體(VPC)是完全免費的,使用者隻需要支付ECS的費用就可以免費試用Flink産品。

各種模式對比如下:

實時計算Flink on Kubernetes産品模式介紹Flink産品介紹Flink on Kubernetes模式介紹及對比Why Flink+KubernetesVerverica Platform介紹

引擎方面,Blink是由阿裡雲實時計算團隊于2016年從Flink 1.5.1拉出來的分支,在這之後的三年多的時間裡,該分支被進行了一系列的改造:1)SQL優化器和執行器的改造,目前有更完善的SQL支援,提供了Unified SQL;2)在Runtime上,提供了統一高效的算子架構、更加靈活的chaining政策和自定義排程插件;3)提供增量Checkpoint。

2019年1月份,阿裡巴巴決定将Blink的所有優化功能貢獻給社群,經過六個多月的改造,Blink的部分基本功能已經合并到Flink 1.9.0中,與此同時,阿裡也收購了Flink創始團隊成立的公司dataArtisans。在此之後,兩個團隊将共同維護一個新的品牌Ververica,該品牌推出新的界面平台Ververica Platform來為使用者提供服務。

實時計算Flink on Kubernetes産品模式介紹Flink産品介紹Flink on Kubernetes模式介紹及對比Why Flink+KubernetesVerverica Platform介紹

Why Flink+Kubernetes

Flink之是以選擇K8S來作為底層的資源管理來為使用者提供服務主要原因有以下幾點:

  • Flink特性:首先Flink是大資料類應用,與傳統大資料應用如Spark、Hadoop、MapReduce以及Hive等不同的是,Flink是常駐程序,其類似于線上業務的App,作業釋出後修改頻率比較低,,這就要求執行作業的worker長時間穩定運作。另外,與其他批處理作業相比,流作業任務一般應用于實時風控和實時推薦的業務場景下,其重要度更高,穩定性要求也更高。
  • K8S優勢:K8S設計的初衷是為線上應用服務,目标是為了幫助線上應用更好地釋出和管理,實作資源隔離;其次,目前K8S具備一定的生态優勢,目前很多使用者已經開始或嘗試開始使用K8S來管理線上應用;K8S可以很好地內建其他叢集維護工具,如監控工具普羅米修斯,同時在資源彈性方面,K8S可以很友善地進行擴縮容。
實時計算Flink on Kubernetes産品模式介紹Flink産品介紹Flink on Kubernetes模式介紹及對比Why Flink+KubernetesVerverica Platform介紹

Ververica Platform介紹

Ververica Platform平台所包含主要功能子產品如下圖所示:

  • K8S叢集:需要使用者在阿裡雲上建立ACK叢集(阿裡雲官網搜尋ACK進入産品首頁了解詳情)。
  • 可插拔元件:1) APP Manager。使用者可通過APP Manager界面對作業進行送出和管理;2)開箱即用的名額收集、展示及報警元件,該元件內建了Prometheus的功能。3)日志收集、分析、展示元件
  • 增值功能:首先是Libra智能調優系統。熟悉Flink的使用者可能都知道,目前Flink的調優比較麻煩,尤其在開源Flink中,使用者需要多次預估波峰流量來設定Flink作業的資源,否則在波峰的時候可能會出現作業延時。而所推出的Libra智能調優系統功能會根據波峰波谷的特點來自動調整Flink資源,在沒有人為幹預的情況下提高資源使用率,同時降低波峰時的作業延時。除此之外,平台還将提供Alink機器學習元件、Gemini等增值功能。
實時計算Flink on Kubernetes産品模式介紹Flink産品介紹Flink on Kubernetes模式介紹及對比Why Flink+KubernetesVerverica Platform介紹

總體而言,Ververica Platform的特點是免費、開源、增值和易用。首先使用者隻需要支付ECS的費用便可以使用Ververica Platform平台的所有功能;其次Flink Core是開源的,使用者無需的擔心其相容性和因為被某個平台綁架而産生的問題,并且開源Flink的功能可以無縫遷移到該平台上;此外,Ververica Platform提供了一系列增值功能,整個平台易用性較高。

下圖是Ververica Platform的平台界面,通過該界面使用者可以建立并送出一個Flink作業。使用者可以設定Flink作業的名稱、初始化狀态、Flink版本(目前支援1.6/1.7/1.8)、Jar包位址以及開源資源配置(如并發度、Job Manager的CPC記憶體等),點選送出後可以很友善地在K8S上運作一個Flink作業。

實時計算Flink on Kubernetes産品模式介紹Flink産品介紹Flink on Kubernetes模式介紹及對比Why Flink+KubernetesVerverica Platform介紹

下圖展示了一個已經在K8S上運作的作業,使用者可以浏覽整個作業的配置資訊、拓撲圖、在K8S上的Events、Jobs、Savepoints的狀态·

實時計算Flink on Kubernetes産品模式介紹Flink産品介紹Flink on Kubernetes模式介紹及對比Why Flink+KubernetesVerverica Platform介紹

使用者還可以在界面上直覺地檢視作業預設的metrics和logs資訊,進而簡化作業問題排查的複雜度。此外,該平台還支援直接顯示Flink Web UI。目前的平台功能比較簡潔,後續會将平台自動調優、Alink 機器學習等方面的功能納入進來。

實時計算Flink on Kubernetes産品模式介紹Flink産品介紹Flink on Kubernetes模式介紹及對比Why Flink+KubernetesVerverica Platform介紹

以上是阿裡雲Flink on Kubernetes産品形态的新功能,歡迎大家試用體驗。試用的具體流程是:阿裡雲送出工單,工單選擇實時計算産品,标明“希望試用實時計算Flink on Kubernetes産品形态”,之後便可以等待阿裡雲相關從業人員聯系進行試用。

最後,打一個廣告,阿裡雲将于11月28日至30日在北京國家會議中心舉辦一場Flink Forward Asia大會,目前買票的優惠力度很大,歡迎大家參加。感興趣的朋友可以使用釘釘掃描下圖中的二維碼來關注大會官網釋出的更多内容。

實時計算Flink on Kubernetes産品模式介紹Flink産品介紹Flink on Kubernetes模式介紹及對比Why Flink+KubernetesVerverica Platform介紹