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 
相关推荐
Isaac_Necroptics16 小时前
Flink 1.19 Watermark源码分析
flink
根哥的博客1 天前
Flink on Yarn 任务启动后,暴露端口无授权访问漏洞,用iptables批量解决
大数据·flink·flink未授权访问
大大大大晴天️1 天前
Flink-Hudi技术实践:Insert场景开发实践
大数据·flink·hudi
大大大大晴天️1 天前
Flink技术实践-实时场景技术方案选型
大数据·flink·linq
liqianpin11 天前
SpringBoot集成Flink-CDC,实现对数据库数据的监听
数据库·spring boot·flink
D愿你归来仍是少年2 天前
Flink 并行度变更时 RocksDB 状态迁移的关键机制与原理
大数据·flink·apache
蓝魔Y2 天前
Flink—Sql接口
大数据·flink
zhojiew2 天前
使用flink agent框架实现流式情感分析的示例
大数据·flink·wpf
D愿你归来仍是少年2 天前
Apache Flink 中的 RocksDB 大状态存储 深度解析
大数据·flink
D愿你归来仍是少年4 天前
Apache Flink Checkpoint 与 Chandy-Lamport 算法深度解析
算法·flink·apache