Flink on Yarn集群搭建(三)--- Flink集群搭建 Session Cluster模式

Flink on Yarn-Session Cluster模式

介绍

Session Cluster 方式是提前确定资源,初始化一个Flink集群,之后提交的任务都会由这个Flink集群来处理,集群会一直存活;当提交任务时,会竞争资源,如果空闲资源不够,任务就会失败;任务结束自动释放资源;

1. 准备工作

1.确保各服务器已安装并配置了Java环境,我使用的是jdk1.8
2.已完成hadoop集群搭建
3.下载已下文件

2. Flink配置

a. 解压缩下好的Flink包解压缩

使用命令 ---- tar -zxvf 压缩包 目标文件夹

b. 修改配置
1. 配置Flink环境变量

使用命令 ---- vim /etc/profile 添加flink环境变量

#flink
export FLINK_HOME=/opt/flink/flink-1.16.0
export PATH=$PATH:$FLINK_HOME/bin

2. 将之前准备好的俩Jar包放到lib下

否则启动时候会有这两种错误

1. java.lang.NoClassDefFoundError: org/apache/hadoop/yarn/exceptions/YarnException
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/yarn/exceptions/YarnException
	at java.lang.Class.getDeclaredMethods0(Native Method)
	at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
	at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
	at java.lang.Class.getMethod0(Class.java:3018)
	at java.lang.Class.getMethod(Class.java:1784)
	at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:650)
	at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:632)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.yarn.exceptions.YarnException
	at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
	... 7 more
2. NoSuchMethodError: org.apache.commons.cli.Option.builder(Ljava/lang/String;)Lorg/apache/commons/cli/Option$Builder
java.lang.NoSuchMethodError: org.apache.commons.cli.Option.builder(Ljava/lang/String;)Lorg/apache/commons/cli/Option$Builder;
	at org.apache.flink.yarn.cli.FlinkYarnSessionCli.<init>(FlinkYarnSessionCli.java:230)
	at org.apache.flink.yarn.cli.FlinkYarnSessionCli.<init>(FlinkYarnSessionCli.java:156)
	at org.apache.flink.yarn.cli.FlinkYarnSessionCli.main(FlinkYarnSessionCli.java:853)

3. yarn session模式启动

在bin目录下使用命令 ---- nohup ./yarn-session.sh -s 2 -jm 256 -nm 256 & 后台模式启动

4. 查看启动是否成功

a. 使用jps命令查看是否有了Flink进程

在这里插入图片描述

b. 查看启动输出日志,获取application_id,在Application页面查看

在这里插入图片描述
在这里插入图片描述

c. 点击该application最右侧tracking ui跳转Flink ui界面

在这里插入图片描述

在这里插入图片描述

c. 提交任务,查看运行情况

1. 提交任务

提前准备好Flink任务,使用命令;
application.id 换成自己的;
com.flink.workCountTable_datagen 为我的执行类 ;
/opt/original-flink_learn-0.0.1-SNAPSHOT.jar 为我的jar包路径

./flink run -t yarn-session -Dyarn.application.id=application_1673229962292_0010 -d -c com.flink.workCountTable_datagen /opt/original-flink_learn-0.0.1-SNAPSHOT.jar --port 9000

在这里插入图片描述

2. 在Flink UI界面查看执行情况

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值