????????獨立模式是獨立運行的,不依賴任何外部的資源管理平臺;當然獨立也是有代價的:如果資源不足,或者出現故障,沒有自動擴展或重分配資源的保證,必須手動處理。所以獨立模式一般只用在開發測試或作業非常少的場景下。
1、會話模式部署
提前啟動集群,并通過Web頁面客戶端提交任務(可以多個任務,但是集群資源固定)。
2、單作業模式部署
Flink的Standalone集群并不支持單作業模式部署。因為單作業模式需要借助一些資源管理平臺。
3、應用模式部署
應用模式下不會提前創建集群,所以不能調用start-cluster.sh腳本。我們可以使用同樣在bin目錄下的standalone-job.sh來創建一個JobManager。
具體步驟如下:
(0)環境準備。在hadoop102中執行以下命令啟動netcat。
[root@hadoop102 flink-1.17.0]$ nc -lk 7777
(1)進入到Flink的安裝路徑下,將應用程序的jar包放到lib/目錄下。
[root@hadoop102 flink-1.17.0]$ mv FlinkTutorial-1.0-SNAPSHOT.jar lib/
(2)執行以下命令,啟動JobManager。
[root@hadoop102 flink-1.17.0]$ bin/standalone-job.sh start --job-classname com.example.wc.SocketStreamWordCount
這里我們直接指定作業入口類,腳本會到lib目錄掃描所有的jar包。
(3)同樣是使用bin目錄下的腳本,啟動TaskManager。
[root@hadoop102 flink-1.17.0]$ bin/taskmanager.sh start
(4)在hadoop102上模擬發送單詞數據。
[root@hadoop102 ~]$ nc -lk 7777hello
(5)在hadoop102:8081地址中觀察輸出數據
(6)如果希望停掉集群,同樣可以使用腳本,命令如下。
[root@hadoop102 flink-1.17.0]$ bin/taskmanager.sh?stop[root@hadoop102 flink-1.17.0]$ bin/standalone-job.sh?stop