Flink本地模式安装详解

1. 概述

Apache Flink 支持多种安装和运行模式,主要可以分为以下几种:

  • Local(本地)模式
    • 这种模式主要用于学习和测试,所有的 Flink 组件都会在同一个 JVM 进程中运行。这种方式非常适合初学者了解 Flink 的基本概念和操作。
  • Standalone(独立集群)模式
    • 这种模式下,Flink 自身作为一个独立的集群运行,适合用于开发和测试环境。它包括了一个或多个 JobManager 节点和多个 TaskManager 节点,每个节点都是独立的进程。
    • Standalone HA(高可用性)模式:这是 Standalone 模式的扩展,提供了 JobManager 的高可用性,确保即使某个 JobManager 节点失败,集群仍然能够继续运行。
  • On Yarn(YARN 集群)模式
    • 当 Flink 与 Hadoop 集成时,可以利用 YARN 作为资源管理器来启动 Flink 集群。这种方式适合生产环境,因为它允许动态地请求和释放资源,从而实现更好的资源利用率。
  • On Kubernetes 模式
    • Flink 也可以部署在 Kubernetes 集群上,这种方式提供了更加灵活的管理和伸缩能力,特别适合微服务架构的应用。

每种模式都有其特点和适用场景,选择合适的模式取决于具体的使用需求和技术栈。例如,对于简单的测试和开发工作,Local 模式就足够了;而对于生产环境,则可能更倾向于使用 Standalone HA 模式或 On Yarn 模式以获得更好的稳定性和资源管理能力。随着容器化和云原生技术的发展,On Kubernetes 模式也越来越受到欢迎。

2. Local(本地)模式

今天为了快速入门flink,跑通几个例子,快速入门flink,我们使用简单的本地模式启动flink集群,便于我们平时的测试练习。

2.1 软件安装包准备

  • Java环境,安装好JDK,配置好环境变量,JDK要求Java8 或者 Java11及以上版本,笔者使用Java22。
  • 下载好flink的安装包,笔者使用的是1.20.0。
  • 笔者把用到的Java和Flink的安装包都整理放在一起,有需要可以到下面的链接下载。
  • 下载链接:夸克网盘分享

2.2 安装好jdk

Java JDK安装网上挺多教程,这里不再详细介绍,需要的同学可以到网上搜索下教程,安装成功后,会有下面的提示,说明环境已经准备好了。

把flink的安装包下载到你们本地,并且对它做一个解压操作,解压之后,会有一个flink1.20.0文件夹,进到文件夹里面。

复制代码
tar -xzf flink-1.20.0-bin-scala_2.12.tgz
cd flink1.20.0

2.4 启动集群

flink是解压即安装,解压完之后再通过其bin目录下准备好的本地模式启动的脚本启动,那么flink的集群变启动起来了。

复制代码
#进入bin目录,执行 start-cluster.sh 脚本
./start-cluster.sh

看到图片里面的打印的日志,可以确定flink集群启动成功了。

2.5 运行一个流作业

解压flink按照包之后,与bin目录通目录有一个examples目录,里面有挺多的例子,我们就挑选其中一个例子提交到我们准备好的flink集群中。

复制代码
#提交作业
./bin/flink run examples/streaming/WordCount.jar
#查看作业运行的结果
tail -1000f ./log/flink-wu_ming-taskexecutor-0-192.168.5.4.out

提交作业

查看作业执行结果

2.6 关闭集群

完成上面的测试之后,就可以先把刚刚启动起来的集群关闭掉了,待需要的时候再启动起来。

复制代码
./bin/stop-cluster.sh

3. 总结

本文开头对flink的几种安装模式都做了介绍,并且详细的介绍了我们开发的时候会使用到的本地模式的安装启动停止过程,并且用了一个demo验证集群是否可用,本地模式是比较方便轻量的安装模式,便于我们开发调试使用。

相关推荐
武子康7 小时前
大数据-237 离线数仓 - Hive 广告业务实战:ODS→DWD 事件解析、广告明细与转化分析落地
大数据·后端·apache hive
大大大大晴天9 小时前
Flink生产问题排障-Kryo serializer scala extensions are not available
大数据·flink
武子康2 天前
大数据-236 离线数仓 - 会员指标验证、DataX 导出与广告业务 ODS/DWD/ADS 全流程
大数据·后端·apache hive
武子康3 天前
大数据-235 离线数仓 - 实战:Flume+HDFS+Hive 搭建 ODS/DWD/DWS/ADS 会员分析链路
大数据·后端·apache hive
DianSan_ERP4 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
够快云库4 天前
能源行业非结构化数据治理实战:从数据沼泽到智能资产
大数据·人工智能·机器学习·企业文件安全
AI周红伟4 天前
周红伟:智能体全栈构建实操:OpenClaw部署+Agent Skills+Seedance+RAG从入门到实战
大数据·人工智能·大模型·智能体
B站计算机毕业设计超人4 天前
计算机毕业设计Django+Vue.js高考推荐系统 高考可视化 大数据毕业设计(源码+LW文档+PPT+详细讲解)
大数据·vue.js·hadoop·django·毕业设计·课程设计·推荐算法
计算机程序猿学长4 天前
大数据毕业设计-基于django的音乐网站数据分析管理系统的设计与实现(源码+LW+部署文档+全bao+远程调试+代码讲解等)
大数据·django·课程设计
B站计算机毕业设计超人4 天前
计算机毕业设计Django+Vue.js音乐推荐系统 音乐可视化 大数据毕业设计 (源码+文档+PPT+讲解)
大数据·vue.js·hadoop·python·spark·django·课程设计