温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。
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的时区与本地时区统一。
提示:代码块部分可以左右滑动查看噢
为天地立心,为生民立命,为往圣继绝学,为万世开太平。
温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。
来源:CSDN
作者:Hadoop_SC
链接:https://blog.csdn.net/Hadoop_SC/article/details/104095944