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

Flink的Standalone部署实战

在Flink是通用的框架,以混合和匹配的方式支持部署不同场景,而Standalone单机部署方便快速部署,记录本地部署过程,方便备查。

环境要求

1)JDK1.8及以上
2)flink-1.14.3
3)CentOS7

Flink相关信息可到 Flink官网下载和查看相关信息。

第一步、下载并解压

推荐使用 wget 方式,本次选择的是版本 flink-1.14.3-bin-scala_2.12.tgz,下载并解压,执行以下命令。

// 下载
wget https://archive.apache.org/dist/flink/flink-1.14.3/flink-1.14.3-bin-scala_2.12.tgz
// opt下创建文件夹
mkdir /opt/flink
// 解压到opt下目录
tar -zxvf flink-1.14.3-bin-scala_2.12.tgz -C /opt/flink/

下载界面如下图所示。
在这里插入图片描述

第二步、配置环境变量

进入环境变量配置文件profile, 即 vi /etc/profile,添加以下内容。

#flink
export Flink_HOME=/opt/flink/flink-1.14.3/
# 将flink路径添加到PATH路径下
export PATH=$JMETER/bin/:$PATH:$Flink_HOME/bin

:wq 保存配置信息,主要要刷新环境变量

// 刷新环境变量
source /etc/profile
// 查看安装位置
which flink
// 进入到bin目录下,启动
start-cluster.sh
// 查看flink进程
ps -ef | grep flink
// 测试
jps

执行以上步骤,则表示flink已经启动成功,执行结果如下图所示。
在这里插入图片描述
但此时在浏览器访问 http://192.168.184.137:8081/#/overview,其中 192.168.184.137为虚拟机的IP地址,还无法进入flink控制台。
在这里插入图片描述

第三步、修改虚拟机配置

此时仍需要修改连接的配置信息,首先关闭flink服务,并在 配置 flink-conf.yaml 放开默认8081端口和绑定的地址。

// 在bin目录下,终止flink启动
stop-cluster.sh
// 打开配置文件
vi /opt/flink/flink-1.14.3/conf/flink-conf.yaml 

放开注释信息,如下图所示。
在这里插入图片描述
注意:必须将端口添加到防火墙的信任列表,并刷新

// 添加防火墙
firewall-cmd --zone=public --add-port=8081/tcp --permanent
firewall-cmd --reload

此时浏览器再次访问 http://192.168.184.137:8081/#/overview,即可进入控制台,如下图所示。
在这里插入图片描述

第四步、启动作业流

数据输入需要使用 nc 命令,可提前yum安装。

// 安装nc
yum install nc

一步步安装即可。
在这里插入图片描述
配置文件(/opt/flink/flink-1.14.3/conf/flink-conf.yaml)中添加以下内容。

// 打开配置文件
vi /opt/flink/flink-1.14.3/conf/flink-conf.yaml
// 添加以下信息
#taskmanager的机器地址,集群设置为当前机器所在的地址
taskmanager.host: flink_no1

在这里插入图片描述
配置文件(/opt/flink/flink-1.14.3/conf/workers)中添加host信息,如下所示。

// 打开配置文件
vi /opt/flink/flink-1.14.3/conf/workers
// 添加worker信息
flink_no1
// 在bin目录下,终止flink启动
stop-cluster.sh
// 启动
start-cluster.sh

以上即Flink的Standalone部署过程,有问题可留言交流!

异常处理

【1】错误信息
org.apache.flink.util.FlinkException: TaskExecutor akka.tcp://flink@192.168.184.137:34207/user/rpc/taskmanager_0 has no more allocated slots for job 8aa6239dce488f7b9a9bb237343871a6.
处理方案:
standalone模式,需要指定TaskManager主机的地址

http://www.lryc.cn/news/127747.html

相关文章:

  • open cv学习 (一)像素的操作
  • 基于C#的消息处理的应用程序 - 开源研究系列文章
  • C语言刷题指南(一)
  • VMware虚拟机Ubuntu无法连接网络的解决方法
  • 基于CentOS 7 部署社区版Haproxy
  • Git和GitHub
  • spring入门基本介绍及注入方式---详细介绍
  • 神经网络基础-神经网络补充概念-24-随机初始化
  • K8S之存储卷
  • 8月17日,每日信息差
  • VBA技术资料MF44:VBA_把数据从剪贴板粘贴到Excel
  • nestjs:nginx反向代理服务器后如何获取请求的ip地址
  • STM32 F103C8T6学习笔记7:双机无线串口通信
  • 开源数据库Mysql_DBA运维实战 (DDL语句)
  • 分布式 - 消息队列Kafka:Kafka生产者发送消息的分区策略
  • 从源代码编译构建Hive3.1.3
  • 探索性测试及基本用例
  • MYSQL 作业三
  • 【深度学习 | 感知器 MLP(BP神经网络)】掌握感知的艺术: 感知器和MLP-BP如何革新神经网络
  • Kali Linux中常用的渗透测试工具有哪些?
  • SpringBoot案例 调用第三方接口传输数据
  • 第三章,矩阵,08-矩阵的秩及相关性质
  • VS2019 + Qt : setToolTip的提示内容出现乱码
  • PO、BO、VO、DTO、DAO、POJO
  • MySQL— 基础语法大全及操作演示!!!(下)
  • Springboot+vue网上招聘系统
  • 奥威BI数据可视化工具:报表就是平台,随时自助分析
  • iPhone(iPad)安装deb文件
  • 手撕单链表
  • Spring-aop特点,专业术语及案例演示