Flink1.15搭建文档
1、Flink独立集群搭建
不需要依赖hadoop,独立搭建一个flink的集群
…
官网下载flink安装包
官网下载地址:https://flink.apache.org/downloads/#all-stable-releases
1、上传解压配置环境变量
#1、上传解压
tar -zxvf flink-1.15.4-bin-scala_2.12.tgz -C /usr/local/soft/
#2、配置环境变量
vim /etc/profile
export FLINK_HOME=/usr/local/soft/flink-1.15.4
export PATH=$PATH:$FLINK_HOME/bin
source /etc/profile
2、修改配置文件
# 1、进入flink配置文件所在的位置
cd /usr/local/soft/flink-1.15.4/conf
# 1、修改flink-conf.yaml
vim flink-conf.yaml
# 修改配置
jobmanager.rpc.address: master
jobmanager.bind-host: 0.0.0.0
taskmanager.bind-host: 0.0.0.0
taskmanager.host: localhost
taskmanager.numberOfTaskSlots: 4
rest.address: master
rest.bind-address: 0.0.0.0
# 2、修改masters
vim masters
# 修改配置
master:8081
# 3、修改workers
vim workers
# 修改配置
node1
node2
3、分发到所有的服务器
scp -r flink-1.15.4/ node1:`pwd`
scp -r flink-1.15.4/ node2:`pwd`
# 分发之后需要单独修改node1和node2中taskmanager.host
# node1中
vim flink-conf.yaml
taskmanager.host: node1
# node2中
vim flink-conf.yaml
taskmanager.host: node2
4、启动集群
# 在master中执行启动命令
start-cluster.sh
# web ui(网页UI页面)
http://master:8081
# 关闭集群
stop-cluster.sh
5、提交任务到flink独立集群运行
#命令行提交任务
#1、将代码打包上传到服务器
flink-1.0.jar
#2、提交flink任务
flink run -c com.shujia.flink.core.Demo4Submit flink-1.0.jar
# 在web页面提交任务
2、Flink on YARN
将flink任务提交到yarn上运行
将Standalone模式集群停止
1、启动hadoop
start-all.sh
2、配置hadoop classpath
# 修改/etc/profile
vim /etc/profile
# 在最后增加配置文件
export HADOOP_CLASSPATH=`hadoop classpath`
source /etc/profile
3、Flink on YARN三种模式
1、per job mode
1、类似spark on yarn 的client模式
2、如果任务执行出错,在本地可以看到部分错误信息
3、在本地执行main函数,构建dataFlow图,再将dataflow提交到JobManager中运行
4、每一个flink任务单独申请资源,启动一个jobManager和多个taskmanager,任务之间互不影响已经弃用
- 提交任务
flink run -t yarn-per-job -c com.shujia.flink.core.Demo4Submit flink-1.0.jar
# 杀掉yarn任务
yarn application -kill [appid]
2、appplication mode
1、类似spark on yarn 的cluster模式
2、在本地看不到错误信息
3、main函数在JobManager中执行,本地只负责提交任务
4、每一个flink任务单独申请资源,启动一个jobManager和多个taskmanager,任务之间互不影响用于生产环境,任务最终的上线
- 提交任务
flink run-application -t yarn-application -c com.shujia.flink.core.Demo1WordCount flink-1.0.jar
# 获取任务日志方式
yarn logs -applicationId application_1691044931290_0008
3、session mode
1、先在yarn中申请资源启动一个JobManager,再提交任务
2、提交的任务公用一个JobManager,动态申请taskManager,任务取消,taskManager会自动回收一般用于测试、调试
#1、启动session集群 -d表示后台启动
yarn-session.sh -d
#2、提交任务
flink run -t yarn-session -Dyarn.application.id=application_1701505594221_0002 -c com.shujia.flink.core.Demo01WordCount flink-1.0.jar
#2、在web页面中提交