提前准备
- java 版本 1.8.0_101
- flink 版本 flink-1.8.2-bin-scala_2.11.tgz
- hadoop 版本 hadoop-2.8.5.tar.gz
- flink-hadoop lib 版本 flink-shaded-hadoop-2-uber-2.6.5-7.0.jar
配置环境变量
JAVA_HOME=/usr/jdk1.8.0_101
FLINK_HOME=/home/iie4bu/app/flink-1.8.2
HADOOP_HOME=/home/iie4bu/app/hadoop-2.8.5
PATH=$JAVA_HOME/bin:$FLINK_HOME/bin:$HADOOP_HOME/bin:$PATH
export PATH=$PATH
Java安装
这里就不多说了,有很多资料,安装后,检查一下:

flink 1.8.2 安装
- 解压缩
tar -xvf flink-1.8.2-bin-scala_2.11.tgz - 修改flink-1.8.2/conf/flink-conf.yaml文件
配置文件中常用的配置
jobmanager.rpc.address参数用来指向master节点的地址
jobmanager.heap.size 表示jobmanager节点可用的内存
taskmanager.heap.size表示taskmanager节点可用的内存
taskmanager.numberOfTaskSlots 每一个机器可用的CPU个数,决定了并行度
paraparallelism.default 表示任务的并行度 可以在代码层面覆盖
taskmanager.tmp.dirs taskmanager的临时数据存储目录
- 修改配置文件flink-1.8.2/conf/flink-conf.yaml内容如下:
jobmanager.rpc.address: swarm-manager (修改为本服务器的主机名) io.tmp.dirs: /home/iie4bu/app/tmp/flink-tmp
- 修改配置文件flink-1.8.2/conf/masters
swarm-manager:8081 - 修改配置文件flink-1.8.2/conf/slaves
swarm-manager - 启动集群
./bin/start-cluster.sh - 浏览器中输入地址
http://swarm-manager:8081

启动成功!
hadoop 2.8.5 安装
- 解压缩
hadoop-2.8.5.tar.gz - 修改配置文件
etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/jdk1.8.0_101
- 修改配置文件
etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://swarm-manager:9000</value>
</property>
</configuration>
- 修改配置文件
etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/iie4bu/app/tmp/hadoop-tmp</value>
</property>
</configuration>
- 设置免密登录
$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
- 测试hdfs
- 格式化文件系统:
$ bin/hdfs namenode -format - 启动namenode和datanode:
sbin/start-dfs.sh

浏览器中输入地址:http://swarm-manager:50070

- 测试文件上传

成功!
Yarn安装配置
- 修改配置文件
etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
- 修改配置文件:
etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>10000</value>
</property>
<property>
<name>yarn.scheduler.minimum-allocation-mb</name>
<value>3000</value>
</property>
</configuration>
容器的最小内存和最大内存分别为:3000m和10000m
3. 启动ResourceManager 和NodeManager :sbin/start-yarn.sh

4. 浏览器中输入http://swarm-manager:8088

启动成功!
配置Flink on Yarn
- 首先在
https://flink.apache.org/downloads.html#apache-flink-182下载对应的包

- 然后将
flink-shaded-hadoop-2-uber-2.6.5-7.0.jar拷贝至flink-1.8.2/lib/ - 测试运行
./bin/yarn-session.sh -n 1 -jm 1024m -tm 1024m



提交Flink作业
wget -O LICENSE-2.0.txt http://www.apache.org/licenses/LICENSE-2.0.txt./hdfs dfs -put ~/LICENSE-2.0.txt /提交到hdfs中./bin/flink run ./examples/batch/WordCount.jar --input hdfs://swarm-manager:9000/LICENSE-2.0.txt --output hdfs://swarm-manager:9000/wordcount-result.txt执行这个作业- 浏览器中查看

已经完成了一个作业了。 - 查看结果
./bin/hdfs dfs -ls /

./bin/hdfs dfs -text /wordcount-result.txt可以查看文件结果。
本文详细介绍了如何在Hadoop Yarn环境下部署Apache Flink集群,包括环境变量配置、软件安装步骤、关键配置参数说明及作业提交流程,为读者提供一份完整的Flink集群搭建指南。
1610

被折叠的 条评论
为什么被折叠?



