flink1.12.x:session cluster模式部署 作者:马育民 • 2021-12-23 19:11 • 阅读:10288 与 [flink1.12.x:per-job cluster模式(yarn-cluster)部署](https://www.malaoshi.top/show_1IX2OC9eHGnH.html "flink1.12.x:per-job cluster模式(yarn-cluster)部署") 相同 # 准备 部署好 hadoop 集群 ### 注意 需要启动 yarn,命令如下: ``` /program/bin/hadoop.sh start ``` # 登录 hadoop1 登录 `hadoop1` ,执行下面操作 # 上传 将 `flink-1.12.5-bin-scala_2.12.tgz` 上传到 `hadoop1` 的 `/program` 目录 # 解压缩 `root` 用户执行下面命令: ``` tar zxvf flink-1.12.5-bin-scala_2.12.tgz --no-same-owner ``` # 配置环境变量 ### 修改 bigdata_env.sh ``` vim /etc/profile.d/bigdata_env.sh ``` ### 增加 hadoop 配置目录 增加下面内容: ``` export HADOOP_CONF_DIR=/program/hadoop-3.0.3/etc/hadoop ``` 必须加上下面环境变量: ``` export HADOOP_CLASSPATH=`hadoop classpath` ``` 否则报错如下: [![](https://www.malaoshi.top/upload/pic/flink/Snipaste_2021-12-26_19-00-43.png)](https://www.malaoshi.top/upload/pic/flink/Snipaste_2021-12-26_19-00-43.png) ### 增加 FLINK_HOME ``` # 配置 FLINK_HOME export FLINK_HOME=/program/flink-1.12.5 export PATH=${FLINK_HOME}/bin:$PATH ``` ### 立即生效 ``` source /etc/profile ``` # 修改 conf/flink-conf.yaml **注意:** - 是 `yaml` 文件 - yaml文件 `:` **后面必须有空格**,否则报错 ``` vim conf/flink-conf.yaml ``` ### taskmanager.numberOfTaskSlots 找到下面配置,修改如下: ``` taskmanager.numberOfTaskSlots: 2 ``` 相当于 taskmanager 有 `2` 个线程执行 **注意:**要根据 yarn 资源配置。该值不要轻易改大,否则可能会因为虚拟机配置低,导致 只能启动 `yarn-session.sh`,但 提交 flink 任务时,无法申请 slots ### 修改(可略) 在 flink 配置文件里 flink-conf.yaml设置 ``` classloader.check-leaked-classloader: false ``` 可能报错: ``` Exception in thread "Thread-7" java.lang.IllegalStateException: Trying to access closed classloader. Please check if you s tore classloaders directly or indirectly in static fields. If the stacktrace suggests that the leak occurs in a third part y library and cannot be fixed immediately, you can disable this check with the configuration 'classloader.check-leaked-cla ssloader'. ``` 原文出处:http://malaoshi.top/show_1IX2SbheZ7fI.html