flink环境搭建

Flink会话模式

1.集群规划:

  1. 将flink拖到/opt/so下

  2. 将安装包解压到/opt/module下:

tar -zxvf /opt/so/flink-1.15.4-bin-scala_2.12.tgz -C /opt/module

  1. 改个名:mv flink-1.15.4 flink

  2. 修改配置文件:cd /opt/module/flink/conf

  3. 进入配置文件:vim flink-conf.yaml

将jobmanager.rpc.address: localhost改为Hadoop001

1.6之前的只需要改这一个

jobmanager .bind-host:localhost 改为0.0.0.0设置其它用户也可以访问

taskmanager.bind-host: localhost改为0.0.0.0

taskmanager.host:localhost改为hadoop001

rest.address: localh 改为hadoop001

rest.bind-address: localhost 改为0.0.0.0

  1. 进入workers:vim workers

Hadoop001

Hadoop002

Hadoop003

  1. 进入masters:vim masters

加入:hadoop001:8081

  1. 分发:scp -r /opt/module/flink root@hadoop002:/opt/module/flink

scp -r /opt/module/flink root@hadoop003:/opt/module/fink

  1. 到hadoop002上操作:

cd /opt/module/flink/conf

vim flink-conf.yaml

将taskmanager.host:hadoop001改为hadoop002 #小弟的用户名和节点用户名保持一致

  1. 到hadoop003上操作:

cd /opt/module/flink/conf

vim flink-conf.yaml

将taskmanager.host:hadoop001改为hadoop003

  1. 进入bin目录下启动: bin/start-cluster.sh

Hadoop001

Hadoop002

Hadoop003

http://192.168.10.234:8081

++单机模式++

  1. ++解压:tar -zxvf flink-1.15.4-bin-scala_2.12.tgz -C /opt/zz -C /opt/zz++
  2. Cd /opt/zz
  3. 改名:mv flink-1.15.4-bin-scala_2.12.tgz flink
  4. 启动:cd /opt/zz/flink/bin

./start-cluster.sh

  1. 在 link-confyaml文件中还以对集群中的JobManager 和 TaskManager 组件进行优化配置,主要配置项如下:"

  2. jobmanagermemory,processsize: 对JbManager进程可使用到的全部内存进行配置包括JVM元空间和其他开销,默认为 1600M,可以根据集群规模进行适当调整。

  3. "taskmanager.memoryprocess.size: 对 TaskManager 进程可使用到的全部内存进行配置包括JVM元空间和其他开销,默认为 1728M,可以根据集群规模进行适当调整。

  4. "taskmanagernumberOfTaskSlots: 对每个 TaskManager 能够分配的 Slot 数量进行配置默认为1,可根据TaskManager 所在的机器能够提供给 Flink的CPU数量决定。所谓Slot就是 TaskManager 中具体运行一个任务所分配的计算资源。

  5. "parallelism.default: Flink 任务执行的并行度,默认为1。优先级低于代码中进行的并包括JVM元空间和其他开销,默认为 1728M,可以根据集群规模进行适当调整。

  6. "taskmanagernumberOfTaskSlots: 对每个 TaskManager 能够分配的 Slot 数量进行配置默认为 1,可根据TaskManager 所在的机器能够提供给 Flink的CPU数量决定。所谓Slot 就是 TaskManager 中具体运行一个任务所分配的计算资源。

  7. "parallelism.default: Flink 任务执行的并行度,默认为 1。优先级低于代码中进行的并行度配置和任务提交时使用参数指定的并行度量。

Standalone-HA集群部署:

  1. 将解压包仍到/opt/so下
  2. 解压:tar -zxvf /opt/so/flink-1.15.4-bin-scala_2.12.tgz -C /opt/module
  3. 进入bin目录下停止集群:./stop-cluster.sh
  4. 打开浏览器:http://192.168.10.234:8081
  5. Hadoop捆绑包下载地址:

Downloads | Apache Flink

  1. 将hadoop捆绑包拖入/opt/so下
  2. 复制一份到FLINK_HOME/lib下:

Cp /opt/so/ flink-shaded-hadoop-2-uber-2.8.3-10.0.jar /opt/module/flink/lib

  1. 配置环境变量:vim /etc/profile
  1. 环境变量生效:source /etc/profile
  2. 配置文件:vim flink-conf.yaml
  1. 配置masters:vim masters
  1. 配置workers:vim workers
  1. 在flink下创建tmp目录:mkdir tmp

Cd tmp

Mkdir zookeeper

  1. 配置zoo.cfg:vim zoo.cfg
  1. 分发:

Scp -r /opt/module/flink root@hadoop003:/opt/module/flink

Scp -r /opt/module/flink root@hadoop002:/opt/module/flink

  1. 进入flink-conf.yaml

修改rpc的ip

  1. 进入bin:/opt/module/flink/bin
  2. 启动:./start-cluster.sh

Flink on yarn

进入hadoop下的yarn-site.xml

<!--是否启动一个线程检查每个任务正使用的物理内存量,如果任务超出分配值,则直接将其杀掉,默认是true -->

<property>

<name>yarn.nodemanager.pmem-check-enabled</name>

<value>false</value>

</property>

<!--是否启动一个线程检查每个任务正使用的虚拟内存量,如果任务超出分配值,则直接将其杀掉,默认是true -->

<property>

<name>yarn.nodemanager.vmem-check-enabled</name>

<value>false</value>

</property>

在环境变量中添加:

export HADOOP_CLASSPATH=`hadoop classpath`

export HADOOP_CONF_DIR=/opt/module/hadoop/etc/hadoop

生效一下:source /etc/profile

分发一下:

scp -r /opt/module/hadoop/etc/hadoop/yarn-site.xml root@hadoop2:/opt/module/hadoop/etc/hadoop/ya

rn-site.xml

scp -r /opt/module/hadoop/etc/hadoop/yarn-site.xml root@hadoop3/opt/module/hadoop/etc/hadoop/ya

rn-site.xml

scp -r /etc/profile root@hadoop2:/etc/profile

scp -r /etc/profile root@hadoop3:/etc/profile

在提交 Job 前必须要开始 yarn-session
bin/yarn-session.sh -n 2 -tm 800 -s 1 -d

flink run -m yarn-cluster -p 2 -yjm 2G -ytm 2G $FLINK_HOME/examples/batch/WordCount.jar

提交一个任务

flink解压包:点击下载

提取码:1771

相关推荐
Doker 多克3 小时前
Flink CDC —部署模式
大数据·flink
酷爱码4 小时前
Spring Boot 整合 Apache Flink 的详细过程
spring boot·flink·apache
问道飞鱼4 小时前
Flink 高可用集群部署指南
flink·部署·批处理·流式批处理
渣渣盟21 小时前
基于Scala实现Flink的三种基本时间窗口操作
开发语言·flink·scala
网安INF21 小时前
CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)
java·web安全·网络安全·flink·漏洞
一叶知秋哈21 小时前
Java应用Flink CDC监听MySQL数据变动内容输出到控制台
java·mysql·flink
代码匠心1 天前
从零开始学Flink:揭开实时计算的神秘面纱
java·大数据·后端·flink
Apache Flink2 天前
Flink在B站的大规模云原生实践
大数据·云原生·flink
lifallen2 天前
Flink checkpoint
java·大数据·算法·flink
长河2 天前
Flink 重启后事件被重复消费的原因与解决方案
大数据·flink