浅墨散人 浅墨散人
  • 基础
  • 设计模式
  • JVM
  • Maven
  • SpringBoot
  • 基础
  • Flask
  • Diango
  • Pandas
  • SqlAlchemy
  • Sqoop
  • Flume
  • Flink
  • Hadoop
  • Hbase
  • Hive
  • Kafka
  • Kylin
  • Zookeeper
  • Tez
  • MySQL
  • Doris
  • Chrome
  • Eclipse
  • IDEA
  • iTerm2
  • Markdown
  • SublimeText
  • VirtualBox
  • WebStrom
  • Linux
  • Mac
  • Hexo
  • Git
  • Vue
  • VuePress
  • 区块链
  • 金融
数据仓库
数据治理
读书笔记
关于我
GitHub (opens new window)
  • 基础
  • 设计模式
  • JVM
  • Maven
  • SpringBoot
  • 基础
  • Flask
  • Diango
  • Pandas
  • SqlAlchemy
  • Sqoop
  • Flume
  • Flink
  • Hadoop
  • Hbase
  • Hive
  • Kafka
  • Kylin
  • Zookeeper
  • Tez
  • MySQL
  • Doris
  • Chrome
  • Eclipse
  • IDEA
  • iTerm2
  • Markdown
  • SublimeText
  • VirtualBox
  • WebStrom
  • Linux
  • Mac
  • Hexo
  • Git
  • Vue
  • VuePress
  • 区块链
  • 金融
数据仓库
数据治理
读书笔记
关于我
GitHub (opens new window)
  • Flink

    • 目录
    • 核心概念
    • 快速开始
    • 部署方式
      • Standalone模式
      • YARN模式
        • 提前初始化Flink集群形式(Flink yarn-session)
        • 每次新创建Flink集群形式
      • Kubernetes模式
    • 运行时架构
    • API
    • Flink SQL
    • Flink 相关配置
    • 项目实战
  • BigData
  • Flink
2021-10-05
目录

部署方式

  • Standalone模式
  • YARN模式
    • 提前初始化Flink集群形式(Flink yarn-session)
    • 每次新创建Flink集群形式
  • Kubernetes模式

# Standalone模式

# YARN模式

Flink on Yarn模式在使用的时候又可以分为两种,如图3.5所示。

# 提前初始化Flink集群形式(Flink yarn-session)

第1种模式:是在YARN中提前初始化一个Flink集群(称为Flink yarn-session),开辟指定的资源,以后的Flink任务都提交到这里。这个Flink集群会常驻在YARN集群中,除非手工停止。这种方式创建的Flink集群会独占资源,不管有没有Flink任务在执行,YARN上面的其他任务都无法使用这些资源。

使用步骤 (1)创建一个一直运行的Flink集群(也可以称为Flink yarn-session)。

[root@hadoop100 flink-1.10.1]# bin/yarn-session.sh -n 2 -jm 1024 -tm 1024 -d
1

注意

参数最后面的-d参数是可选项,表示是否在后台独立运行。 执行以后可以到hadoop100的8088任务界面确认是否有Flink任务成功运行。

(2)附着到一个已存在的Flink集群中。

[root@hadoop100 flink-1.10.1]# bin/yarn-session.sh -id applicationId
1

注意

参数最后面的applicationId是一个变量,需要获取第1步创建的Flink集群对应的applicationId信息。

(3)执行Flink任务。

[root@hadoop100 flink-1.10.1]# bin/flink run ./examples/batch/WordCount.jar
1

注意

WordCount.jar程序默认的输入是内置数据,默认的输出是stdout。当然也可以通过-input和-output来手动指定输入数据目录和输出数据目录。

-input hdfs://hadoop100:9000/LICENSE
-output hdfs://hadoop100:9000/wordcount-result.txt
1
2

# 每次新创建Flink集群形式

第2种模式:每次提交Flink任务都会创建一个新的Flink集群,每个Flink任务之间相互独立、互不影响,管理方便。任务执行完成之后创建的Flink集群也会消失,不会额外占用资源,按需使用,这使资源利用率达到最大,在工作中推荐使用这种模式。

使用步骤 提交Flink任务的同时创建Flink集群。

[root@hadoop100 flink-1.10.1]# bin/flink run -m yarn-cluster -yn 2 -yjm 1024 -ytm 1024
1

注意

Client端(提交Flink任务的机器)必须要设置YARN_CONF_DIR、HADOOP_CONF_DIR或者HADOOP_HOME环境变量,Flink会通过这个环境变量来读取YARN和HDFS的配置信息,否则启动会失败。

# Kubernetes模式

#Flink
最后更新时间: 2022/7/23 10:17:11
快速开始
运行时架构

← 快速开始 运行时架构→

最近更新
01
分区分桶
08-21
02
数据模型(重要)
08-21
03
安装和编译
08-21
更多文章>
Theme by Vdoing
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式