alreadyFlink

Apache Flink——快速部署集群

2022-06-16  本文已影响0人  小波同学

前言

需要提到 Flink 中的几个关键组件:客户端(Client)、作业管理器(JobManager)和任务管理器(TaskManager)。编写的代码,实际上是由客户端获取并做转换,之后提交给JobManger 的。所以 JobManager 就是 Flink 集群里的“管事人”,对作业进行中央调度管理;而它获取到要执行的作业后,会进一步处理转换,然后分发任务给众多的TaskManager。这里的 TaskManager,就是真正“干活的人”,数据的处理操作都是它们来做的。

一、集群部署

1.1 环境配置

Flink 安装部署的学习时,需要准备 3 台 Linux 机器。具体要求如下:

1.2 集群节点

节点服务器 hadoop102 hadoop103 hadoop104
ip 192.168.10.102 192.168.10.103 192.168.10.104
角色 JobManager TaskManager TaskManager

1.3 下载并解压安装包

进入 Flink 官网,下载 1.13.0 版本安装包 flink-1.13.0-bin-scala_2.12.tgz,注意此处选用对应 scala 版本为 scala 2.12 的安装包。
https://flink.apache.org/zh/downloads.html

[root@hadoop102 flink]$ tar -zxvf flink-1.13.0-bin-scala_2.12.tgz -C /opt/module/
[root@hadoop102 flink-1.13.0]$ cd /opt/module/flink-1.13.0
[root@hadoop102 flink-1.13.0]$ cd /conf
[root@hadoop102 conf]$ vim flink-conf.yaml
# jobManager 的IP地址
jobmanager.rpc.address: 主机名

# 每个TaskManager 提供的任务 slots 数量大小
# 它的意思是当前task能够同时执行的线程数量 (实际生产环境建议是CPU核心-1,这里笔者写2)
taskmanager.numberOfTaskSlots: 2
hadoop102:8081
hadoop103
hadoop104

*7、分发其他机器

[root@hadoop102 conf]$ xsync /opt/module/flink-1.13.0
[root@hadoop102 flink-1.13.0]$ bin/start-cluster.sh 
[root@hadoop102 flink-1.13.0]$ bin/stop-cluster.sh 

二、向集群提交作业

三、命令行提交

命令行启动作业之前,首先开启Flink集群, 之后将端口打开,将 jar 包放入 Linux中,最后输入如下命令

bin/flink run \
-m hadoop102:8081 \
-c com.hao.wc.StreamWordCount ./Flink_1.13-1.0-SNAPSHOT.jar

这里的参数 –m 指定了提交到的 JobManager,-c 指定了入口类。

用 netcat 输入数据,可以在 TaskManager 的标准输出(Stdout)看到对应的统计结果

参考:
https://blog.csdn.net/weixin_45417821/article/details/124037866

上一篇下一篇

猜你喜欢

热点阅读