0


Flink1.20.0安装

Flink1.20.0安装

1.前置条件

  1. 服务器:3台,1主2从,centos7IPhostname说明192.168.108.137centos137master192.168.108.138centos138node192.168.108.139centos139node三台服务之间能通过hostname访问# hostname修改hostnamectl set-hostname centos137#三台修改hosts文件,添加以下命令192.168.108.137 centos137192.168.108.138 centos138192.168.108.139 centos139#重启reboot

2.解压安装包

安装路径(可选)

上传安装包至:/home/data/flink/

若没该路径,执行

mkdir -p /home/data/flink/

tar -zxvf flink-1.20.0-bin-scala_2.12.tgz

国内镜像地址:Index of /apache/flink/flink-1.20.0 (tsinghua.edu.cn)

配置文件变更说明:

从 Flink 1.19 开始,Flink 正式全面支持标准 YAML 1.2 语法。默认配置文件已改为 config.yaml ,放置在 conf/directory 中。如果用户想使用传统的配置文件 flink-conf.yaml ,只需将该文件复制到 conf/directory 中即可。一旦检测到传统配置文件 flink-conf.yml ,Flink 就会优先使用它作为配置文件。而在即将推出的 Flink 2.0 中, flink-conf.yaml 配置文件将不再起作用。

以上来至:官宣|Apache Flink 1.19 发布公告-阿里云开发者社区 (aliyun.com)

3.修改配置

vim /home/data/flink/flink-1.20.0/conf/config.yaml

以master为例,其他node同理。

注意node的jobmanager.rpc.address必须为master的hostname,否则master的jobmanager无法识别到Task Slots

如下:

jobmanager:bind-host: 0.0.0.0 # 改动点rpc:address: centos137  # 改动点,master服务器的hostnameport:6123memory:process:size: 1600m
  execution:failover-strategy: region
taskmanager:bind-host: 0.0.0.0  # 改动点host: centos137  # 改动点,所在服务器的hostnamenumberOfTaskSlots:1memory:process:size: 1728m

其他配置修改参考(性能调优):

  • jobmanager.memory.process.size:对JobManager进程可使用到的全部内存进行配置,包括JVM元空间和其他开销,默认为1600M,可以根据集群规模进行适当调整。
  • taskmanager.memory.process.size:对TaskManager进程可使用到的全部内存进行配置,包括JVM元空间和其他开销,默认为1728M,可以根据集群规模进行适当调整。
  • taskmanager.numberOfTaskSlots:对每个TaskManager能够分配的Slot数量进行配置,默认为1,可根据TaskManager所在的机器能够提供给Flink的CPU数量决定。所谓Slot就是TaskManager中具体运行一个任务所分配的计算资源。

parallelism.default:Flink任务执行的并行度,默认为1。优先级低于代码中进行的

检查8081端口是否被占用,若有,替换为合适的

nestat -apn|grep8081#或者lsof-i:8081

修改masters和workers(三台服务器)

[root@centos137 conf]# cat masters 
centos137:8081
[root@centos137 conf]# cat workers 
centos137
centos138
centos139

4.目录授权

将安装目录的权限赋予ssh免登录用户

参考:hadoop集群搭建-CSDN博客 的目录授权章节

chown-R hadoop:hadoop /export/

没有此步骤需要启动时需要输入服务器密码

5.集群启停

切换到免登录用户

su hadoop

启动:

[hadoop@centos137 bin]$ /home/data/flink/flink-1.20.0/bin/start-cluster.sh 
Starting cluster.
Starting standalonesession daemon on host centos137.
Starting taskexecutor daemon on host centos137.
Starting taskexecutor daemon on host centos138.
Starting taskexecutor daemon on host centos139.

停止:

[hadoop@centos137 bin]$ /home/data/flink/flink-1.20.0/bin/stop-cluster.sh 
Stopping taskexecutor daemon (pid: 12142) on host centos137.
Stopping taskexecutor daemon (pid: 14316) on host centos138.
Stopping taskexecutor daemon (pid: 16430) on host centos139.
Stopping standalonesession daemon (pid: 11536) on host centos137.

6.访问Web UI

http://192.168.108.137:8081

正常情况,界面

Available Task Slots 显示3个(取决与taskmanager.numberOfTaskSlots的个数)

开发测试环境完成以上步骤即可,集群以Standalone模式运行


以下内容为生产环境应该使用的运行模式

7.YARN运行模式

YARN上部署的过程是:客户端把Flink应用提交给Yarn的ResourceManager,Yarn的ResourceManager会向Yarn的NodeManager申请容器。在这些容器上,Flink会部署JobManager和TaskManager的实例,从而启动集群。Flink会根据运行在JobManger上的作业所需要的Slot数量动态分配TaskManager资源。

1.前置条件

将Flink任务部署至YARN集群之前,需要确认集群是否安装有Hadoop,保证Hadoop版本至少在2.2以上,并且集群中安装有HDFS服务。

参考:hadoop集群搭建-CSDN博客

2.配置(所有节点)

配置环境变量

vim /etc/profile

增加环境变量配置如下:

# ---- hadoop ----exportHADOOP_HOME=/export/servers/hadoop-3.3.6
exportPATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
#Flink YARN运行模型需要exportHADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop
exportHADOOP_CLASSPATH=`hadoop classpath`

配置生效

source /etc/profile

启动Hadoop集群,包括HDFS和YARN。

采用合适的模式允许应用:

3.会话模式部署(不推荐)

执行脚本命令向YARN集群申请资源,开启一个YARN会话,启动Flink集群。

容易出现资源竞争现象,导致任务失败

 bin/yarn-session.sh -nmtest

可用参数解读:

l -d:分离模式,如果你不想让Flink YARN客户端一直前台运行,可以使用这个参数,即使关掉当前对话窗口,YARN session也可以后台运行。

l -jm(–jobManagerMemory):配置JobManager所需内存,默认单位MB。

l -nm(–name):配置在YARN UI界面上显示的任务名。

l -qu(–queue):指定YARN队列名。

-tm(–taskManager):配置每个TaskManager所使用内存。

4.单作业模式部署(开发过程使用)

  • Flink的Standalone集群并不支持单作业模式部署。因为单作业模式需要借助一些资源管理平台。
  • 在YARN环境中,由于有了外部平台做资源调度,所以我们也可以直接向YARN提交一个单独的作业,从而启动一个Flink集群。执行任务命令eg:bin/flink run -d-t yarn-per-job -c com.demo.HelloWord HelloWord.jar-c 后的参数:1.任务的完整类名称1. jar包名称

推荐使用 Flink Web UI页面进行监控
在命令行中查看或取消作业

bin/flink list -t yarn-per-job -Dyarn.application.id=application_XXXX_YY

bin/flink cancel -t yarn-per-job -Dyarn.application.id=application_XXXX_YY <jobId>

5.应用模式部署(推荐)

应用模式同样非常简单,与单作业模式类似,直接执行flink run-application命令即可

执行任务命令eg:

bin/flink run-application -t yarn-application -c com.demo.HelloWord HelloWord.jar

推荐使用 Flink Web UI页面进行监控

在命令行中查看或取消作业

bin/flink list -t yarn-application -Dyarn.application.id=application_XXXX_YY

bin/flink cancel -t yarn-application -Dyarn.application.id=application_XXXX_YY <jobId>

本文参考:Flink 1.19.1 standalone 集群模式部署及配置-CSDN博客

标签: flink

本文转载自: https://blog.csdn.net/admin_cx/article/details/140914929
版权归原作者 admin_cx 所有, 如有侵权,请联系我们删除。

“Flink1.20.0安装”的评论:

还没有评论