FLINK单机版安装部署入门-1

手把手教你Flink单机版安装部署,亲测可行! 下载安装部署包: wget https://archive.apache.org/dist/flink/flink-1.12.0/flink-1.12.0-bin-scala_2.11.tgz 解压缩: tar -xzvf flink-1.12.0-bin-scala_2.11.tgz 进入conf目录下 flink-conf.yaml 修改rest.port 8778(8081端口过于常用) 进入bin目录执行:(启动集群) ./start-cluster.sh 访问链接http://host:8 阅读详情
AI摘要

本文介绍Flink单机版安装部署,包括官网下载1.9.3版本,配置jdk环境变量,不同版本修改配置文件。阐述了Linux和Windows下启动集群的方法,还介绍了Flink提交任务的两种方式:命令行和Web页面,包含运行WordCount和SocketWindowWordCount等测试样例,以及取消Job的操作。

FLINK单机版安装部署

官网下载Downloads | Apache Flink

下载文件历史版本的1.9.3

https://archive.apache.org/dist/flink/flink-1.9.3/flink-1.9.3-bin-scala_2.11.tgz

# 下载Flink安装包(笔者这里测试使用Flink1.9版本,其它版本下载目录 https://flink.apache.org/downloads.html)
wget https://archive.apache.org/dist/flink/flink-1.9.3/flink-1.9.3-bin-scala_2.11.tgz

# 解压
tar -xzvf flink-1.9.3-bin-scala_2.11.tgz

netCat是linux下自带的支持TCP、UDP、Unix域协议套接字小工具,nc命令允许你创建一个连接、侦听另一个连接和传输数据。在windows环境中也可以使用
使用命令:nc -lk port号
说明: -l listen监听某个端口 k:保持住当前的连接,程序终止的话,当前server不断开
功能:启动了一个可以发送socket文本流的服务器,端口:7777

下载地址 netcat 1.11 for Win32/Win64

https://eternallybored.org/misc/netcat/

注意:

服务启动依赖jdk环境变量(确保已经安装了Java_jdk)

加上环境变量

vi source /etc/profile

export JAVA_HOME=/opt/zulu_jdk11.68.17
export PATH=$JAVA_HOME/bin:$PATH


export PATH=/opt/flink-1.9.3/bin:$PATAT

source /etc/profile

高于1.9.3需要修改配置文件flink-conf.yaml(低于1.9.3可以跳过)

修改端口号(默认端口不影响的可以直接跳过端口配置)

进入conf目录下 flink-conf.yaml 修改rest.port (8081端口过于常用,容易出现端口冲突,笔者这里改为8001)

#rest.port: 8081
rest.port: 8001

windows下需要加入如下配置,否则执行start-cluster.bat会导致TaskManager进程会退出

taskmanager.cpu.cores: 2
taskmanager.memory.task.heap.size: 512m
taskmanager.memory.managed.size: 512m
taskmanager.memory.network.min: 64m
taskmanager.memory.network.max: 64m

加上后会启动JobManager和TaskManager

linux启动集群

进入bin目录执行下面命令

# 启动Flink集群
./start-cluster.sh

# 停止Flink集群
#./stop-cluster.sh

访问Flink UI,链接http://host:8778/#/overview,查看dashboard (这里的host为部署flink的机器host)

windows下启动

windows当前能支持的最高版本是1.9.3,直接安装就行;更高的版本已经不支持windos启动了,连启动脚本都已经没有

高版本参考如下:仅供参考但是不保证能成功,基本会失败;

cmd命令行启动

flink-1.9.3\bin>.\start-cluster.bat

启动后可以在管理页面看到Available Task Slots有一个可用的slots,如果没有参考上面的flink-config.yaml缺少windows下配置项

Flink提交任务方式

1 使用Web页面Submit New Job方式提交(生产环境基本以此类方式为主)

2 使用命令行方式提交

命令方式提交

Flink安装包自带了测试样例,

运行WordCount任务
flink-\flink-1.9.3\bin> ./flink run D:\workspace\IDE\flink-1.9.3\examples\batch\WordCount.jar
运行streaming任务

examples\streaming\SocketWindowWordCount.jar

该样例为从一个ip端口获取数据,并进行单词数量统计,用来模拟数据流

运行样例分为本地运行命令行和UI界面提交运行,也就是分为本地模式和服务器模式两种

先启动端口TCP字符流

nc -lp 8888

./flink sun -c org.apache.flink.streaming.examples.socket.SocketWindowWordCount -p 1 D:\workspace\IDE\flink-1.9.3\examples\streaming\SocketWindowWordCount.jar --host localhost --port 8888

-m:指定主机名后面的端口为 JobManager的 REST 通信端口,而不是 RPC的端口,RPC通信端口是 6123(在提交任务时,是通过 REST 端口号(HTTP端口号),将任务上传到 JobManager.)

-c: 执行的主类,指定 main 方法的全类名

-p:运行的slot实例数=最大为当前所有实例数

-jar包路径

-host port :外部参数这里指参数接收的ip和端口号

在管理页面的submit new job中上传 任务jar即可

http://localhost:8001/#/submit

–hostname localhost --port 8888

这里我们依然以example中的WordCount.jar为例提交,点击该明细会出现执行的main文件路径合参数配置,默认即可,点击submit提交

job样例源码

https://gitee.com/jian_yang_lv

flink视频教程

https://www.bilibili.com/video/BV1eg4y1V7AN?p=1&vd_source=439eb7a06dc0a72103551f415ea81556

web页面提交任务

使用Web页面Submit New Job方式提交,这里依然以wordCount为例
在这里插入图片描述

填写任务main全路径,以及slot槽数
在这里插入图片描述

查看运行情况

在这里插入图片描述

WordCount 计数完成后,我们在 TaskManager 配置页面,通过 stdout 可以查看到结果信息

在这里插入图片描述

取消Job

因为Flink任务是实时的,启动就不会停止,除非出错或者人为取消Job
JOB->Running job ->明细中点击取消按钮
在这里插入图片描述

java: Compilation failed: internal java compiler error

https://blog.youkuaiyun.com/weixin_42923363/article/details/126698963

高版本启动脚本

Windows下是没有启动脚本的,这里贴上CMD启动脚本

参考资料:https://blog.youkuaiyun.com/xuexijava85/article/details/114803489

flink.bat

::###############################################################################
::  Licensed to the Apache Software Foundation (ASF) under one
::  or more contributor license agreements.  See the NOTICE file
::  distributed with this work for additional information
::  regarding copyright ownership.  The ASF licenses this file
::  to you under the Apache License, Version 2.0 (the
::  "License"); you may not use this file except in compliance
::  with the License.  You may obtain a copy of the License at
::
::      http://www.apache.org/licenses/LICENSE-2.0
::
::  Unless required by applicable law or agreed to in writing, software
::  distributed under the License is distributed on an "AS IS" BASIS,
::  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
::  See the License for the specific language governing permissions and
:: limitations under the License.
::###############################################################################

@echo off
setlocal

SET bin=%~dp0
SET FLINK_HOME=%bin%..
SET FLINK_LIB_DIR=%FLINK_HOME%\lib
SET FLINK_PLUGINS_DIR=%FLINK_HOME%\plugins

SET JVM_ARGS=-Xmx512m

SET FLINK_JM_CLASSPATH=%FLINK_LIB_DIR%\*

java %JVM_ARGS% -cp "%FLINK_JM_CLASSPATH%"; org.apache.flink.client.cli.CliFrontend %*

endlocal

start-cluster.bat

这里,我把start-cluster.bat放在bin文件夹同级目录中,而没有放在bin目录里面

::###############################################################################
::  Licensed to the Apache Software Foundation (ASF) under one
::  or more contributor license agreements.  See the NOTICE file
::  distributed with this work for additional information
::  regarding copyright ownership.  The ASF licenses this file
::  to you under the Apache License, Version 2.0 (the
::  "License"); you may not use this file except in compliance
::  with the License.  You may obtain a copy of the License at
::
::      http://www.apache.org/licenses/LICENSE-2.0
::
::  Unless required by applicable law or agreed to in writing, software
::  distributed under the License is distributed on an "AS IS" BASIS,
::  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
::  See the License for the specific language governing permissions and
:: limitations under the License.
:: author:zjcjava time:2023/05/24
::###############################################################################

@echo off
setlocal EnableDelayedExpansion

::#####这里我直接使用根目录拼接config和bin目录的path路径
SET FLINK_HOME=%cd%
SET bin==%FLINK_HOME%\bin
::### SET FLINK_HOME=%bin%..
echo ###############################################################################
echo FLINK_HOME %FLINK_HOME%
SET FLINK_LIB_DIR=%FLINK_HOME%\lib
SET FLINK_PLUGINS_DIR=%FLINK_HOME%\plugins
SET FLINK_CONF_DIR=%FLINK_HOME%\conf
SET FLINK_LOG_DIR=%FLINK_HOME%\log

echo FLINK_CONF_DIR:%FLINK_CONF_DIR%
echo ###############################################################################
SET JVM_ARGS=-Xms1024m -Xmx1024m

SET FLINK_CLASSPATH=%FLINK_LIB_DIR%\*

SET logname_jm=flink-%username%-jobmanager.log
SET logname_tm=flink-%username%-taskmanager.log
SET log_jm=%FLINK_LOG_DIR%\%logname_jm%
SET log_tm=%FLINK_LOG_DIR%\%logname_tm%
SET outname_jm=flink-%username%-jobmanager.out
SET outname_tm=flink-%username%-taskmanager.out
SET out_jm=%FLINK_LOG_DIR%\%outname_jm%
SET out_tm=%FLINK_LOG_DIR%\%outname_tm%

SET log_setting_jm=-Dlog.file="%log_jm%" -Dlogback.configurationFile=file:"%FLINK_CONF_DIR%/logback.xml" -Dlog4j.configuration=file:"%FLINK_CONF_DIR%/log4j.properties"
SET log_setting_tm=-Dlog.file="%log_tm%" -Dlogback.configurationFile=file:"%FLINK_CONF_DIR%/logback.xml" -Dlog4j.configuration=file:"%FLINK_CONF_DIR%/log4j.properties"

:: Log rotation (quick and dirty)
CD "%FLINK_LOG_DIR%"
for /l %%x in (5, -1, 1) do (
SET /A y = %%x+1
RENAME "%logname_jm%.%%x" "%logname_jm%.!y!" 2> nul
RENAME "%logname_tm%.%%x" "%logname_tm%.!y!" 2> nul
RENAME "%outname_jm%.%%x" "%outname_jm%.!y!"  2> nul
RENAME "%outname_tm%.%%x" "%outname_tm%.!y!"  2> nul
)
RENAME "%logname_jm%" "%logname_jm%.0"  2> nul
RENAME "%logname_tm%" "%logname_tm%.0"  2> nul
RENAME "%outname_jm%" "%outname_jm%.0"  2> nul
RENAME "%outname_tm%" "%outname_tm%.0"  2> nul
DEL "%logname_jm%.6"  2> nul
DEL "%logname_tm%.6"  2> nul
DEL "%outname_jm%.6"  2> nul
DEL "%outname_tm%.6"  2> nul

for %%X in (java.exe) do (set FOUND=%%~$PATH:X)
if not defined FOUND (
    echo java.exe was not found in PATH variable
    goto :eof
)

echo Starting a local cluster with one JobManager process and one TaskManager process.

echo You can terminate the processes via CTRL-C in the spawned shell windows.

echo Web interface by default on http://localhost:8081/.

start java %JVM_ARGS% %log_setting_jm% -cp "%FLINK_CLASSPATH%"; org.apache.flink.runtime.entrypoint.StandaloneSessionClusterEntrypoint --configDir "%FLINK_CONF_DIR%" > "%out_jm%" 2>&1
start java %JVM_ARGS% %log_setting_tm% -cp "%FLINK_CLASSPATH%"; org.apache.flink.runtime.taskexecutor.TaskManagerRunner --configDir "%FLINK_CONF_DIR%" > "%out_tm%" 2>&1

endlocal
docker环境下安装flink flink安装教程 阅读详情

相关推荐

MAC上搭建flink单机版

使用brew指令 安装brew 使用以下指令一键安装brew /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 然后跟着提示走就行了 开始执行Brew自动安装程序 [cunkai.wang@foxmail.com] [2020-08-28 11:26:26][10.15] https://zhuanlan.zhihu.c

端木胥的博客 1087

Flink安装(单机模式、Windows)

想要深入学习Flink的可以另外参考其他文献,我对Flink概念了解也不太深,文本只做简单说明(比较抽象)。对于Flink我把它理解为一款非常优秀的数据处理中间件,它能把数据处理的过程单独提取出来,减轻数据流通过程中其他步骤的压力。用过大数据量数据库的同道们应该有体验,当数据量足够大时,简单的查询都会变得很缓慢,更别说在查询语句中加入计算。正常情况下,我们计算数据的过程是在程序中,而sql只需要负责拿出数据。

业余发文,有时候回复不及时,可以加q 2360355335。 8932

【大数据Flink系列】Flink单机模式和集群搭建

【大数据Flink系列】Flink单机模式和集群搭建

weixin_54707168的博客 1474

Flink部署

job的一个流程:source(数据源)-> transform转换(map、flatmap、filter等)->keyBy、Aggregate(聚合)-> sink(输出:Print输出到控制台、kafka、Mysql、文件、Es)并行度(parallelism):一个任务交给多个cpu并行处理,一台计算机最大并行度就是这台计算机的cpu的核数。接着要启动历史服务器:bin/historyserver.sh start。在本地Windows开发环境里面运行的,就是Standalone运行模式。

2301_79197199的博客 755

Flink单机和集群环境部署教程

通过以上步骤,我们成功部署了 Flink 单机和集群环境,并实现了一个简单的 Word Count 应用。Flink 提供了强大的流处理和批处理能力,可以在多种场景下处理实时数据。

闲人编程的博客 2212

Xilinx Vivado LDPC IP core,TSN IP core. 各种IP core

Xilinx Vivado LDPC IP core,TSN IP core. 各种IP core

qq_1432825237的博客 3988

Flink单机版安装教程

Flink1.16单机版安装教程

莫须有的博客 2095

THUCNews新闻文本分类-tfidf+sklearn

本文使用的是和鲸社区现有数据集,代码也在和鲸社区公开,fork之后可以直接运行。 本文中所用的数据集清华NLP组提供的THUCNews新闻文本分类数据集的一个子集(原始的数据集大约74万篇文档,训练起来需要花较长的时间)。 本次训练使用了其中的体育, 财经, 房产, 家居, 教育, 科技, 时尚, 时政, 游戏, 娱乐10个分类,每个分类6500条,总共65000条新闻数据。项目在和鲸社区的平台上跑的,数据集直接引用了和鲸的数据集,每个分类6500条,总共65000条新闻数据。 数据集划分如下: cnews

wmq104的博客 4590

Flink安装极简教程-单机版

一:安装 Flink官网下载地址:https://flink.apache.org/downloads.html 选择1.6.3版本  下载: wget http://mirrors.hust.edu.cn/apache/flink/flink-1.7.1/flink-1.7.1-bin-hadoop26-scala_2.11.tgz 解压: tar -zxvf flink-1...

码农code之路 1632

《缠中说禅108课》5:市场无须分析,只要看和干

喜欢吹牛皮的,在市场里最常见,例如一种以分析市场、吹牛皮为生的职业,叫什么股评、专家的。此类人不过是市场上的寄生虫,真正的猎手只会观察、操作,用嘴是打不了豺狼的。 市场就是一个狩猎场,首先你要成为一个好猎手,而一个猎手,首先要习惯于无言。如果真有什么真理,那真理也是无言的。可言说的,都不过是人类思想的分泌物,臭气熏天。真不可言说了,就无不可言,言而无言,是乃真言。 一个好的猎手,可以没有嘴巴,但一定会有一双不为外物所动的眼睛,在这眼睛下,一切如幻化般透明。要不被外物所动,则首先要不被自我所迷惑,其实..

BenRen1314的博客 800

运算放大器 VS 仪表放大器

运算放大器(Operational Amplifier, 简称 Op Amp)和仪表放大器(Instrumentation Amplifier, 简称INA)在电子电路设计中都有非常广泛的应用,但两者在结构、特性以及应用场景上都有明显的区别。以下是它们之间主要的差异:运算放大器(Op Amp)仪表放大器(INA)运算放大器仪表放大器运算放大器仪表放大器运算放大器仪表放大器运算放大器仪表放大器总之,运算放大器是通用型放大元件,需要设计者自己做额外的电路配置;而仪表放大器则是针对高精度测量差分信号而生,内部匹配

chinahongjiang的博客 1346

Cenots上Flink Standalone 集群部署

环境说明 Centos7.5flink-1.20.0-bin-scala_2.12.tgz jdk1.8 Flink运行依赖Java环境,如果没有Java环境,可自行下载Java后,再进行下面操作 一,Flink下载~解压~运行 去Flink官网进行下载,Downloads | Apache Flink,点击链接跳转后,可以选择自己需要的版本进行下载,这里我选择的是flink-1.20.0-bin-scala_2.12.tgz。 下载完成后,上传至虚拟机 /opt 目录下,然后进行解压,解压至/usr/

WBXNBNBNB的博客 2975

【实战】——零代码玩转Supervisely人像分割:从标注到模型训练的数据流水线搭建

本文详细介绍了如何零代码使用Supervisely平台搭建人像分割数据流水线,从智能标注到数据集格式转换,再到模型训练与优化。Supervisely的智能标注工具和协作功能大幅提升了人像分割项目的效率,特别适合视频会议背景虚化、虚拟试衣等应用场景。

weixin_30694389的博客 413

Flink1.8.1 集群部署

文章目录概述单机版部署HA部署 概述 首先需要安装scala环境,参照 linux下scala安装部署 我使用的scala是 scala-2.12.8 单机版部署 到官网 https://flink.apache.org/downloads.html#apache-flink-181 下载最新的1.8.1版本的flink。 接下来安装官方文档的操作,进行最简单的安装 https://ci.a...

刘本龙的专栏 1930

Homebrew 必备软件清单:我的 macOS 开发环境搭建全记录

本文详细介绍了如何使用Homebrew在macOS上搭建高效的开发环境,包括基础配置、核心开发工具链、高效编码工具集等30个必备工具。通过Homebrew这一macOS缺失的包管理器,开发者可以一键安装命令行工具和GUI应用,大幅提升工作效率。文章还提供了日常维护命令和疑难问题解决方案,适合从新手到资深开发者的所有用户。

weixin_28836507的博客 353

Power BI应用案例:淘宝用户行为分析实战

一、案例背景 基于千万级的淘宝用户的使用记录,对淘宝用户的行为进行分析,具体指标包括:日PV、日UV、小时PV、小时UV、不同用户行为的PV、用户购买次数分布、用户购买频次分布、活跃用户消费情况等。通过本案例,可以基本看看Power BI都能分析达到怎么样的效果。 二、数据来源及结构 阿里天池官方发布的1万用户在2014年双十二期间的行为记录,数据量达1200万+。 数据下载地址:...

灰哥数据智能的专栏 1万+

Ansible自动化部署Flink单机版本

内容(ps:脚本中引用的剧本yaml文件最好写绝对路径。):bin/bash。

changyitt的博客 722

[Python] 如何使用 Python 调用 Dify 工作流服务实现自动化翻译

本文介绍了如何使用Python调用Dify的API实现文本翻译自动化。Dify作为AI开发平台,其工作流功能可执行文本处理、翻译等任务。选择Python调用Dify的优势在于职责划分清晰:Dify专注AI服务,Python处理文件操作等非AI任务。

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 1094

单机版flink简单安装

flink单机版简单安装

sinat_42406646的博客 467

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

flink安装部署

flink多种模式的安装部署

myself_ning的博客 2727

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

dolphinscheduler单机版部署

修改为自己的jdk安装目录# 修改MySQL配置# DolphinScheduler服务相关配置# 注册中心配置,修改为自己的zookeeper监听地址# 这些环境变量根据自己的需要更改,没有保持默认即口(2)./文件spring:jackson:banner:cache:type: none- tenant- usercaffeine:sql:init:MODE=MySQL。

m0_72898512的博客 1252

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Flink单机版安装实战:从环境准备到作业提交的完整指南

实时计算框架Flink通过分布式架构实现高吞吐、低延迟的数据处理,其核心原理是将流处理与批处理统一到同一运行时引擎。单机版Flink将JobManager与TaskManager部署在同一台机器,是理解Flink运行时机制、验证算子行为、排查数据倾斜的最低成本实验台。掌握单机版安装配置,不仅能快速搭建本地开发环境,还能为后续集群部署打下坚实基础。本文围绕Flink单机版安装,详细拆解JDK环境准备、版本选型、flink-conf.yaml核心参数配置、集群启动验证及常见问题排查,帮助数据开发者高效完成本地实

weixin_29053695的博客 204

[基础架构] [Flink] Flink/Flink-CDC的部署和配置

Flink 以及 Flink -CDC 部署与配置

OxYGC 9887

Apache Flink 入门

文章目录官网链接下载安装部署单机版DEMO常见问题汇总1. 分配资源不够2. 官网链接 https://flink.apache.org/ 下载安装部署单机版 进入主页点击downloads,选择你想要的版本 2.选择整合或者不整合hadoop的版本 3. 下载 上传下载的压缩包到虚拟机,并解压 在解压目录下面bin/ 执行命令 ./start-cluster.sh 即可, ...

Jhon_yh的博客 659

单机版Flink部署实战:从安装配置到避坑指南

流处理框架Flink通过有状态计算和事件时间语义实现实时数据处理,其核心原理是将计算任务分布到多个TaskManager上并行执行。单机版Flink在单个JVM进程中模拟完整运行时拓扑,包括JobManager和TaskManager等组件,为开发者提供低成本验证算子逻辑、状态管理和检查点机制的环境。在本地调试、作业验证和学习架构等场景中,单机部署能快速暴露配置问题,如并行度设置和状态后端选择。本文从零开始讲解单机版Flink的安装、配置与验证流程,重点分析常见问题的排查方法,帮助读者高效搭建本地流处理开发

weixin_28224217的博客 152

Flink入门篇-docker搭建kafka单机版

前言 docker已经安装 (如果没安装,请点此链接docker安装和基本原理) Docker安装单机版zookeeper和kafka 1.从docker仓库拉取kafka和zookeeper镜像 docker pull wurstmeister/kafka:2.11-0.11.0.3 docker pull wurstmeister/zookeeper 注意:我这里控制了kafka的版本,没有控制zookeeper的版本(latest最新的版本),这里就要看你需要的版本 2.创建容器并后台运行zook

京河小蚁的博客 1634
上一篇: 一般无人机和FPV无人机的区别
下一篇: 对原jar包解压后修改原class文件后重新打包为jar
牧竹子
博客等级 码龄17年 572粉丝 233原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值