基礎環境
準備3台虛拟機

配置無密碼登入
配置方法:
https://ipooli.com/2020/04/linux_host/并且做好主機映射。
下載下傳Flink
https://www.apache.org/dyn/closer.lua/flink/flink-1.10.1/flink-1.10.1-bin-scala_2.11.tgz并解壓縮
部署
Standalone Cluster 單機模式
啟動
進入flink-1.10.1 檔案夾内
直接執行:
./bin/start-cluster.sh
叢集模式
修改配置檔案
- 修改
./conf/flink-conf.yaml
修改如下幾個參數:
jobmanager.rpc.address: bigdata1
jobmanager.rpc.port: 6123
jobmanager.heap.size: 1024m
taskmanager.memory.process.size: 1568m
taskmanager.numberOfTaskSlots: 3
parallelism.default: 3
-
配置master節點./conf/masters
修改為:
bigdata1:8081
-
配置slaves節點./conf/slaves
bigdata1
bigdata2
bigdata3
拷貝到其他兩台機器
scp -r /home/admin/flink/ root@bigdata2:/home/admin/
scp -r /home/admin/flink/ root@bigdata3:/home/admin/
啟動叢集
在 bigdata1上執行:
./bin/start-cluster.sh
随後通路
http://bigdata1:8081/可以看到有3個Task Managers,1個Job Manager 為bigdata1
HA高可用模式
兩個JobManager,當主 JobManager 當機之後,使用備用 JobManager ,等當機的 JobManager 恢複之後,又變成備用
下載下傳hadoop依賴包
- 對應hadoop版本下載下傳
我使用的hadoop版本為:hadoop-2.6.5 對應依賴包:
下載下傳其他版本:
- 把依賴包放在flink 的 lib 目錄下
- 配置環境變量
vi /etc/profile
# 添加環境變量
export HADOOP_CONF_DIR=/home/admin/hadoop-2.6.5/etc/hadoop
# 環境變量生效
source /etc/profile
./conf/flink-conf.yaml
配置檔案
./conf/flink-conf.yaml
修改如下幾個參數
high-availability: zookeeper
high-availability.storageDir: hdfs://bigdata1/flinkha/
high-availability.zookeeper.quorum: bigdata1:2181
high-availability.zookeeper.path.root: /flink
state.checkpoints.dir: hdfs:///flink/checkpoints
state.savepoints.dir: hdfs:///flink/savepoints
啟動hdfs
關于hadoop的配置檔案與啟動方式在這就不贅述了。
啟動Flink中zookeeper
進入Flink檔案夾
./bin/start-zookeeper-quorum.sh
jps
檢視是否啟動
啟動Flink
在bigdata1中執行
./bin/start-cluster.sh
檢視
分别打開通路:
http://bigdata2:8081/兩個頁面都可以檢視叢集資訊
測試
- 我們可以 kill掉bigdata1機器上的Job Manager,然後備用(bigdata2)Job Manager也是可以使用的。
- 再啟動bigdata1的Job Manager
./bin/jobmanager.sh start
小結:本篇介紹了Flink單機,叢集,HA高可用三種部署方式。
更多文章:
www.ipooli.com掃碼關注公衆号《ipoo》