Flink项目实践 | Flink 单机安装部署

2022-08-22 10:41:48 浏览数 (1)

Apache Flink 是一个框架和分布式处理引擎,用于对无界和有界数据流进行有状态计算。Flink 被设计为在所有常见的集群环境中运行,以内存中速度和任何规模执行计算。

为了更深入的了解 Flink ,计划先搭建 Flink 运行环境。

Flink 可以在所有类似 UNIX 的环境中运行,即 Linux,Mac OS X 和 Cygwin(适用于Windows)。

由于服务器一般都是采用 Linux 系统,这里也采用 Linux 系统来模拟生产环境。Windosw 11 有一个很大的缺点是不支持 VMware 安装虚拟机(我姿势不对?),还好在应用商店提供了 Ubuntu 20.04 子系统可以安装使用,安装过程中也踩了一些坑。

Linux 系统环境具备之后,就可以开始 Flink 运行环境部署了,毫无疑问 Java 是必须的。Flink 中 Java 推荐版本是 Java 8 或 11。我选择的 Java8 。要检查安装的 Java 版本,请在终端中键入如下命令可以查看当前部署的 Java 版本:

代码语言:javascript复制
java -version

下载和安装

接下来就可以下载 Flink 文件包了,这里推荐下载二进制文件 flink-*-bin-scala*.tgz,因为二进制文件是编译之后的,可以直接用来部署。我这里选择最新版本 flink-1.14.3,由于 Apache 网站是国外的,下载速度通常会比较慢,我这里提供一个网盘下载地址:https://pan.baidu.com/s/1guQ4_va6VV00ktJLScmWew (提取码:1234)。

下载完成后,将 flink-1.14.3-bin-scala_2.11.tgz 文件解压至 /opt 目录下

代码语言:javascript复制
sudo tar -xzvf /mnt/d/bigdata/targz/flink-1.14.3-bin-scala_2.11.tgz -C /opt

修改 flink 目录的所属用户和所属组

代码语言:javascript复制
sudo chown -R datawhale:datawhale /opt/flink-1.14.3

查看项目目录

切换至 flink 目录并查看文件

代码语言:javascript复制
cd flink-1.14.3 && ls -l

可以看到如下结果

bin/ 目录存储二进制文件、bash 脚本 conf/ 目录存储配置文件,包括 flink-conf.yaml examples/ 目录存储示例应用程序

启动和关停本地集群

使用如下命令启动本地集群

代码语言:javascript复制
./bin/start-cluster.sh

使用如下命令查看 flink 运行状态

代码语言:javascript复制
ps aux | grep flink

还可以在浏览器输入 localhost:8081 以访问其 web UI 界面。

使用如下命令关停本地集群

代码语言:javascript复制
./bin/stop-cluster.sh

提交作业并查看运行情况

Flink 提供了 CLI tool bin/flink 来运行 jar 包并控制其运行。

所谓提交作业就是指将作业的 jar 包和相关依赖项上传到正在运行的 Flink 集群并执行它。

这里以示例应用程序 WordCount 进行演示。(首先要启动 flink 集群)

执行如下命令以执行 WordCount 程序:

代码语言:javascript复制
./bin/flink run examples/streaming/WordCount.jar

执行如下命令查看运行结果:

代码语言:javascript复制
root@LAPTOP-G7SR3KNT:/opt/flink-1.14.3# tail log/flink-*-taskexecutor-*.out
(nymph,1)
(in,3)
(thy,1)
(orisons,1)
(be,4)
(all,2)
(my,1)
(sins,1)
(remember,1)
(d,4)

此外,可以再次登录 web UI 查看集群状态和作业运行情况。

还可以查看作业执行的时间线等信息。

小结

本文介绍了 Flink 的下载和安装部署、集群的启动和关停,以及一个完整作业的提交和查看流程

0 人点赞