flink部署

standalone模式

缺点

  1. 资源利用弹性不够(资源总量是定死的;job 退出后也不能立刻回收资源)。
  2. 资源隔离度不够(所有 job 共享集群的资源)。
  3. 所有 job 共用一个 jobmanager,负载过大。

配置方式

# 1.conf/master 配置 JobManager 地址
hadoop102:8081

# 2.conf/workers 配置 TaskManager 机器地址
hadoop102
hadoop103
hadoop104

# 3.conf/flink-conf.yaml 程序参数配置
jobmanager.rpc.address: hadoop102  // master地址
taskmanager.numberOfTaskSlots: 2   // 槽位数

# 4.集群分发flink目录

# 5.启动/停止集群
bin/start-cluster.sh
bin/stop-cluster.sh

# web-ui(默认端口8081)
hadoop102:8081

# 命令行模式提交作业
-m:指定了提交到的JobManager
-c:指定了入口类
bin/flink run -m hadoop102:8081 -c com.atguigu.wc.SocketStreamWordCount ./FlinkTutorial-1.0-SNAPSHOT.jar

# 触发 standalone 模式 job 做 savepoint
# -d : detach 模式,客户端提交完 job 即退出
# -t remote : 表示 job 是 standalone 运行模式
bin/flink savepoint -t remote 5f1bc357bfd1e686e34b6cfce6d0cda9 hdfs://doit01:8020/eos_savepoint1

FlinkOnYarn模式

  1. flink on yarn,本质上就是去 yarn 集群上申请容器,来运行 flink 的 jobmanager+taskmanager 集群。
  2. flink 的 job,是 flink 集群内部的概念,它对 yarn 是不可见的。

        YARN上部署的过程是:客户端把Flink应用提交给Yarn的ResourceManager,Yarn的ResourceManager会向Yarn的NodeManager申请容器。在这些容器上,Flink会部署JobManager和TaskManager的实例,从而启动集群。Flink会根据运行在JobManger上的作业所需要的Slot数量动态分配TaskManager资源。

        部署前提条件:集群中需要安装hadoop。

sudo vim /etc/profile.d/my_env.sh

HADOOP_HOME=/opt/module/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop
export HADOOP_CLASSPATH=`hadoop classpath`

三种运行模式

会话模式(Session Mode)

  1. 所有作业共享集群资源,隔离性差,JM 负载瓶颈,main 方法在客户端执行。
  2. 适合执行时间短,频繁执行的短任务,集群中的所有作业 只有一个 JobManager,另外,Job 被随 机分配给 TaskManager。

单作业模式(Per-Job Mode)

  1. 每个作业单独启动集群,隔离性好,JM 负载均衡,main 方法在客户端执行。 在 per-job 模式下,每个 Job 都有一个 JobManager,每个 TaskManager 只有单个 Job。
  2. 作业执行完成后,集群机会关闭,所有资源也会释放。

应用模式(Application Mode)

抛弃客户端,直接把应用提交到JoblMarger上运行。而这也就代表着,我们需要为 每一个提交的应用单独启动一个JobManager,也就是创建一个集群。这个JobManager只为执行这一个应用而存在, 执行结束之后jobManager也就关闭了,这就是应用模式。

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值