如何在NFS文件系统中存储Apache Flink检查点

时间:2020-04-09 05:21:06

标签: hadoop apache-flink

我正在使用Apache Flink 1.10.0从RabbitMQ提取数据流,现在我正在内存中使用默认检查点配置。现在要使其恢复,当任务管理器重新启动时,我需要将状态和检查点存储在文件系统中,所有演示都应使用“ hdfs:// namenode:4000 / ....”,但是现在我没有HDFS集群,我的Apache Flink在kubernetes集群中运行,如何将我的检查点存储在文件系统中?

我阅读了Apache Flink的docs,并告诉我它的支持:

  • 一个持久(或持久)数据源,可以在一定时间内重播记录。此类消息源的示例是持久消息队列(例如Apache Kafka,RabbitMQ,Amazon Kinesis,Google PubSub)或文件系统(例如HDFS,S3,GFS,NFS,Ceph等)。

  • 状态的持久存储,通常是分布式文件系统(例如,HDFS,S3,GFS,NFS,Ceph等)

如何配置flink以使用NFS存储检查点和状态?我从互联网上搜索,没有找到有关此解决方案的故事。

1 个答案:

答案 0 :(得分:1)

要使用NFS与Flink进行检查,应使用file: URI指定一个checkpoint directory,该URI可从群集中的每个节点访问(作业管理器和所有任务管理器都需要使用相同的URI)。

例如,您可以将NFS卷挂载在每台计算机上的/data/flink/checkpoints上,然后指定

state.checkpoints.dir: file:///data/flink/checkpoints