Flink:yarn模式部署

yarn模式部署,理解是只是将Flink集群交给yarn管理,因此Flink集群部署还是使用StandAlone模式部署,然后交给yarn管理即可

 Flink:StandAlone模式部署

博客地址:https://blog.csdn.net/weixin_45427648/article/details/130070977

 交给yarn管理需要先部署hadoop应用

yarn模式部署有两种方式:

(1)启动一个YARN session(Start a long-running Flink cluster on YARN);(这种方式会一直保持flink所需的内存空间)

(2)直接在YARN上提交运行Flink作业(Run a Flink job on YARN);(这种方式flink执行完任务会释放内存空间,企业常用这种方式)

1.对hadoop集群所有的conf下录配置文件 yarn-site.xml

// 关闭虚拟内存检查,因为虚拟内存检查会不断检查,
// 分配的内存是不是多了,多了会进行回收,造成一些问题
<property>
    <name>yarn.nodemanager.pmem-check-enabled</name>
    <value>false</value>
</property>
<property>
    <name>yarn.nodemanager.vmem-check-enabled</name>
    <value>false</value>
</property>
  <property>
    <name>yarn.resourcemanager.address</name>
    <value>192.168.25.129:8032</value>
  </property>
  <property>
    <name>yarn.resourcemanager.scheduler.address</name>
    <value>192.168.25.129:8030</value>
  </property>
  <property>
    <name>yarn.resourcemanager.resource-tracker.address</name>
    <value>192.168.25.129:8031</value>
  </property>

2.启动hadoop (hdfs-yarn)

# sbin目录
./start-dfs.sh

./start-yarn.sh

(1)启动一个YARN session(Start a long-running Flink cluster on YARN)

3.在flink-1.7.2-hadoop/bin/

./yarn-session.sh -n 2 -tm 800 -s 1 -d

# -n 表示申请2个容器,这里指的就是多少个taskmanager

# -s 表示每个TaskManager的slots数量

# -tm 表示每个TaskManager的内存大小

# -d 表示以后台程序方式运行

解释

上面的命令的意思是,同时向Yarn申请3个container

(即便只申请了两个,因为ApplicationMaster和Job Manager有一个额外的容器。一旦将Flink部署到YARN群集中,它就会显示Job Manager的连接详细信息)

2 个 Container 启动 TaskManager -n 2,每个 TaskManager 拥有1个 Task Slot -s 1,并且向每个 TaskManager 的 Container 申请 800M 的内存,以及一个ApplicationMaster--Job Manager。

如果不想让Flink YARN客户端始终运行,那么也可以启动分离的 YARN会话。该参数被称为-d或--detached。在这种情况下,Flink YARN客户端只会将Flink提交给集群,然后关闭它自己

 4.检查是否正常

ip:8088/cluster

 5.执行提交的任务(flink-1.7.2-hadoop/bin/)

./flink run -c com.wx.WordCountStream /home/wx/flinkdemo-1.0-SNAPSHOT.jar

6.检查任务执行情况

点击(来到熟悉的界面)

yarn-session.sh(开辟资源) + flink run(提交任务)

- 使用Flink中的yarn-session(yarn客户端),会启动两个必要服务JobManager和TaskManager

- 客户端通过flink run提交作业

- yarn-session会一直启动,不停地接收客户端提交的作业

- 如果有大量的小作业/任务比较小,或者工作时间短,适合使用这种方式,减少资源创建的时间. 

(2)直接在YARN上提交运行Flink作业(Run a Flink job on YARN)

 3.在flink-1.7.2-hadoop/bin/

bin/flink run -m yarn-cluster -yn 2 -yjm 1024 -ytm 1024 /export/servers/flink/examples/batch/WordCount.jar

# -m  jobmanager的地址

# -yn 表示TaskManager的个数 

 停止yarn-cluster

yarn application -kill application_1527077715040_0003


rm -rf /tmp/.yarn-properties-root
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员无羡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值