当前位置: 首页 > 乐活 > 内容页

大数据Flink进阶(十一):Flink History Server配置使用

2023-04-10 02:14:58 来源:腾讯云

Flink History Server配置使用

基于Standalone或者Yarn模式提交Flink任务后,当任务执行失败、取消或者完成后,可以在WebUI中查看对应任务的统计信息,这些统计信息在生产环境中对我们来说非常重要,可以知道一个任务异常挂掉前发生了什么,便于定位问题。


(相关资料图)

当基于Standalone session模式提交相应任务时,集群重启后我们没有办法查看集群之前运行任务的情况,如果是基于pre-job方式提交任务,任务执行完成之后,那么相对应的统计信息也不会保存,基于Yarn运行的Flink任务也是一样道理。这样对于我们查看先前Flink作业统计信息或参数带来了不便。Flink中提供了History Server 来解决这个问题,可以在任务执行完成后保留相应的任务统计信息,便于分析和定位问题。

History Server 允许查询由JobManager归档的已完成作业的状态和统计日志信息。已完成的作业归档由JobManager上传持久化到某个路径下,这个路径可以是本地文件系统、HDFS、H3等,History Server 可以周期扫描该路径将归档的Flink任务日志恢复出来,从而可以查看相应Flink任务日志情况。

一、Standalone History Server配置与验证

1、配置

在Standalone中配置History Server 服务需要选择一台节点当做History Server ,这台节点可以是JobManager/TaskManager节点,也可以是Standalone集群外的一台节点,这里选择node4节点作为Flink History Server 节点。Standalone配置HistoryServer 服务步骤如下:

1.1、在JM 和 TM 节点上配置 flink-conf.yaml

在Flink Standalone JobManager和TaskManager节点上配置flink-conf.yaml文件,指定Flink完成任务持久化的路径,这里选择HDFS目录作为任务日志持久化保存目录。在node1、node2、node3节点上配置$FLINK_HOME/conf/flink-conf.yaml文件,加入以下配置。

#Flink job运行完成后日志存储目录jobmanager.archive.fs.dir: hdfs://mycluster/flink/completed-jobs/

Flink会根据以上配置连接HDFS 目录存储任务数据,所以需要在node1、node2、node3节点上/etc/profile中配置HADOOP_CLASSPATH环境变量。

#vim /etc/profile,加入以下配置export HADOOP_CLASSPATH=`hadoop classpath`#source /etc/profile 使环境变量生效source /etc/profile

1.2、在History Server 节点上配置 flink-conf.yaml

在node4节点上配置$FLINK_HOME/conf/flink-conf.yaml文件,加入如下配置,配置HistoryServer。

#Flink History Server 节点historyserver.web.address: node4#Flink History Server 端口historyserver.web.port: 8082#Flink History Server 恢复任务的目录historyserver.archive.fs.dir: hdfs://mycluster/flink/completed-jobs/#Flink History Server 监控任务日志目录刷新时间间隔(毫秒)historyserver.archive.fs.refresh-interval: 10000

Flink会根据以上配置连接HDFS目录恢复任务数据,这里要求"historyserver.archive.fs.dir"参数配置需要与Flink各个节点上配置的"jobmanager.archive.fs.dir"参数路径保持一致。此外,需要在node4节点上/etc/profile中配置HADOOP_CLASSPATH环境变量。

# vim /etc/profile,加入以下配置export HADOOP_CLASSPATH=`hadoop classpath`#source /etc/profile 使环境变量生效[root@node4 ~]# source /etc/profile

1.3、启动 Flink 历史日志服务器

在node4节点上启动Flink History Server

#启动Flink 历史日志服务器[root@node4 ~]# cd /software/flink-1.16.0/bin/[root@node4 bin]# ./historyserver.sh start

2、验证

History Server 启动后,可以通过https://node4:8082 来访问历史日志服务页面。

我们可以通过向Standalone集群中提交任务来验证History Server是否能正常展示运行Flink任务的统计信息,步骤如下:

2.1、启动 Standalone 集群

[root@node1 ~]# cd /software/flink-1.16.0/bin/[root@node1 bin]# ./start-cluster.sh

2.2、提交任务

向Flink集群中提交任务,任务还是选择读取Socket端口数据实时统计WordCount。首先在node5节点上启动socket服务:

[root@node5 ~]# nc -lk 9999

在node4 客户端提交Flink任务(可以在任意节点提交Flink任务),命令如下:

[root@node4 ~]# cd /software/flink-1.16.0/bin/[root@node4 bin]# ./flink run -m node1:8081 -c com.mashibing.flinkjava.code.chapter3.SocketWordCount /root/FlinkJavaCode-1.0-SNAPSHOT-jar-with-dependencies.jar

提交任务后在HDFS中暂时不会生成hdfs://mycluster/flink/completed-jobs"目录,当Flink集群停止、任务取消、任务失败后才可以在该目录下看到job信息。

2.3、取消任务并查看历史日志

在node5节点向Socket 9999端口输入一些数据:

hello,ahello,bhello,chello,d

然后在Flink WebUI中取消当前任务:

取消任务后可以在"hdfs://mycluster/flink/completed-jobs"目录中看到取消任务的信息:

当任务取消后,也可以停止Flink集群,Flink集群重启后先前的任务统计信息不会展示,可以登录Flink历史日志服务器查看先前任务统计信息:

注意:在取消任务或者停止Flink集群后,需要等待一小段时间才能在Flink历史日志服务器中查看到对应的取消任务。

二、Yarn History Server配置与验证

1、配置

Flink基于Yarn运行时,当Flink任务形成的集群停止后,无法看到对应任务的统计信息,也可以通过配置History Server来实现基于Yarn的Flink集群停止后查看任务的统计信息。

这里选择node5节点为History Server,基于Yarn运行Flink任务配置HistoryServer服务步骤如下:

1.1、在node5 节点上配置 flink-conf.yaml

在node5节点上配置$FLINK_HOME/conf/flink-conf.yaml文件,最后配置以下配置项。

#Flink job运行完成后日志存储目录jobmanager.archive.fs.dir: hdfs://mycluster/flink-yarn/completed-jobs/#Flink History 服务器地址historyserver.web.address: node5#HistroyServer WebUI 访问端口historyserver.web.port: 8082#HistoryServer历史日志服务恢复任务信息目录historyserver.archive.fs.dir: hdfs://mycluster/flink-yarn/completed-jobs/#Flink History Server 监控任务日志目录刷新时间间隔(毫秒)historyserver.archive.fs.refresh-interval: 10000

Flink会根据以上配置连接HDFS 目录存储任务数据,所以需要在node5节点上/etc/profile中配置HADOOP_CLASSPATH环境变量。

#vim /etc/profile,加入以下配置export HADOOP_CLASSPATH=`hadoop classpath`#source /etc/profile 使环境变量生效source /etc/profile

1.2、启动 Flink 历史日志服务器并访问

在node5节点上启动Flink History Server

#启动Flink 历史日志服务器[root@node5 ~]# cd /software/flink-1.16.0/bin/[root@node5 bin]# ./historyserver.sh start

访问历史日志服务地址:https://node5:8082

2、验证

在node5节点基于Yarn提交Flink任务来验证History Server是否能正常展示执行完成的Flink任务统计信息。步骤如下:

2.1、向Yarn 集群中提交 Flink任务

向Yarn集群中提交Flink任务,任务还是选择读取Socket端口数据实时统计WordCount。在node5节点启动socket服务器:

[root@node5 ~]# nc -lk 9999

在node5节点向Flink集群中提交Flink任务,命令如下:

[root@node5 ~]# cd /software/flink-1.16.0/bin/# 提交Flink任务[root@node5 bin]#./flink run-application -t yarn-application -c com.lanson.flinkjava.code.chapter3.SocketWordCount /root/FlinkJavaCode-1.0-SNAPSHOT-jar-with-dependencies.jar

提交任务后在HDFS中暂时不会生成hdfs://mycluster/flink/completed-jobs"目录,当Flink集群停止、任务取消、任务失败后才可以在该目录下看到job信息。

2.2、取消任务并查看历史日志

在node5节点向Socket 9999端口输入一些数据:

hello,ahello,bhello,chello,d

然后登录Yarn(https://node1:8081) WebUI,找到提交的任务取消对应Flink任务:

取消任务后可以在"hdfs://mycluster/flink-yarn/completed-jobs"目录中看到取消任务的信息:

登录Flink历史日志服务器查看取消任务统计信息:

注意:在取消任务或者停止Flink集群后,需要等待一小段时间才能在Flink历史日志服务器中查看到对应的取消任务。

标签:

潮流

更多

猜你喜欢

更多
天天快资讯:资兴市开展涉危运输安全专项大检查 中信证券:把握全球电动化供应链优质标的机会 《白蛇2:青蛇劫起》中的蒙面少年是谁?《白蛇2:青蛇劫起》结局小白回来了吗? 《跨界歌王》第二季的冠军是谁?《跨界歌王》第一季冠军是谁? 《琅琊榜》中宫羽的真实身份是什么?《琅琊榜》秦般若结局是什么? 《风声》里白小年的结局是什么?《风声》中的老鬼到底是谁? 《锦衣之下》的结局是什么?《锦衣之下》今夏身份是什么? 《重紫》水仙的结局是什么?《重紫》水姬身份是什么? 《唐朝诡事录》牛肃扮演者是谁?《唐朝诡事录》沙斯是谁? 《平凡英雄》是真实故事吗?《平凡英雄》小男孩手臂保住了吗? 《妻子变成小学生》结局是什么?《妻子变成小学生》一共多少集? 《三体》潘寒是好人吗?《三体》杨卫宁原型是谁? 《云南虫谷》大结局是啥意思?《云南虫谷》下一部是什么? 《新闺蜜时代》王媛最后和谁在一起?《新闺蜜时代》樊斌结局是什么? 《眷思量》根据什么改编的?《眷思量》大结局是什么? 《第十二秒》小说赵亦晨结局是什么?《第十二秒》胡珈瑛为啥叫许菡? 《暗夜行动》廖永嘉是好人吗?《暗夜行者》中的骆翔是什么身份? 《底线》苗苗是谁演的?《底线》周亦安和叶芯在一起了吗? 王靖雯《中国好声音》唱了什么歌?《中国好声音》王靖雯是哪一期? 《半暖时光》大结局是什么?《半暖时光》讲的什么? 《王牌对王牌》杨澜是在哪一期?《王牌对王牌》时代少年团是哪一期? 《风吹半夏》陈宇宙的结局是什么样的?《风吹半夏》周茜最后怎么样了? 《爱我就别想太多》在哪播出?《爱我就别想太多》的结局是怎样的? 《王牌对王牌》七仙女是哪一期?《王牌对王牌》言承旭是哪一期? 胡歌参演《攀登者》什么角色?《攀登者》徐樱最后结局是什么? 《欢乐颂2》关关和谢童在一起了吗?《欢乐颂3》何悯鸿的结局怎么样? 《黑白禁区》淦天雷结局是什么?《黑白禁区》淦天雷第几集恢复记忆呢? 《清平乐》电视剧禾儿是谁?《清平乐》徽柔为什么叫禾儿姐姐? 《大红包》结局是什么?《大红包》结局被拆穿了吗? 《夏至未至》陆之昂为什么坐牢?《夏至未至》遇见结局是什么? 《黄金人生》智秀大结局是什么?《黄金人生》谁是真女儿? 《狂飙》徐雷是怎么死的?《狂飙》杨健是好人吗? 《唐朝诡事录》鼍神是谁?《唐朝诡事录》萧郎和卢凌风什么关系? 《我们的当打之年》讲的什么?《我们的当打之年》结局怎么样? 《东北恋哥》结局是什么?《东北恋哥》女主角是谁? 《世界奇妙物语》之《美女罐》是哪一集?《世界奇妙物语》一共多少集? 《这就是街舞5》豆豆是谁?《这就是街舞5》布布参加了吗? 《香蜜沉沉烬如霜》水神是被谁杀的?《香蜜沉沉烬如霜》锦觅什么时候复活? 《风起霓裳》背景是哪个朝代的?《风起霓裳》库狄琉璃历史原型是谁? 《香蜜沉沉烬如霜》扑哧君是谁?《香蜜沉沉烬如霜》润玉结局是什么? 《江照黎明》苏睿是谁杀的? 《江照黎明》大结局是什么? 《江照黎明》在哪里播?《江照黎明》王城结局是什么? 《金秘书为何那样》讲的什么内容?《金秘书为何那样》男女主童年秘密是什么? 《心居》冯晓琴结局是什么?《心居》顾大年是谁的孩子? 《爱情的理解》讲了什么?《爱情的理解》女主和谁在一起了? 《云中歌》结局云歌和谁在一起?《云中歌》刘询为什么要杀刘弗陵? 《狂飙》过山峰扮演者是谁?《狂飙》里过山峰结局是什么? 《谢谢你医生》唐画喜欢谁?《谢谢你医生》各人物结局是什么? 《择君记》小说叫什么?《择君记》结局是什么? 《择君记》马天宝是好人吗?《择君记》裴衍祯真实身份是什么? 《扫黑风暴》馄饨店老板娘结局是什么?《扫黑风暴》女老板谁扮演的? 《白蛇2:青蛇劫起》结局是什么?《白蛇2:青蛇劫起》宝青坊主为什么不怕无池? 《青蛇劫起》司马官人是好人吗?《青蛇劫起》中小白怎么变成男的了? 《乌海》结局是什么?《乌海》杨华为什么会走上歧途? 《遇见王沥川》结局男主死了吗?《遇见王沥川》王沥川是怎么死的? 《万里归途》有彩蛋吗?吴京在《万里归途》饰演什么角色? 《香蜜沉沉烬如霜》锦觅是谁的女儿?《香蜜沉沉烬如霜》锦觅最后复活了吗? 《请君》原著小说叫什么?《请君》二当家真实身份是什么? 《关于唐医生的一切》讲的什么故事?《关于唐医生的一切》王雪纯的结局怎么了? 《旋风十一人》穆奇的背景身份是什么?《旋风十一人》的结局是什么? 《少年包青天》小狸是什么结局?《少年包青天》包拯有中状元吗? 《当家主母》魏良弓结局是什么?《当家主母》中魏良弓刻的小木人是谁? 《苍兰诀》丹音仙子是谁演的?《苍兰诀》丹音仙子喜欢谁? 《百妖谱》桃夭最后和谁在一起了?《百妖谱》原著小说叫什么? 《百妖谱》柳公子是好人还是坏人?《百妖谱》桃夭身份是什么? 《人世间》中冯化成的结局是什么?《人世间》骆士宾结局是什么? 《金玉良缘》结局玉麒麟为什么要走?《金玉良缘》玉麒麟身份是什么? 《咱们相爱吧》蔡春妮的结局是什么?《咱们相爱吧》讲的什么? 《简言的夏冬》一共有几集?《简言的夏冬》结局是什么? 《幸福到万家》幸运最后和谁在一起了?《幸福到万家》幸福大棚的钱要回来了吗? 《斗罗大陆》胡列娜的结局是什么?《斗罗大陆》风笑天是什么身份? 《且试天下》琅华公主结局怎么样?《且试天下》白风夕身份什么时候暴露? 《古剑奇谭2》主要讲了什么?《古剑奇谭2》大结局是什么? 《古剑奇谭》欧阳少恭是什么人?《古剑奇谭》风晴雪是女娲后人吗? 《步步惊心》十四阿哥什么结局?《步步惊心》十四阿哥谁演的? 《美人心计》刘盈的结局是什么?《美人心计》杨幂演的谁? 《爱情公寓》胡歌客串哪一集?《爱情公寓》何炅客串哪一集? 《打开生活的正确方式》什么时候播出?《打开生活的正确方式》小方扮演者是谁? 《名侦探柯南》工藤新一和黑羽快斗是什么关系?《名侦探柯南》新一第一次变回来是哪一集? 《招摇》原著小说叫什么?《招摇》墨青是厉尘澜吗? 《招摇》中路招摇什么时候恢复真身?《招摇》洛明轩复活了几次? 《宸汐缘》灵汐身份是什么?《宸汐缘》灵汐在凡间怎么死的? 《宸汐缘》结局是什么?《宸汐缘》吞天兽与灵汐是什么关系? 《招摇》大结局什么意思?《招摇》琴千弦为什么死了? 《青云志》曾书书和谁在一起?《青云志》萧逸才结局是什么? 爱就像蓝天白云晴空万里是什么歌?从黑夜到黎明不管有多难是什么歌? 《芈月传》孟嬴结局是什么?《芈月传》孟嬴和芈月为什么反目? 星空网简介 《摩天大楼》结局是什么?《摩天大楼》凶手是谁? 《少年派2》林妙妙父母离婚了吗?《少年派2》林妙妙结局怎么样? 《辣妈正传》李木子和洛天结局是什么?《辣妈正传》讲的什么? 《卿卿日常》平安郡主嫁到墨川了吗?《卿卿日常》大少主尹崐是谁演的? 《曾少年》秦茜身份不是亲生的吗?《曾少年之小时候》关晓彤在第几集? 《大秦帝国》三部曲的顺序是什么?《大秦帝国》是改编吗? 张新成梁洁合作过几次?《变成你的那一天》讲的什么? 《悬崖》结局内鬼是谁?《悬崖》最后的结局是什么? 《麻雀》李小男第几集死了?《麻雀》结局是什么? 《无名之辈》结局是什么?《无名之辈》最后开枪为什么没死? 《流金岁月》蒋南孙和谁在一起了?《流金岁月》谢宏祖结局是什么? 《少年歌行》莫衣是男是女?《少年歌行》莫衣几岁入神游?

时尚

  1. 全球播报:iglidur H5系列轴承,满足汽车应用的更高需求

    全球播报:iglidur H5系列轴承,满足汽车应用的更高需求

  2. 当前动态:吸引ABB、发那科等多个全球领军企业,上海的机器人产业是如何迈向腾飞的?

    当前动态:吸引ABB、发那科等多个全球领军企业,上海的机器人产业是如何迈向腾飞的?

  3. 环球资讯:工业机器人拉动需求 国产减速机空间打开产销放量

    环球资讯:工业机器人拉动需求 国产减速机空间打开产销放量

  4. 全球讯息:2座换流平台+2座换流站,西门子拿下超大订单!

    全球讯息:2座换流平台+2座换流站,西门子拿下超大订单!

  5. 世界速递!必看!工业机器人领域的最新动向

    世界速递!必看!工业机器人领域的最新动向

  6. 世界微速讯:新5G规范有助于支持要求苛刻的应用

    世界微速讯:新5G规范有助于支持要求苛刻的应用

  7. 全球速读:风机抢装几时休

    全球速读:风机抢装几时休

  8. 世界播报:中国齿轮行业市场现状分析及行业未来发展趋势预测2022

    世界播报:中国齿轮行业市场现状分析及行业未来发展趋势预测2022

  9. 【聚看点】光伏组件行业未来发展趋势预测 市场规模将逐年增长

    【聚看点】光伏组件行业未来发展趋势预测 市场规模将逐年增长

  10. 环球要闻:2022年中国风电设备制造业未来发展趋势

    环球要闻:2022年中国风电设备制造业未来发展趋势