flink1.13环境搭建

1、本地启动非集群模式

最简单的启动方式,其实是不搭建集群,直接本地启动。本地部署非常简单,直接解压安装包就可以使用,不用进行任何配置;一般用来做一些简单的测试。

具体安装步骤如下:

1.1 下载安装包

进入 Flink 官网,下载 1.13.0 版本安装包 flink-1.13.0-bin-scala_2.12.tgz,注意此处选用对

应 scala 版本为 scala 2.12 的安装包。

1.2 解压

在 node102 节点服务器上创建安装目录/app/apps/flink,将 flink 安装包放在该目录下,并

执行解压命令,解压至当前目录。

$ tar -zxvf flink-1.13.0-bin-scala_2.12.tgz

......

1.3 配置文件

看到 masters文件内容是localhost:8081,服务启动之后通过此地址可访问flink。

workers文件内容是localhost,表示单节点启动。

1.4 启动

进入解压后的目录,执行启动命令,并查看进程。

$ cd flink-1.13.0/

$ bin/start-cluster.sh

Starting cluster.

Starting standalonesession daemon on host node102.

Starting taskexecutor daemon on host node102.

$ jps

10369 StandaloneSessionClusterEntrypoint

10680 TaskManagerRunner

10717 Jps

1.5 访问 Web UI

启动成功后,访问 http://192.168.137.102:8081,可以对 flink 集群和任务进行监控管理,如图 3-2

所示。

2、集群搭建(会话模式)

Flink 本地启动非常简单,直接执行 start-cluster.sh 就可以了。如果我们想要扩展成集群,其实启动命令是不变的,主要是需要指定节点之间的主从关系。

Flink 是典型的 Master-Slave 架构的分布式数据处理框架,其中 Master 角色对应着JobManager,Slave 角色则对应 TaskManager。我们对三台节点服务器的角色分配如下表所示。

节点服务器 192.168.137.102 192.168.137.103 192.168.137.104
角色 JobManager TaskManager TaskManager

所以需要在另外两个节点上也安装flink。

2.1 下载并解压安装包

具体操作与上节相同。

2.2 修改集群配置

(1)进入 conf 目录下,修改 flink-conf.yaml 文件,修改 jobmanager.rpc.address 参数为
192.168.137.102,如下所示:

复制代码
$ cd conf/
$ vim flink-conf.yaml

# JobManager 节点地址 修改为如下内容
jobmanager.rpc.address: 192.168.137.102

这就指定了 192.168.137.102 节点服务器为 JobManager 节点。

(2)修改 workers 文件,将另外两台节点服务器添加为本 Flink 集群的 TaskManager 节点,具体修改如下:

复制代码
$ vim workers 

192.168.137.103
192.168.137.104

这样就指定了 192.168.137.103192.168.137.104 为 TaskManager 节点。

(3)另外,在 flink-conf.yaml 文件中还可以对集群中的 JobManager 和 TaskManager 组件进行优化配置,主要配置项如下:

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

2.3 分发安装目录

配置修改完毕后,将 Flink 安装目录发给另外两个节点服务器。

复制代码
./xsync.sh /app/apps/flink-1.13.0/ node103
./xsync.sh /app/apps/flink-1.13.0/ node104

2.4 启动集群

(1)在 node102 节点服务器上执行 start-cluster.sh 启动 Flink 集群:

复制代码
$ bin/start-cluster.sh 

# 输出内容
Starting cluster.
Starting standalonesession daemon on host hadoop102.
Starting taskexecutor daemon on host hadoop103.
Starting taskexecutor daemon on host hadoop104.

(2)查看进程情况:

复制代码
[root@node102 flink-1.13.0]$ jps
13859 Jps
13782 StandaloneSessionClusterEntrypoint

[root@node103 flink-1.13.0]$ jps
12215 Jps
32
33
12124 TaskManagerRunner

[root@node104 flink-1.13.0]$ jps
11602 TaskManagerRunner
11694 Jps

2.5 关闭集群

复制代码
/app/apps/flink-1.13.0/bin/stop-cluster.sh 
相关推荐
楠楠子呀1 天前
从零构建高性能 WhatsApp 链接生成器与重定向服务:架构与路由解析
redis·python·容器·架构·flink·散列表·flume
头茬韭菜1 天前
功能点 9:Flink Connector
大数据·flink·fluss
Faith_xzc2 天前
一条 SQL 顶一条 Flink 链路?Doris Streaming Job 持续导入全景解析
大数据·数据库·sql·flink
何升曜4 天前
Flink Slot 分配机制深度解析:从申请到部署的完整链路
flink
我变秃了也没变强5 天前
standalone模式部署flink集群
flink·apache
渣渣盟5 天前
Flink 流式写入文件终极指南:从 Row Format 到 Bucket 分区的深度剖析
大数据·flink
CIO_Alliance5 天前
AI算法系列(3)| 实时数据管道:CDC+Flink实现库存异动秒级响应
大数据·人工智能·flink
渣渣盟6 天前
Flink 写入 Redis 实战:数据模型选型、连接池调优与常见坑
大数据·redis·flink
渣渣盟7 天前
Flink + Kafka 数据写入实战:从API调用到端到端一致性精讲
flink·kafka·linq
TDengine (老段)11 天前
TDengine 第三方工具 — Telegraf、Kafka Connect、Flink、Spark
大数据·数据库·物联网·flink·kafka·时序数据库·tdengine