0475-如何统一Hue和Oozie的时区

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。
Fayson的github:
https://github.com/fayson/cdhproject
提示:代码块部分可以左右滑动查看噢

感谢群友rong和王峰提出问题并解决问题

1

文档编写目的

在前面的文章中,Fayson介绍过《如何修改Cloudera Manager的时区》,《如何修改Hue的时区》和《如何修改CDSW会话的时区》。在使用Hue创建调度任务的过程中,我们会发现Hue的时区与Oozie的调度时间不一致。默认Oozie使用的时区为UTC,在创建调度作业时还需要考虑在当前的时间减去8个小时才能达到我们的预期。在使用上非常不方便,这里Fayson主要介绍如何统一Hue和Oozie的时区。

  • 测试环境

1.RedHat7.2

2.CM和CDH版本为5.15.0

2

设置Hue时区

Hue的默认时区为America/Los_Angeles,这里需要在CM上将Hue的时区修改为Asia/Shanghai。

1.登录Cloudera Manager进入Hue的配置页面搜索“time_zone”

2.将时区修改为Asia/Shanghai

保存配置,并重启Hue服务即可,以上完成Hue服务时区的设置。

3

修改Oozie时区

Oozie默认时区为UTC,如果在Hue上创建调度任务会发现要让调度任务与期望的时间一致,则需要在当前时间减去8个小时,在使用上非常不方便,那在下面的步骤就说明如何设置Oozie的时区。

1.登录Cloudera Manager 进入Ooize服务的配置界面搜索“oozie-site.xml”

2.在oozie-site.xml配置项中增加如下配置:

<property>
    <name>oozie.processing.timezone</name>
    <value>GMT+0800</value>
</property>

完成后保存并重启Oozie服务。

4

Oozie调度测试

1.登录Hue创建一个调度任务

2.选择定时调度的WorkFlow及调度周期

3.保存成功后,点击运行按钮

可以看到显示的开始时间和结束时间与本地时间一致,在未修改时区前这个开始和结束时间会以Hue的配置的时区显示时间。

4.任务提交成功后会更加调度周期生成多个Task

为每个Task定义了一个编号及调度时间,这些时间显示都与本地时间一致,更方便直观的显示调度周期。

5

总结

Hue的默认时区为America/Los_Angeles,而Oozie的默认时区为UTC,在使用Hue创建Oozie的调度任务时由于时区与本地时区不一致,会造成开发人员创建的调度任务与预期调度周期不符问题,解决该问题最好的方式将Hue和Oozie的时区与本地时区统一。

提示:代码块部分可以左右滑动查看噢
为天地立心,为生民立命,为往圣继绝学,为万世开太平。
温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。

发布了333 篇原创文章 · 获赞 14 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/Hadoop_SC/article/details/104095944