Flink on Yarn + Dinky + Dolphinscheduler 系列一
目前采用下列环境清单进行构建
linux(centos7.x)、mysql5.7
flink1.17.1(下载地址:https://dlcdn.apache.org/flink/flink-1.17.1/flink-1.17.1-bin-scala_2.12.tgz)
海豚调度3.1.4(下载地址:https://dolphinscheduler.apache.org/zh-cn/download/deployment?t=standalone)(部署手册:https://dolphinscheduler.apache.org/zh-cn/docs/3.1.7/部署指南_menu)
dinky0.7.3(下载地址:http://www.dlink.top/download/dinky-0.7.3)(部署手册:http://www.dlink.top/docs/next/deploy_guide/build)
doris1.2.5(官方已下掉1.2.5,可以使用其他版本)(https://archive.apache.org/dist/doris/1.2/1.2.5-rc01/)
hadoop3.2.4(下载地址:https://dlcdn.apache.org/hadoop/common/hadoop-3.2.4/hadoop-3.2.4.tar.gz)
此文章前提:Doris、海豚调度、dinky已经按照官网单机部署手册部署成功启动。计划采用Yarn Application方式 提交flink任务,所以先保证yarn环境安装可用。
一、Hadoop、Yarn环境
1.上传hadoop3.2.4安装包,解压后删除,如下图
2.增加hadoop环境变量
vi /etc/profile
3.修改/home/db/hadoop/hadoop-3.2.4/etc/hadoop路径下三个文件(core-site.xml、hdfs-site.xml、yarn-site.xml)
文件1:core-site.xml
文件2:hdfs-site.xml
文件3:yarn-site.xml
4.初始化namenode
cd /home/db/hadoop/hadoop-3.2.4/bin
hdfs namenode -format
"hdfs namenode -format" 是用于格式化 Hadoop 分布式文件系统(HDFS)中的 NameNode 的命令。格式化 NameNode 会初始化文件系统的元数据,并创建初始的目录结构。通常在初始设置 HDFS 时或者想要从零开始时执行此操作。但是,请注意,格式化 NameNode 将删除 HDFS 中存储的所有数据,因此应谨慎使用。建议在执行此操作之前备份任何重要数据。
下图即为成功
5.在sbin目录下执行启动命令分别执行namenode、datanode、secondarynamenode
cd /home/db/hadoop/hadoop-3.2.4/sbin
# 启动命令
hdfs --daemon start namenode
hdfs --daemon start datanode
hdfs --daemon start secondarynamenode
#对应关闭命令
hdfs --daemon stop namenode
hdfs --daemon stop datanode
hdfs --daemon stop secondarynamenode
使用jps命令查看 如下图 即启动成功
6.在sbin目录下,启动yarn
cd /home/db/hadoop/hadoop-3.2.4/sbin
./start-yarn.sh
如果启动没有看到错误提示,可以尝试jps命令查看如下图 即为成功
如果有错误提示可以参考下面几点问题,是否有相同的
报错例1
#启动失败报错如上图,需要修改start-yarn.sh、stop-yarn.sh,增加如下图配置
报错例2:jps命令查看,发现nodemanager没有启动成功。可以看到两个问题
问题1:修改 /etc/hostname,增加配置
vi /etc/hostname
问题2:是与SSH连接相关的权限问题
1.生成SSH密钥对,命令执行完,直接回车 默认即可。默认情况下,它将保存在 /root/.ssh/id_rsa 文件中。
ssh-keygen -t rsa -P ""
2.然后将公钥添加到 authorized_keys 文件中:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
3.编辑SSH配置文件 /etc/ssh/sshd_config ,设置:
PasswordAuthentication yes
PubkeyAuthentication yes
4.重启SSH服务
systemctl restart sshd
报错例3 :提示没有配置JAVA_HOME,但是已经配置完成了,修改hadoop-env.sh
cd /home/db/hadoop/hadoop-3.2.4/etc/hadoop
vi hadoop-env.sh
增加以下配置(具体参考自己本地的jdk环境变量)
7.通过Flink安装路径下的demo测试yarn环境是否成功
cd /home/app/flink-1.17.1
./bin/flink run -m yarn-cluster ./examples/batch/WordCount.jar
如果遇到./bin/flink权限不足,针对文件进行授权即可
chmod +x ./bin/flink
如果遇到类似 'classloader.check-leak-classloader'的错误,可以在flink的配置文件flink-conf.yaml中增加以下配置项
classloader.check-leaked-classloader: false
出现下图类似情况,即成功运行了demo
至此,Flink on Yarn环境 部署、测试完成。
未完待续,如有问题 欢迎指正
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)