Flink Standalone 集群模式安装部署教程

目录

一、前言

二、环境准备

三、安装步骤

[1. 下载并安装 Flink](#1. 下载并安装 Flink)

[4. 配置 Flink](#4. 配置 Flink)

[5. 配置环境变量](#5. 配置环境变量)

[6. 启动 Flink 集群](#6. 启动 Flink 集群)

[7. 访问 Flink Web 界面](#7. 访问 Flink Web 界面)

四、简单测试

五、常见问题和解决办法

[1. 启动失败,无法连接到 TaskManager](#1. 启动失败,无法连接到 TaskManager)

[2. Web 界面无法访问](#2. Web 界面无法访问)

六、总结


一、前言

Flink 是一个开源的流处理框架,可以用于批处理和流处理。Flink 提供了多种部署模式,其中 Standalone 模式是最基础的一种。本文将介绍如何在 Linux 环境下部署一个 Flink Standalone 集群,包括安装、配置和启动。本文适用于新手,可以帮助你快速搭建 Flink Standalone 集群。

二、环境准备

在开始部署之前,需要准备以下环境和工具:

  • Linux 服务器(建议至少 3 台,本文以 3 台为例,分别命名为 masterslave1slave2
  • JDK 1.8 及以上版本(建议使用 OpenJDK 11)
  • SSH 配置无密码登录
  • Flink 安装包(本文使用 apache-flink-1.16.0-bin-scala_2.12.tgz 为例)

三、安装步骤

master 节点下载 Flink 安装包,并解压缩:

cd /opt/moudles
tar -zxvf apache-flink-1.16.0-bin-scala_2.12.tgz
mv apache-flink-1.16.0 /opt/installs/flink

flink 目录分发到所有节点:

scp -r /opt/installs/flink slave1:/opt/installs/
scp -r /opt/installs/flink slave2:/opt/installs/

(也可以使用脚本xsync.sh分发到所有节点)

master 节点上,编辑 Flink 的配置文件 /opt/installs/flink/conf/flink-conf.yaml

jobmanager.rpc.address: bigdata01
taskmanager.numberOfTaskSlots: 2
web.submit.enable: true

#历史服务器  如果HDFS是高可用,则复制core-site.xml、hdfs-site.xml到flink的conf目录下   hadoop11:8020 -> hdfs-cluster
jobmanager.archive.fs.dir: hdfs://bigdata01:9820/flink/completed-jobs/
historyserver.web.address: bigdata01
historyserver.web.port: 8082
historyserver.archive.fs.dir: hdfs://bigdata01:9820/flink/completed-jobs/

编辑 masters 文件(设置 JobManager 的节点):

master:8081

编辑 work 文件(添加 TaskManager 节点):

master
slave1
slave2

5. 配置环境变量

在所有节点上设置 Flink 的环境变量。在 /etc/profile 文件中添加以下内容:

export FLINK_HOME=/opt/installs/flink
export PATH=$PATH:$FLINK_HOME/bin
export HADOOP_CONF_DIR=/opt/installs/hadoop/etc/hadoop

执行以下命令使配置生效:

source /etc/profile

刷新环境变量(source /etc/profile)

master 节点启动 Flink 集群:

#启动HDFS  
start-dfs.sh
#启动集群
start-cluster.sh
#启动历史服务器
historyserver.sh start

验证集群是否启动成功,可以通过 jps 命令查看 JobManagerTaskManager 进程。

假如 historyserver 无法启动,也就没有办法访问 8082 服务,原因大概是你没有上传 关于 hadoop 的 jar 包到 lib 下。

打开浏览器,访问 http://master:8081,可以查看 Flink 的 Web UI 管理界面,监控集群状态和任务运行情况;访问 http://master:8082,可以查看 Flink 的 Flink历史服务器管理界面,及时服务重启,运行过的服务都还在能够访问8082是因为你的历史服务启动着。

四、简单测试

master 节点上提交一个 Flink 示例任务:

flink run examples/streaming/WordCount.jar

在 Flink 的 Web 界面中可以查看任务的执行情况。

五、常见问题和解决办法

1. 启动失败,无法连接到 TaskManager

  • 检查配置文件中的 jobmanager.rpc.address 是否正确。
  • 确保所有节点的 hosts 文件配置正确。
  • 检查节点之间的网络是否通畅。

2. Web 界面无法访问

  • 检查防火墙设置,确保 8081 端口是开放的。
  • 确保 JobManager 已经正常启动。

六、总结

本文介绍了如何在 Linux 环境下部署 Flink Standalone 集群,从环境准备、安装配置到集群启动和测试。Standalone 模式适合测试和开发环境的快速部署,操作简单。如果需要在生产环境中使用,可以考虑使用 YARN 或 Kubernetes 进行更复杂的集群管理。

相关推荐
喝醉酒的小白13 分钟前
Elasticsearch 中,分片(Shards)数量上限?副本的数量?
大数据·elasticsearch·jenkins
yuanbenshidiaos2 小时前
【大数据】机器学习----------计算机学习理论
大数据·学习·机器学习
杰克逊的日记3 小时前
HBased的原理
大数据·hbase
viperrrrrrrrrr76 小时前
大数据学习(36)- Hive和YARN
大数据·hive·学习
认知作战壳吉桔7 小时前
中国认知作战研究中心:从认知战角度分析2007年iPhone发布
大数据·人工智能·新质生产力·认知战·认知战研究中心
2301_780356708 小时前
为医院量身定制做“旧改”| 全视通物联网智慧病房
大数据·人工智能·科技·健康医疗
我的棉裤丢了9 小时前
windows安装ES
大数据·elasticsearch·搜索引擎
想做富婆9 小时前
大数据,Hadoop,HDFS的简单介绍
大数据·hadoop·分布式
金融OG10 小时前
99.8 金融难点通俗解释:净资产收益率(ROE)
大数据·python·线性代数·机器学习·数学建模·金融·矩阵
希艾席蒂恩10 小时前
专业数据分析不止于Tableau,四款小众报表工具解析
大数据·信息可视化·数据分析·数据可视化·报表工具