Flink的部署有3種模式,分別是local模式、Standalone模式、yarn模式。其中local就是單機模式,一般來說用於本地開發測試;Standalone跟yarn模式都可以支撐集群部署、實現HA,但是兩者在任務分配機制、內存管理等內容上有比較大的差異。一般在處理計算數據量級非常大的生產環境,使用flink on yarn的模式更多一些。
我們的Standalone模式部署目標:共有3台機器,其中1台配置為Master+Worker,2台配置為Worker。
本次安裝的是目前的最新版本(1.13.2,2021年9月),下載地址:Apache Flink: 下載。目標機器為centos7,均已安裝好了java1.8環境。
——172.18.88.44(master+worker);
——172.18.88.45(worker);
——172.18.88.46(worker);
1、將下載的flink安裝包copy到44上,解壓縮:
tar -xzf flink-1.13.2-bin-scala_2.11.tgz
(題外話:此時如果作為local模式的話,直接執行 ./bin/start-cluster.sh 即可啟動flink服務了)
2、進入解壓縮出來的flink/conf目錄,修改flink-conf.yaml中的jobmanager地址為44(默認為localhost):
jobmanager.rpc.address: 172.18.88.44(內存設置也在這個配置文件里,這里暫時不改,以后有需要再修改,有興趣的可以看這篇帖子有詳細介紹:Flink調優之前,必須先看懂的TaskManager內存模型 - 知乎 (zhihu.com))
3、修改master文件,將master指定為44(默認為localhost:8081)
4、修改workers文件,將3個worker的IP配置上:
5、在45、46兩台機器上同樣解壓縮安裝包,並將44上的這3個配置文件copy到45、46上。注意:45、46的flink位置要與44上的位置保持一致。
6、正常情況下,在44上的flink目錄下執行./bin/start-cluster.sh,即可啟動集群了。
7、由於這3台機器沒有配置ssh免登,會出現啟動服務時,需要輸入45、46兩台機器密碼的情況,不方便。為此,請配置ssh免登,參考centos7下配置免密碼登錄 - zouminglan - 博客園 (cnblogs.com)
8、可通過master所在機器地址查看運行狀態:172.18.88.44:8081
9、HA配置略。