01 本地模式安装 Flink

1.1 软件包下载

为了运行Flink,只需提前安装好 Java 8 或者 Java 11。可以通过以下命令来检查 Java 是否已经安装正确,如果没有的话,需要先安装 JDK。

java -version

官方下载地址 下载对应版本并解压

tar -xzvf flink-1.14.0-bin-scala_2.11.tgz -C ~/soft/
cd ~/soft/flink-1.14.0/
1.2 启动和停止 Flink 集群

Flink 附带了一个 bash 脚本,可以用于启动本地集群

(base) ➜ ./bin/start-cluster.sh
Starting cluster.
Starting standalonesession daemon on host he-sse.
Starting taskexecutor daemon on host he-sse.

完成后,可以使用 bash 脚本快速停止集群和所有正在运行的组件

(base) ➜  ./bin/stop-cluster.sh
Stopping taskexecutor daemon (pid: 111900) on host he-sse.
Stopping standalonesession daemon (pid: 111620) on host he-sse.
1.3 测试 Flink 提交作业

启动 Flink 之后可以使用浏览器访问 8081 端口进入 Flink Web 页面

localhost:8081

在这里插入图片描述

也可以提交 flink 提供的作业样例测试 Flink

# 运行测试样例
./bin/flink run examples/streaming/WordCount.jar
# 查看测试结果
tail log/flink-wang-taskexecutor-0-he-sse.out

在这里插入图片描述

1.4 为 Flink 添加快捷命令

进入环境变量配置文件

sudo vim ~/.bashrc
# 如果不是用的 bash 而是 zsh 那么在 ~/.zshrc 中修改

在文件末尾添加如下内容,通过 alias 简化文件命令操作

alias start-flink='~/soft/flink-1.14.0/bin/start-cluster.sh'
alias stop-flink='~/soft/flink-1.14.0/bin/stop-cluster.sh'
alias flink='~/soft/flink-1.14.0/bin/flink'

运行如下命令使快捷命令生效

source ~/.bashrc

02 PyFlink 安装

随着人工智能技术的蓬勃发展,Python 语言有着越来越广泛的影响力。从 Flink 1.9 开始,Apache Flink 社区开始在原有的 Java、Scala、SQL 等编程语言的基础之上,提供对于 Python 语言的支持。经过多个版本的开发,目前 PyFlink API 的功能已经日趋完善,可以满足绝大多数情况下 Python 用户的需求。

2.1 安装 Python

PyFlink 仅支持 Python 3.5+,您首先需要确认您的开发环境是否已安装了 Python 3.5+,如果没有的话,需要先安装 Python 3.5+。

推荐使用 anaconda 来搭建 python 环境,使用anaconda可以与系统环境隔离、便于管理多个 python 虚拟环境

网上很容易找到 anaconda 安装教程,请自行安装。

anaconda 被用来管理 Python 第三方库,常用的包管理命令和虚拟环境管理命令如下:

2.1.1 Anaconda 常用命令
  • 查看安装了哪些包
conda list
  • 查看当前存在哪些虚拟环境
conda env list 
conda info -e
  • 检查更新当前conda
conda update conda
2.1.2 Anaconda 虚拟环境管理
  • 创建 Python 虚拟环境
conda create -n your_env_name python=x.x
# anaconda命令创建python版本为x.x,名字为your_env_name的虚拟环境。your_env_name文件可以在Anaconda安装目录envs文件下找到
  • 激活或者切换虚拟环境
# 打开命令行,输入python --version检查当前 python 版本。
Linux:  source activate your_env_nam
Windows: activate your_env_name
  • 对虚拟环境中安装额外的包
conda install -n your_env_name [package]
  • 关闭虚拟环境(即从当前环境退出返回使用PATH环境中的默认python版本)
deactivate env_name
# 或者`activate root`切回root环境
Linux下:source deactivate 
  • 删除虚拟环境
conda remove -n your_env_name --all
  • 删除环境钟的某个包
conda remove --name $your_env_name  $package_name 
2.2 安装 JDK

即使是使用 Python 语言使用 Flink,在执行 Flink 作业时还是依赖于 JDK。所以使用 PyFlink 也需要 JDK 环境,JDK 8 或者 JDK 11 版本都可以。

2.3 安装 PyFlink

创建并启动 flink 虚拟环境

conda create -n flink python=3.8
source activate flink

安装第三方依赖包,依赖包列表 requirements.txt 内入如下:

apache-flink>=1.13.2
kafka-python>=2.0.2
redis>=3.5.3

在 flink 虚拟环境中下载并安装 pyflink 和其他依赖环境

source activate flink
pip install -r requirements.txt

参考资料

Flink 官方文档:本地模式安装

如何从 0 到 1 开发 PyFlink API 作业

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐