部署前环境准备(基本的环境变量配置这里就不赘述了)
jdk8和flink-1.14.0-bin-scala_2.12
我这里准备了四台服务器,分别为node100~node103
将安装包上传至各个服务器上并解压
直接进入正题
第一步 修改flink-conf.yaml配置文件
jobmanager.rpc.address: node100 //JobManager地址
jobmanager.rpc.port: 6123 //JobManagerRPC通信端口
jobmanager.heap.size: 1024m //JobManager所能使用的堆内存大小
taskmanager.heap.size: 1024m //TaskManager所能使用的堆内存大小
taskmanager.numberOfTaskSlots: 2//TaskManager管理的TaskSlot个数,依据当前物理机的 核心数来配置,一般预留出一部分
核心(25%)给系统及其他进程使用,一个核心数来配置,一般预留出一部分核心(25%)给系统及
其他进程使用,一个 slot对应一个core。如果core支持超线程,那么slot个数*2
rest.port: //8081 指定WebUI的访问端口
修改slaves配置文件
node101
node102
node103
将修改内容同步到其他三台服务器
在node100上配置环境变量
vim ~/.bashrc
export FLINK_HOME=/opt/software/flink/flink-1.9.2
export PATH=$PATH:$FLINK_HOME/bin
source ~/.bashrc
启动standalone 集群
启动集群:start-cluster.sh
关闭集群:stop-cluster.sh
查看Flink Web UI页面
http://node100:8081/ 可通过rest.port参数自定义端口
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cRx7KmrC-1639910848085)(http://www.xulucheng.com/upload/2021/12/image-4ae009836fa248908e2cd7e10b50b7bb.png)]
提交任务到flink集群
常用提交任务的方式有两种,分别是命令提交和Web页面提交
命令提交
flink run -c com.msb.stream.WordCount StudyFlink-1.0-SNAPSHOT.jar
-c 指定主类
-d 独立运行、后台运行
-p 指定并行度
代码贴出,很简单
webUI 提交
在Web中指定Jar包的位置、主类路径、并行数等
web.submit.enable: true一定是true,否则不支持Web提交Application
大工告成,简单的standalone模式集群部署验证完毕