Flink on yarn 本地部署摘要
说明:本地hadoop-3.1.3 、flink-1.13.5 1. 配置hadoop classpath变量 (vim ~/.bashrc 或者 vim /etc/profile) 建议也设置一下FLINK_HOME export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop export HADOOP_CLASSPATH=`${HADOOP_HOME}/bin/hadoop classpath` export PATH=${HADOOP_CONF_DIR}:${HADOOP_CLASSPATH}:$PATH 保存(执行 source ~/.bashrc 或者 source /etc/profile 生效) 2. 导出HADOOP_CLASSPATH为全局变量 export HADOOP_CLASSPATH=`${HADOOP_HOME}/bin/hadoop classpath` 3. 启动hadoop集群 可用 yarn top 命令查看yarn集群是否可以接受flink集群任务,没有报错信息则说明ok。 4. 启动 flink session (说明:我本地配置了flink的环境变量,相对路径即可) yarn-session.sh -jm 1024m -tm 1024m //
成功标志:
a) 命令行
b) flink dashboard(flink 任务管理界面)
5. 测试(向flink集群提交测试用例)
进入${FLINK_HOME}/examples/batch,执行 flink run WordCount.jar
6. 测试结果
7. 关闭flink session
yarn application -kill application_1641111466708_0006
关闭成功,查看
8. 遇到的问题
<1> Caused by: java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument(ZLjava/lang/String;Ljava/lang/Object;)V
原因:flink根目录lib路径下,没有guava*.jar,直接从${HADOOP_HOME}/share/hadoop/common/lib拷贝到${FLINK_HOME}/lib即可
<2>
9. 其它事项