请问有没有什么方法可以把checkpoint打到集群外的hdfs?

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

请问有没有什么方法可以把checkpoint打到集群外的hdfs?

tao wang
现在有个场景, 集群上上了一些比较重要的任务,为了提高这些任务的性能,为它提供了一个专有的hdfs 集群用来存储checkpoint 。

但是现在不知道怎么配置才能让支持任务打到外部的hdfs集群。

谢谢!!
Reply | Threaded
Open this post in threaded view
|

Re: 请问有没有什么方法可以把checkpoint打到集群外的hdfs?

Yangze Guo
checkpoint的目录设置key为state.checkpoints.dir

你可以这样设置
state.checkpoints.dir: hdfs://namenode:port/flink/checkpoints/


Best,
Yangze Guo

On Wed, Apr 15, 2020 at 1:45 PM tao wang <[hidden email]> wrote:
>
> 现在有个场景, 集群上上了一些比较重要的任务,为了提高这些任务的性能,为它提供了一个专有的hdfs 集群用来存储checkpoint 。
>
> 但是现在不知道怎么配置才能让支持任务打到外部的hdfs集群。
>
> 谢谢!!
Reply | Threaded
Open this post in threaded view
|

Re: 请问有没有什么方法可以把checkpoint打到集群外的hdfs?

LakeShen
Hi tao wang,

你可以在你的 flink-conf.yaml 里面配置 Checkpoint 的目录,就像楼上 Yangze 所说

state.checkpoints.dir: hdfs://namenode:port/flink/checkpoints/

Best,
LakeShen

Yangze Guo <[hidden email]> 于2020年4月15日周三 下午2:44写道:

> checkpoint的目录设置key为state.checkpoints.dir
>
> 你可以这样设置
> state.checkpoints.dir: hdfs://namenode:port/flink/checkpoints/
>
>
> Best,
> Yangze Guo
>
> On Wed, Apr 15, 2020 at 1:45 PM tao wang <[hidden email]> wrote:
> >
> > 现在有个场景, 集群上上了一些比较重要的任务,为了提高这些任务的性能,为它提供了一个专有的hdfs 集群用来存储checkpoint 。
> >
> > 但是现在不知道怎么配置才能让支持任务打到外部的hdfs集群。
> >
> > 谢谢!!
>
Reply | Threaded
Open this post in threaded view
|

Re: 请问有没有什么方法可以把checkpoint打到集群外的hdfs?

Yangze Guo
In reply to this post by Yangze Guo
1. flink会去读YARN_CONF_DIR or HADOOP_CONF_DIR这两个环境变量
2. 我理解这和你flink运行的集群是解耦的,只要你dir的路径不变,就会从那个dir找checkpoint恢复

Best,
Yangze Guo

On Wed, Apr 15, 2020 at 3:38 PM tao wang <[hidden email]> wrote:

>
> 多谢回复, 还有几个问题请教:
> 1、外部集群的hdfs-site, core-site 这些怎么配置?
> 2、另外一个角度, 如果我把任务迁移到另外一个集群,如何让它从老的集群的checkpoint 恢复。
>
> Yangze Guo <[hidden email]> 于2020年4月15日周三 下午2:44写道:
>>
>> checkpoint的目录设置key为state.checkpoints.dir
>>
>> 你可以这样设置
>> state.checkpoints.dir: hdfs://namenode:port/flink/checkpoints/
>>
>>
>> Best,
>> Yangze Guo
>>
>> On Wed, Apr 15, 2020 at 1:45 PM tao wang <[hidden email]> wrote:
>> >
>> > 现在有个场景, 集群上上了一些比较重要的任务,为了提高这些任务的性能,为它提供了一个专有的hdfs 集群用来存储checkpoint 。
>> >
>> > 但是现在不知道怎么配置才能让支持任务打到外部的hdfs集群。
>> >
>> > 谢谢!!
Reply | Threaded
Open this post in threaded view
|

Re: 请问有没有什么方法可以把checkpoint打到集群外的hdfs?

tao wang
多谢两位  Yangze and LakeShen,我研究一下。

Yangze Guo <[hidden email]> 于2020年4月15日周三 下午3:45写道:

> 1. flink会去读YARN_CONF_DIR or HADOOP_CONF_DIR这两个环境变量
> 2. 我理解这和你flink运行的集群是解耦的,只要你dir的路径不变,就会从那个dir找checkpoint恢复
>
> Best,
> Yangze Guo
>
> On Wed, Apr 15, 2020 at 3:38 PM tao wang <[hidden email]> wrote:
> >
> > 多谢回复, 还有几个问题请教:
> > 1、外部集群的hdfs-site, core-site 这些怎么配置?
> > 2、另外一个角度, 如果我把任务迁移到另外一个集群,如何让它从老的集群的checkpoint 恢复。
> >
> > Yangze Guo <[hidden email]> 于2020年4月15日周三 下午2:44写道:
> >>
> >> checkpoint的目录设置key为state.checkpoints.dir
> >>
> >> 你可以这样设置
> >> state.checkpoints.dir: hdfs://namenode:port/flink/checkpoints/
> >>
> >>
> >> Best,
> >> Yangze Guo
> >>
> >> On Wed, Apr 15, 2020 at 1:45 PM tao wang <[hidden email]> wrote:
> >> >
> >> > 现在有个场景, 集群上上了一些比较重要的任务,为了提高这些任务的性能,为它提供了一个专有的hdfs 集群用来存储checkpoint 。
> >> >
> >> > 但是现在不知道怎么配置才能让支持任务打到外部的hdfs集群。
> >> >
> >> > 谢谢!!
>
Reply | Threaded
Open this post in threaded view
|

Re: 请问有没有什么方法可以把checkpoint打到集群外的hdfs?

zhisheng
In reply to this post by Yangze Guo
> 如果我把任务迁移到另外一个集群,如何让它从老的集群的checkpoint 恢复

这种是不是可以先在旧集群对作业取消的时候做一次完整的 savepoint(地址填新集群的 HDFS 地址),然后在新集群的时候从 savepoint
启动

Yangze Guo <[hidden email]> 于2020年4月15日周三 下午3:52写道:

> 1. flink会去读YARN_CONF_DIR or HADOOP_CONF_DIR这两个环境变量
> 2. 我理解这和你flink运行的集群是解耦的,只要你dir的路径不变,就会从那个dir找checkpoint恢复
>
> Best,
> Yangze Guo
>
> On Wed, Apr 15, 2020 at 3:38 PM tao wang <[hidden email]> wrote:
> >
> > 多谢回复, 还有几个问题请教:
> > 1、外部集群的hdfs-site, core-site 这些怎么配置?
> > 2、另外一个角度, 如果我把任务迁移到另外一个集群,如何让它从老的集群的checkpoint 恢复。
> >
> > Yangze Guo <[hidden email]> 于2020年4月15日周三 下午2:44写道:
> >>
> >> checkpoint的目录设置key为state.checkpoints.dir
> >>
> >> 你可以这样设置
> >> state.checkpoints.dir: hdfs://namenode:port/flink/checkpoints/
> >>
> >>
> >> Best,
> >> Yangze Guo
> >>
> >> On Wed, Apr 15, 2020 at 1:45 PM tao wang <[hidden email]> wrote:
> >> >
> >> > 现在有个场景, 集群上上了一些比较重要的任务,为了提高这些任务的性能,为它提供了一个专有的hdfs 集群用来存储checkpoint 。
> >> >
> >> > 但是现在不知道怎么配置才能让支持任务打到外部的hdfs集群。
> >> >
> >> > 谢谢!!
>
Reply | Threaded
Open this post in threaded view
|

Re: 请问有没有什么方法可以把checkpoint打到集群外的hdfs?

Yun Tang
Hi

如果旧作业开启了incremental checkpoint,并从那边进行恢复的话,需要注意的是旧的checkpoint目录下的文件是不能删除的,这个是incremental checkpoint语义导致的,如果想要切割掉对旧目录的依赖,需要执行一次savepoint,并启动新作业从savepoint进行恢复。

祝好
唐云
________________________________
From: zhisheng <[hidden email]>
Sent: Thursday, April 16, 2020 16:37
To: user-zh <[hidden email]>
Subject: Re: 请问有没有什么方法可以把checkpoint打到集群外的hdfs?

> 如果我把任务迁移到另外一个集群,如何让它从老的集群的checkpoint 恢复

这种是不是可以先在旧集群对作业取消的时候做一次完整的 savepoint(地址填新集群的 HDFS 地址),然后在新集群的时候从 savepoint
启动

Yangze Guo <[hidden email]> 于2020年4月15日周三 下午3:52写道:

> 1. flink会去读YARN_CONF_DIR or HADOOP_CONF_DIR这两个环境变量
> 2. 我理解这和你flink运行的集群是解耦的,只要你dir的路径不变,就会从那个dir找checkpoint恢复
>
> Best,
> Yangze Guo
>
> On Wed, Apr 15, 2020 at 3:38 PM tao wang <[hidden email]> wrote:
> >
> > 多谢回复, 还有几个问题请教:
> > 1、外部集群的hdfs-site, core-site 这些怎么配置?
> > 2、另外一个角度, 如果我把任务迁移到另外一个集群,如何让它从老的集群的checkpoint 恢复。
> >
> > Yangze Guo <[hidden email]> 于2020年4月15日周三 下午2:44写道:
> >>
> >> checkpoint的目录设置key为state.checkpoints.dir
> >>
> >> 你可以这样设置
> >> state.checkpoints.dir: hdfs://namenode:port/flink/checkpoints/
> >>
> >>
> >> Best,
> >> Yangze Guo
> >>
> >> On Wed, Apr 15, 2020 at 1:45 PM tao wang <[hidden email]> wrote:
> >> >
> >> > 现在有个场景, 集群上上了一些比较重要的任务,为了提高这些任务的性能,为它提供了一个专有的hdfs 集群用来存储checkpoint 。
> >> >
> >> > 但是现在不知道怎么配置才能让支持任务打到外部的hdfs集群。
> >> >
> >> > 谢谢!!
>
Reply | Threaded
Open this post in threaded view
|

Re: 请问有没有什么方法可以把checkpoint打到集群外的hdfs?

taowang
In reply to this post by tao wang
hello, 唐云:
看到你说从incremental checkpoint恢复后,要重新执行一次savepoint才可以。我自己试了一下,job从incremental checkpoint恢复之后并成功打出第一个checkpoint之后,就手动删掉了checkpoints/目录下除了新的jobid目录之外的所有的文件夹,新的job并没有失败,看起来一切正常,执行一次savepoint也没有失败。  
是不是说,没有必要一定是savepoint,checkpoint也可以。就像job从savepoint恢复之后,当第一个checkpoint成功之后,这个savepoint就也可以删掉了。 还是有什么场景我没有测试到?


 原始邮件
发件人: Yun Tang<[hidden email]>
收件人: user-zh<[hidden email]>
发送时间: 2020年4月16日(周四) 17:13
主题: Re: 请问有没有什么方法可以把checkpoint打到集群外的hdfs?


Hi 如果旧作业开启了incremental checkpoint,并从那边进行恢复的话,需要注意的是旧的checkpoint目录下的文件是不能删除的,这个是incremental checkpoint语义导致的,如果想要切割掉对旧目录的依赖,需要执行一次savepoint,并启动新作业从savepoint进行恢复。 祝好 唐云 ________________________________ From: zhisheng <[hidden email]> Sent: Thursday, April 16, 2020 16:37 To: user-zh <[hidden email]> Subject: Re: 请问有没有什么方法可以把checkpoint打到集群外的hdfs? > 如果我把任务迁移到另外一个集群,如何让它从老的集群的checkpoint 恢复 这种是不是可以先在旧集群对作业取消的时候做一次完整的 savepoint(地址填新集群的 HDFS 地址),然后在新集群的时候从 savepoint 启动 Yangze Guo <[hidden email]> 于2020年4月15日周三 下午3:52写道: > 1. flink会去读YARN_CONF_DIR or HADOOP_CONF_DIR这两个环境变量 > 2. 我理解这和你flink运行的集群是解耦的,只要你dir的路径不变,就会从那个dir找checkpoint恢复 > > Best, > Yangze Guo > > On Wed, Apr 15, 2020 at 3:38 PM tao wang <[hidden email]> wrote: > > > > 多谢回复, 还有几个问题请教: > > 1、外部集群的hdfs-site, core-site 这些怎么配置? > > 2、另外一个角度, 如果我把任务迁移到另外一个集群,如何让它从老的集群的checkpoint 恢复。 > > > > Yangze Guo <[hidden email]> 于2020年4月15日周三 下午2:44写道: > >> > >> checkpoint的目录设置key为state.checkpoints.dir > >> > >> 你可以这样设置 > >> state.checkpoints.dir: hdfs://namenode:port/flink/checkpoints/ > >> > >> > >> Best, > >> Yangze Guo > >> > >> On Wed, Apr 15, 2020 at 1:45 PM tao wang <[hidden email]> wrote: > >> > > >> > 现在有个场景, 集群上上了一些比较重要的任务,为了提高这些任务的性能,为它提供了一个专有的hdfs 集群用来存储checkpoint 。 > >> > > >> > 但是现在不知道怎么配置才能让支持任务打到外部的hdfs集群。 > >> > > >> > 谢谢!! >
Reply | Threaded
Open this post in threaded view
|

Re: 请问有没有什么方法可以把checkpoint打到集群外的hdfs?

tao wang
In reply to this post by zhisheng
多谢 zhisheng , 用你的方法解决了。
做完整的savepoint的时候, hdfs 地址 用hdfs://ip:port/ 的方式访问新集群的hdfs。不用nameservice 的方式

zhisheng <[hidden email]> 于2020年4月16日周四 下午4:37写道:

> > 如果我把任务迁移到另外一个集群,如何让它从老的集群的checkpoint 恢复
>
> 这种是不是可以先在旧集群对作业取消的时候做一次完整的 savepoint(地址填新集群的 HDFS 地址),然后在新集群的时候从 savepoint
> 启动
>
> Yangze Guo <[hidden email]> 于2020年4月15日周三 下午3:52写道:
>
> > 1. flink会去读YARN_CONF_DIR or HADOOP_CONF_DIR这两个环境变量
> > 2. 我理解这和你flink运行的集群是解耦的,只要你dir的路径不变,就会从那个dir找checkpoint恢复
> >
> > Best,
> > Yangze Guo
> >
> > On Wed, Apr 15, 2020 at 3:38 PM tao wang <[hidden email]> wrote:
> > >
> > > 多谢回复, 还有几个问题请教:
> > > 1、外部集群的hdfs-site, core-site 这些怎么配置?
> > > 2、另外一个角度, 如果我把任务迁移到另外一个集群,如何让它从老的集群的checkpoint 恢复。
> > >
> > > Yangze Guo <[hidden email]> 于2020年4月15日周三 下午2:44写道:
> > >>
> > >> checkpoint的目录设置key为state.checkpoints.dir
> > >>
> > >> 你可以这样设置
> > >> state.checkpoints.dir: hdfs://namenode:port/flink/checkpoints/
> > >>
> > >>
> > >> Best,
> > >> Yangze Guo
> > >>
> > >> On Wed, Apr 15, 2020 at 1:45 PM tao wang <[hidden email]> wrote:
> > >> >
> > >> > 现在有个场景, 集群上上了一些比较重要的任务,为了提高这些任务的性能,为它提供了一个专有的hdfs 集群用来存储checkpoint 。
> > >> >
> > >> > 但是现在不知道怎么配置才能让支持任务打到外部的hdfs集群。
> > >> >
> > >> > 谢谢!!
> >
>