Flink支持三大部署模式:
1. Local 本地部署
Flink 可以運行在 Linux、Mac OS X 和 Windows 上。本地模式的安裝唯一需要的只是Java 1.7.x或更高版本,本地運行會啓動Single JVM,主要用於測試調試代碼。
2. Standalone Cluster集羣部署
Flink自帶了集羣模式Standalone,這個模式對軟件有些要求:
1.安裝Java1.8或者更高版本
2.集羣各個節點需要ssh免密登錄
3. Flink ON YARN
Flink ON YARN
Flink ON YARN工作流程如下所示:
首先提交job給YARN,就需要有一個Flink YARN Client。
第一步:Client將Flink 應用jar包和配置文件上傳到HDFS。
第二步:Client向REsourceManager註冊resources和請求APPMaster Container。
第三步:REsourceManager就會給某一個Worker節點分配一個Container來啓動APPMaster,JobManager會在APPMaster中啓動。
第四步:APPMaster爲Flink的TaskManagers分配容器並啓動TaskManager,TaskManager內部會劃分很多個Slot,它會自動從HDFS下載jar文件和修改後的配置,然後運行相應的task。TaskManager也會與APPMaster中的JobManager進行交互,維持心跳等。
Flink的支持以上這三種部署模式,一般在學習研究環節,資源不充足的情況下,採用Local模式就行,生產環境中Flink ON YARN比較常見。