Flink - 历史服务HistoryServer配置教程(查看历史任务执行信息)
当使用 Flink ON YARN 模式提交任务时,我们会发现 flink 任务停止之后就无法再查看 flink 的 web 界面了,这样也就无法查看历史任务的执行信息。这是因为这个 flink 任务停止之后,对应的那个 yarn-session(Flink 集群)也就停止了。我们使用 Spark 的时候其实也遇到过这种问题,可以通过启动 spark 的 historyserver 进程解决的(点击查看)。同样的,flink 也有 historyserver 进程,也是可以解决这个问题的,下面演示如何操作。
(2)如果是新版本的 flink,比如 1.20.0 版,其配置文件为 config.yaml,我们编辑该文件:


(2)就可以访问 flink 的 web 界面查看历史任务执行信息了:
1,修改 flink 配置
(1)如果是老版本的 flink,其配置文件为 flink-conf.yaml,我们编辑该文件:
vi conf/flink-conf.yaml
- 然后在该文件中添加如下内容。注意:hdfs 主机名根据实际情况修改。
jobmanager.archive.fs.dir: hdfs://node1:9000/completed-jobs/ historyserver.web.address: 0.0.0.0 historyserver.web.port: 8082 historyserver.archive.fs.dir: hdfs://node1:9000/completed-jobs/ historyserver.archive.fs.refresh-interval: 10000
(2)如果是新版本的 flink,比如 1.20.0 版,其配置文件为 config.yaml,我们编辑该文件:
vi conf/config.yaml
- 找到 jobmanager 节点,在里面添加如下高亮内容。注意:hdfs 主机名根据实际情况修改。
jobmanager: archive: fs: dir: hdfs://node1:9000/completed-jobs/ bind-host: 0.0.0.0 rpc:
- 然后在该文件尾部添加如下配置。注意:historyserver 的 web 页面地址,以及 hdfs 主机名根据实际情况修改。
historyserver: web: address: node1 port: 8082 archive: fs: dir: hdfs://node1:9000/completed-jobs/ fs.refresh-interval: 10000
2,启动相关进程
(1)首先是启动 flink 的 historyserver 进程:
cd /usr/local/flink-1.20.0 bin/historyserver.sh start
- 然后使用 jps 命令验证下是否成功启动:

(2)hadoop 集群中的 historyserver 进程也需要启动。在集群的每一个节点上执行如下命令启动 historyserver 进程。
cd /usr/local/hadoop/ bin/mapred --daemon start historyserver
- 然后使用 jps 命令验证下是否成功启动:

3,运行效果
(1)有了 HistoryServer 后,Flink 任务停止之后我们点击“History”链接。

