FLink Installation(Standalone Mode)
說明: 安裝教程的參考了Apache Flink官網(wǎng)教程假残,使用的Flink1.3辉懒。如有異議請聯(lián)系我.
軟件要求
- Java 1.7.x 或者更高
- ssh sshd必須運行起來坑资,因為flink用來管理遠程的組件
如果集群不滿足全部上述要求,必須進行更新仿便,否則無法搭建flink集群.
如果已經(jīng)配置了ssh免密和在所有的節(jié)點創(chuàng)建了一樣的目錄結構攒巍,那么就可以使用flink腳本來管理一切fink集群事務了。 安裝過程如下:
JAVA_HOME 配置
Flink 所有的節(jié)點需要已經(jīng)指向了java安裝目錄的環(huán)境變量JAVA_HOME. JAVA_HOME可以在conf/flink-conf.yml中通過env.java.java.home鍵進行設置闻坚。
配置ssh免密登錄
在即將安裝flink集群的所有節(jié)點上創(chuàng)建用來管理flink集群的用戶, 例如flink, 并且配置master節(jié)點到所有worker節(jié)點的免密登錄兢孝。
Flink設置
在flink下載頁下載匹配使用的hadoop的版本仅偎,如果不使用hadoop, 那么可以選擇任意版本雳殊。下載完成后夯秃,將安裝包上傳到master節(jié)點上并解壓:
tar xvf flink-.tgz
cd flink-
配置flink
解壓完fink安裝包以后,需要通過編輯conf/flink-conf.yaml來進行集群的配置仓洼。 相關配置項如下:
jobmanager.rpc.address 設置指向master節(jié)點的地址。
jobmanager.heap.mb 設置master/jobmanager節(jié)點jvm可以使用的堆內存大小(MB為單位)
taskmanager.heap.mb 設置taskmanager節(jié)點jvm可以使用的堆內存大小(MB為單位)
注意:如果某些工作節(jié)點有等過的內存可以讓flink使用哺呜,那么可以使用FLINK_TM_HEAP環(huán)境變量來覆蓋默認的設置镀岛。
最后,需要配置一個集群主機的列表。和hdfs配置類似走越,編輯conf/slaves耻瑟,輸入所有的計算節(jié)點(worker)的ip/hostname 。這些輸入的每一個ip/hostname將會被啟動為taskmanager.
以下為3個節(jié)點的flink集群構成和配置谆构。IP從10.0.0.1到10.0.0.3, hostname分別為: master, worker1, worker2框都。
flink 的目錄在所有的結束上必須路徑一致魏保。 可以使用一個共享的NFS或者拷貝整個flink目錄到所有的worker節(jié)點上。 根據(jù)詳細的配置請參考配置頁谓罗, 一下的配置是十分重要的。
jobmanager.heap.mb jobmanager 可以使用的內存總量
taskmanager.heap.mb taskmanager 可以使用的內存總量
taskmanager.numberOfTaskSlots 每個機器上可以使用的cpu數(shù)量
parallelism.default 集群中cpu的總數(shù)
taskmanager.tmp.dirs taskmanager的臨時目錄
啟動flink集群
進入flink的安裝目錄揭措,執(zhí)行如下腳本:
bin/start-cluster.sh
如果要停止flink集群绊含,使用stop-cluster.sh腳本
添加jobmanager/taskmanager實例到集群
使用bin/jobmanager.sh 和 bin/taskmanager.sh 腳本可以向正在運行的flink集群中添加jobmanager和taskmanager
添加jobmanager
bin/jobmanager.sh ((start|start-foreground) cluster)|stop|stop-all
添加taskmanager
bin/taskmanager.sh start|start-foreground|stop|stop-all