欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

第 5 节 Flink on yarn的两种方式

程序员文章站 2022-06-16 17:29:49
...

上篇:第 4 节 Flink standalone集群安装部署


如图所示:
第 5 节 Flink on yarn的两种方式

1、Flink on Yarn 的两种使用方式

第一种【yarn-session.sh(开辟资源)+flink run(提交任务)】

(1)修改etc/hadoop/yarn-site.xml

//添加参数
<property>  
    <name>yarn.nodemanager.vmem-check-enabled</name>  
    <value>false</value>  
</property>  

(2)修改后的文件,拷贝文件到其他机器上

[root@Flink105 hadoop-2.7.2]# scp -rq etc/hadoop/yarn-site.xml flink106:/opt/hadoop/module/hadoop-2.7.2/etc/hadoop/

[root@Flink105 hadoop-2.7.2]# scp -rq etc/hadoop/yarn-site.xml flink107:/opt/hadoop/module/hadoop-2.7.2/etc/hadoop/

(3)启动hadoop集群

[root@Flink105 hadoop-2.7.2]# sbin/start-all.sh 

(4)启动一个一直运行的flink集群

[root@Flink105 flink-1.7.0]# ./bin/yarn-session.sh -n 2 -jm 1024

启动加载图:
第 5 节 Flink on yarn的两种方式
访问:http://flink106:33122
第 5 节 Flink on yarn的两种方式
当然也可以访问:http://flink105:8088
第 5 节 Flink on yarn的两种方式
第 5 节 Flink on yarn的两种方式

//查看进程日志
[root@Flink105 hadoop-2.7.2]# jps -l
9505 org.apache.hadoop.hdfs.server.namenode.NameNode
10721 sun.tools.jps.Jps
9634 org.apache.hadoop.hdfs.server.datanode.DataNode
10611 org.apache.flink.yarn.cli.FlinkYarnSessionCli
9959 org.apache.hadoop.yarn.server.resourcemanager.ResourceManager
10073 org.apache.hadoop.yarn.server.nodemanager.NodeManager
8349 org.apache.flink.runtime.entrypoint.StandaloneSessionClusterEntrypoint
9806 org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode

当然,我们可以通过yarn来停止它们job工作进程

[root@Flink105 flink-1.7.0]# yarn application -kill application_1583504611835_0001

20/03/06 14:40:08 INFO client.RMProxy: Connecting to ResourceManager at Flink105/192.168.219.115:8032
Killing application application_1583504611835_0001
20/03/06 14:40:09 INFO impl.YarnClientImpl: Killed application application_1583504611835_0001
[root@Flink105 flink-1.7.0]# 

第 5 节 Flink on yarn的两种方式


2、第二种方式(推荐)

(1)使用这种方式,建议执行这个命令放在后台

//防止窗口关闭后,就停止服务
[root@Flink105 flink-1.7.0]# ./bin/yarn-session.sh -n 2 -jm 1024 -tm 1024 -d

加载的信息:
第 5 节 Flink on yarn的两种方式
访问页面:http://flink105:8088
第 5 节 Flink on yarn的两种方式
跳转至
第 5 节 Flink on yarn的两种方式

我们执行这条命令:
第 5 节 Flink on yarn的两种方式

[root@Flink105 flink-1.7.0]# ./bin/yarn-session.sh -id Application application_1583504611835_0001

发现退出命令,这个Web页面还在
访问:http://flink105:8088
第 5 节 Flink on yarn的两种方式

(2)查看本机磁盘hdfs文件有哪些

[root@Flink105 flink-1.7.0]# hdfs  dfs -ls /
Found 1 items
drwxr-xr-x   - root supergroup          0 2020-03-06 14:25 /user

(3)将LICENSE文件上传到hdfs的根目录上

[root@Flink105 flink-1.7.0]# hdfs dfs -put LICENSE /
[root@Flink105 flink-1.7.0]# 

(4)执行任务(开辟资源+提交任务)

[root@Flink105 flink-1.7.0]# ./bin/flink run ./examples/batch/WordCount.jar -input hdfs://flink105:9000/LICENSE -output hdfs://flink105:9000/wordcount-result.txt 

第 5 节 Flink on yarn的两种方式
访问:http://flink105:8088
第 5 节 Flink on yarn的两种方式
跳转至
第 5 节 Flink on yarn的两种方式

(5)查看配置信息:
第 5 节 Flink on yarn的两种方式

[root@Flink105 flink-1.7.0]# more /tmp/.yarn-properties-root

#Generated YARN properties file
#Fri Mar 06 14:51:34 GMT 2020
parallelism=2
dynamicPropertiesString=
applicationID=application_1583504611835_0002
[root@Flink105 flink-1.7.0]# 

注意:client端必须要设置YARN_CONF_DIR或者HADOOP_CONF_DIR或者HADOOP_HOME环境变量,通过这个环境变量来读取YARN和HDFS的配置信息,否则启动会失败

(6)启动

[root@Flink105 flink-1.7.0]# ./bin/flink run -m yarn-cluster -yn 2 -yjm 1024 ./examples/batch/WordCount.jar

加载过程:
第 5 节 Flink on yarn的两种方式
第 5 节 Flink on yarn的两种方式
第 5 节 Flink on yarn的两种方式
访问:http://flink105:8088
第 5 节 Flink on yarn的两种方式


3、./bin/flink run 命令分析

run [OPTIONS]
“run” 操作参数:
-c,–class 如果没有在jar包中指定入口类,则需要在这里通过这个参数指定
-m,–jobmanager host:port 指定需要连接的jobmanager(主节点)地址,使用这个参数可以指定一个不同于配置文件中的jobmanager
-p,–parallelism 指定程序的并行度。可以覆盖配置文件中的默认值。
默认查找当前yarn集群中已有的yarn-session信息中的jobmanager【/tmp/.yarn-properties-root】:
./bin/flink run ./examples/batch/WordCount.jar -input hdfs://hostname:port/hello.txt -output hdfs://hostname:port/result1
连接指定host和port的jobmanager:
./bin/flink run -m hadoop100:1234 ./examples/batch/WordCount.jar -input hdfs://hostname:port/hello.txt -output hdfs://hostname:port/result1
启动一个新的yarn-session:
./bin/flink run -m yarn-cluster -yn 2 ./examples/batch/WordCount.jar -input hdfs://hostname:port/hello.txt -output hdfs://hostname:port/result1
注意:yarn session命令行的选项也可以使用./bin/flink 工具获得。它们都有一个y或者yarn的前缀
例如:./bin/flink run -m yarn-cluster -yn 2 ./examples/batch/WordCount.jar

相关标签: Flink入门实战