Flinkクラスタの導入と起動のFlink On Yarn

3533 ワード

Flinkクラスタの導入
Flinkの導入には、Local、Standalone Cluster、Yarn Clusterの3つのモードがあります.ここでは、Yarn Clusterの構成方法について説明します.
Flink On Yarnを構成する前に、hdfsとyarnの両方がオンになっていることを確認する必要があります:Hadoopクラスタの導入と起動、YarnモードはContainerメモリリソースの割り当てを考慮する
インストールバージョン:flink-1.7.1-bin-hadoop28-scala_2.11.tgz
mkdir /usr/local/flink
tar zxvf flink-1.7.1-bin-hadoop28-scala_2.11.tgz -C /usr/local/flink

ドメイン名とIPの対応関係の変更(hadoop 2とhadoop 3も同様にhostsファイルの変更が必要)
vi /etc/hosts
10.2.15.176 hadoop1
10.2.15.177 hadoop2
10.2.15.170 hadoop3

環境変数の構成(hadoop 2とhadoop 3もhostsファイルを変更する必要があります)
vi /etc/profile
export FLINK_HOME=/usr/local/flink/flink-1.7.1
export PATH=$PATH:$FLINK_HOME/bin
export HADOOP_HOME=/usr/local/hadoop/hadoop-2.8.3
export PATH=$HADOOP_HOME/bin:$PATH
source /etc/profile

flink-conf.yamlファイルの変更
vi /usr/local/flink/flink-1.7.1/conf/flink-conf.yaml
#==============================================================================
# Common
#==============================================================================
jobmanager.rpc.port: 6123
jobmanager.heap.size: 1024m
taskmanager.heap.size: 1024m
taskmanager.numberOfTaskSlots: 1
parallelism.default: 1
env.java.home: /usr/local/jdk/jdk1.8.0_251
jobmanager.heap.mb: 6192m
taskmanager.heap.mb: 8192m
#==============================================================================
# High Availability
#==============================================================================
high-availability: zookeeper
high-availability.storageDir: hdfs:///flink/ha/
high-availability.zookeeper.quorum: 10.2.15.181:2181,10.2.15.174:2181,10.2.15.172:2181
high-availability.zookeeper.path.root: /flink_on_yarn
high-availability.zookeeper.path.namespace: /cluster_yarn
#==============================================================================
# Fault tolerance and checkpointing
#==============================================================================
state.backend: filesystem
state.backend.fs.checkpointdir: hdfs:///flink/checkpoints
#==============================================================================
# Web Frontend
#==============================================================================
rest.port: 8081
#==============================================================================
# Advanced
#==============================================================================
taskmanager.memory.preallocate: false
taskmanager.network.numberOfBuffers: 64000
fs.hdfs.hadoopconf: /usr/local/hadoop/hadoop-2.8.5/etc/hadoop

mastersとslavesファイルの変更
vi conf/masters
hadoop1:8081
hadoop2:8081
vi conf/slaves
hadoop2
hadoop3

ジョブのコミット
まずZooKeeperjps仲裁を開始する
./start-zookeeper-quorum.sh

その後、Per-Job-Clusterタスクを開始し、./bin/flink run -m yarn-cluster -d -c mainClass /path/to/user/jarコマンドで分離モードを使用してクラスタ、すなわち単一タスク単一クラスタを開始できます.
./bin/flink run -m yarn-cluster  ./examples/batch/WordCount.jar -input hdfs://hadoop1:9000/input/input_hadoop_demo_test.txt  -output hdfs://hadoop1:9000/output/wordcount-result1.txt
  
./bin/flink run -m yarn-cluster -yn 2 -yjm 800 -ytm 800  ./examples/batch/WordCount.jar -input hdfs://hadoop1:9000/input/input_hadoop_demo_test.txt  -output hdfs://hadoop1:9000/output/wordcount-result2.txt

ブラウザにhttp://hadoop1:8088と入力し、関連情報を表示します.