当前位置: 首页 > ops >正文

搭建Flink分布式集群

0. 基础环境:

安装JDK

本次使用 jdk-11.0.26_linux-x64_bin.tar.gz

tar -zxvf jdk-11.0.26_linux-x64_bin.tar.gz -C /usr/local/java/
配置环境变量:
vi /etc/profileJAVA_HOME=/usr/local/java/jdk-11.0.26
CLASSPATH=.:${JAVA_HOME}/lib:$CLASSPATH
PATH=$PATH:${JAVA_HOME}/bin
export JAVA_HOME CLASS_PATH PATH
让环境变量生效:
source /etc/profile 

如果没生效就重启服务器

ssh免密码登录
集群内节点之间免密登录

1. 下载

版本:flink-2.0.0-bin-scala_2.12.tgz
地址: https://www.apache.org/dyn/closer.lua/flink/flink-2.0.0/flink-2.0.0-bin-scala_2.12.tgz

2. 安装

通过虚拟机设置共享文件夹将需要的安装包复制到linux虚拟机中 localhost1。虚拟机的共享盘在 /mnt/hgfs/。 将共享盘安装包复制到 存在目标路径/opt/software/

解压缩

cd /opt/software/
tar -zxvf flink-2.0.0-bin-scala_2.12.tgz -C /usr/local/applications/

3,修改FLINK配置

修改 /conf/config.yaml 文件

at localhost1

jobmanager:bind-host: 0.0.0.0rpc:address: localhost1port: 6123taskmanager:bind-host: 0.0.0.0host: localhost1

at localhost2

jobmanager:bind-host: 0.0.0.0rpc:address: localhost1port: 6123taskmanager:bind-host: 0.0.0.0host: localhost2

at localhost3

jobmanager:bind-host: 0.0.0.0rpc:address: localhost1port: 6123taskmanager:bind-host: 0.0.0.0host: localhost3

修改 /conf/masters文件

localhost1:8081

修改 /conf/workers文件

localhost1
localhost2
localhost3

修改 /conf/zoo.cfg 文件 (可以不改)

server.1=localhost1:2888:3888
server.2=localhost2:2888:3888
server.3=localhost3:2888:3888

4. 将Spark软件分发到集群

先关闭防火墙

systemctl stop firewalldsystemctl disable firewalld

将Flink分发到localhost2 和 localhost3

scp -r flink-2.0.0 root@localhost2:/usr/local/applications/flink-2.0.0
scp -r flink-2.0.0 root@localhost3:/usr/local/applications/flink-2.0.0

5, 启动集群

[root@localhost1 flink-2.0.0]# bin/start-cluster.sh
Starting cluster.
Starting standalonesession daemon on host localhost1.
Starting taskexecutor daemon on host localhost1.
Starting taskexecutor daemon on host localhost2.
Starting taskexecutor daemon on host localhost3.

6, 查看WEB页面

http://localhost1:8081/#/overview

http://www.xdnf.cn/news/14678.html

相关文章:

  • 深入详解:随机森林算法——概念、原理、实现与应用场景
  • Spring Cloud:高级特性与最佳实践
  • Python基础知识之文件
  • 深入剖析 CVE-2021-3560 与 CVE-2021-4034:原理、区别与联系
  • SQL学习笔记4
  • python基于Django+mysql实现的图书管理系统【完整源码+数据库】
  • 基于springboot的火锅店点餐系统
  • 代码随想录|图论|09沉没孤岛
  • 中国双非高校经费TOP榜数据分析
  • 【数据结构】B树的介绍及其实现C++
  • 鸿蒙OS开发IoT控制应用:从入门到实践
  • EXCEL数据报表
  • 修改Docker-compose使Uptime-Kuma支持IPV6
  • 免费无广告PDFCreator:虚拟打印软件一键转 PDF/PNG/JPG
  • Solidity学习 - 未授权访问
  • 问卷调查 [oled]
  • 车载诊断架构--- 车载诊断中的引导式诊断
  • MySQL(1)——count()聚合函数
  • OkHttp 简单配置
  • 链表题解——两数相加【LeetCode】
  • .NET MAUI跨平台串口通讯方案
  • 永磁无刷电机旋转原理
  • 架构轻巧的kokoro 文本转语音模型
  • Apipost 和 Apifox 2025最新功能对比分析
  • 2-深度学习挖短线股-1-股票范围选择
  • [3D-portfolio] 版块包装高阶组件(封装到HOC) | Email表单逻辑 | 链式调用
  • 桌面小屏幕实战课程:DesktopScreen 11 SPI 水墨屏
  • 基于SpringBoot和Leaflet的区域冲突可视化-以伊以冲突为例
  • Robyn高性能Web框架系列06:使用WebSocket实现产品智能助理
  • SQL学习笔记3